2016-10-07 8 views
3

私は1時間前にウェブを検索して解決しようとしていますが、今はできません。任意のアイデアや手掛かりを歓迎しています...WordPressの移行後にカテゴリ-slug.phpが機能しない

プラグイン(CCTM(これ以上の開発活動はありません)を使用する)を使用しているWordPressサイトを移行しようとしています。ネイティブWordPressカテゴリの "recetas"を投稿に追加しました。

新しいビルドでは、functions.phpにカスタム投稿タイプを手動で登録し、WordPressのネイティブXMLインポータツールを使用してコンテンツをインポートします。

add_action('init', 'codex_book_init'); 
function codex_book_init() { 
    $labels = array(
     'name'    => _x('Recetas'), 
     'singular_name'  => _x('Receta'), 
     'menu_name'   => _x('Recetas'), 
     'name_admin_bar'  => _x('Recetas'), 
     'add_new'   => _x('Agregar Nueva'), 
     'add_new_item'  => __('Agregar Nueva Receta'), 
     'new_item'   => __('Nueva Receta'), 
     'edit_item'   => __('Editar Receta'), 
     'view_item'   => __('Ver Receta'), 
     'all_items'   => __('Todas las Recetas'), 
     'search_items'  => __('Buscar Receta'), 
     'parent_item_colon' => __('Receta Padre:'), 
     'not_found'   => __('Sin Recetas encontradas.'), 
     'not_found_in_trash' => __('Sin Recetas encontradas en papelera.') 
    ); 
    $args = array(
     'labels'    => $labels, 
     'description'  => __('Recetas'), 
     'public'    => true, 
     'publicly_queryable' => true, 
     'show_ui'   => true, 
     'show_in_menu'  => true, 
     'query_var'   => true, 
     'rewrite'   => array('slug' => 'recetas'), 
     'capability_type' => 'post', 
     'has_archive'  => true, 
     'hierarchical'  => true, 
     'menu_position'  => 5, 
     'menu_icon'   => 'dashicons-admin-post', 
     'taxonomies'   => array('category'), 
     'supports'   => array('title', 'thumbnail', 'excerpt', 'editor', 'comments') 
    ); 
    register_post_type('recetas', $args); 
} 

すべてのコンテンツは、カスタムポストタイプから単一の記事で[OK]を取得し、新しいループでWP_Query(array('posts_type'=> 'recetas')内容があまりにもOKなります。問題はカテゴリテンプレート(category-recetas.php)で、デフォルトのwordpressループ<?php if (have_posts()) : while (have_posts()) : the_post(); ?>で投稿タイプの記事を取得するために使用されます。それは簡単ではなく、カテゴリ "recetas"からの投稿はありません。

+0

ここでの視認性に応じて、[WordpressのStackExchange](http://wordpress.stackexchange.com/)のサイトでより良い成功を収めている可能性があります。 –

+0

permalinksを保存し直してください。 – Jrod

+0

私は試しても何も起こらない – Tuux

答えて

0

がwordpress.stackexchangeから@Maxユージンにおかげで解決しました...私はパーマリンクを再保存しようと、archive-slug.phpを試し、category-id.phpを試してみてください、カスタム分類「recetas」を登録してみてください、何もうまくいかない - 彼の答えは、固定を問題。 @Max

カテゴリーからLINK

答えは内蔵の分類の記事のためだけでなく、カスタムポストタイプです。したがって、pre_get_postsフックを呼び出さなければなりません。

このフックは、クエリ変数オブジェクトが作成された後、実際のクエリが実行される前に呼び出されます。 functions.phpまたはカスタムプラグインに次のコードを挿入します。しかし、テストされていません。

<?php 
add_filter('pre_get_posts', 'query_post_type'); 
function query_post_type($query) { 
    if(is_category()) { 
     $post_type = get_query_var('post_type'); 
     if(!$post_type) { 
      $post_type = array('nav_menu_item', 'post', 'recetas'); // don't forget nav_menu_item to allow menus to work! 
     } 
     $query->set('post_type', $post_type); 
     return $query; 
     } 
} 
関連する問題