web-dev-qa-db-ja.com

カスタム作成者書き換えルールをフラッシュする方法

だから、私はのようなカスタム著者URLを作成しました

domain.tld/user-nicename、私は今domain.tld/john-doeのようなリンクを持っています。

私のfunctions.phpは

// AUTHOR
add_filter('author_rewrite_rules', 'no_author_base_rewrite_rules');
function no_author_base_rewrite_rules( $author_rewrite ) {
    global $wpdb;
    $author_rewrite = array();
    $authors = $wpdb->get_results("SELECT user_nicename AS nicename from    $wpdb->users");
    foreach($authors as $author) {
        $author_rewrite["({$author->nicename})/?$"] = 'index.php?    author_name=$matches[1]';
    }
    return $author_rewrite;
}

if( !is_admin() ) {
    add_action('init', 'author_rewrite_so_22115103');
}

function author_rewrite_so_22115103() {
    global $wp_rewrite;
    if( 'author' == $wp_rewrite->author_base ) $wp_rewrite->author_base =     null;
}

私はすべての必要な情報を設定しているwp_inser_userを使ってプログラム的にユーザーを作成しています。

しかし、domaon.tld/new-userに近づくと、パーマリンクを保存し直すまで404 NOT FOUNDがあります。

だから問題は、私がどのように私が正確にこのパーマリンクの再保存を使用するたびにプログラム的に設定することができるかということです

2
xrep

ここでflush_rewrite_rules(); Documentation を使うだけです

1
Brian Fegter