私はたくさんのことを試しましたが、うまくいく解決策を見つけることができません。
私は私のサイトに構造を持たせたい:
mysite.com/ = homepage
mysite.com/blogs/ = blog archive
mysite.com/blogs/year/ = blog archive (in a specific year)
mysite.com/blogs/year/month/ = blog archive (in a specific month)
mysite.com/blogs/year/month/postname = blog post
mysite.com/authors/ = authors archive
mysite.com/authors/nicename = author profile
mysite.com/customposttype/ = custom post type archive
mysite.com/customposttype/postname = custom post type post
現在、パーマリンク構造として/blogs/%year%/%month%/%postname%/
が設定されているので、作者の部分を除いてすべてが正しく動作します。それはmysite.com/blogs/authors/
とmysite.com/blogs/authors/nicename
にそれを強制します、これは望まれません、なぜならほとんどの作者はカスタムのポストタイプを作っていて、ブログではないからです。
私がここでチェックしたが正しい答えがないいくつかの投稿:
$wp_rewrite
グローバルを操作することで、著者ベースを独立して設定できます。
function wpa55976_author_base() {
global $wp_rewrite;
$wp_rewrite->author_base = 'authors';
$wp_rewrite->author_structure = '/' . $wp_rewrite->author_base . '/%author%';
// EDIT - rewrite rule to force author urls to resolve:
add_rewrite_rule('authors/([^/]+)/?$', 'index.php?author_name=$matches[1]', 'top');
}
add_action( 'init', 'wpa55976_author_base' );
あなたがこれを追加した後に書き換えをフラッシュするためにあなたのパーマリンクページを訪問するようにしてください。
WordPressはデフォルトではこのページを提供していないため、mysite.com/authors/ = authors archive
を入手することはできません。ただし、authors
name__ページを作成したり、カスタムテンプレートを使用したり、それを処理するための書き換え規則を追加することはできます。