2016-06-15 20 views

答えて

0

まず、私たちはただ、スラグの除去は十分ではありませんパーマリンク

function portfolio_remove_slug($post_link, $post, $leavename) { 

    if ('portfolio' != $post->post_type || 'publish' != $post->post_status) { 
     return $post_link; 
    } 

    $post_link = str_replace('/' . $post->post_type . '/', '/', $post_link); 

    return $post_link; 
} 
add_filter('post_type_link', 'portfolio_remove_slug', 10, 3); 

からスラグを除去します。 WordPressは投稿とページがこのように動作することを期待しているだけなので、今は404ページになります。また、次を追加する必要があります。

function portfolio_parse_request($query) { 

    if (! $query->is_main_query() || 2 != count($query->query) || ! isset($query->query['page'])) { 
     return; 
    } 

    if (! empty($query->query['name'])) { 
     $query->set('post_type', array('post', 'portfolio', 'page')); 
    } 
} 
add_action('pre_get_posts', 'portfolio_parse_request'); 

ちょうどあなたのカスタムポストタイプに「ポートフォリオ」を変更します。 permalinksをリフレッシュする必要があるかもしれません。

関連する問題