Пользовательский шаблон архива типа сообщения

У меня есть подобная проблема этому: Пользовательский Шаблон Типа Сообщения - Архив

У меня есть WordPress пользовательский названный тип сообщения coupon. Я пытаюсь присвоить шаблон ему при помощи archive-coupon.php, но это переходит непосредственно в home.php.

У меня также есть пользовательская таксономия этого названного CPT tags с rewrite rule => "tag" таким образом, когда я перехожу к URL как это - http://mysite.com/tag/3d Я хочу видеть пользовательский шаблон для своего Пользовательского Типа Сообщения или общий для taxonomies.

Я также попробовал taxonomy.php шаблон, но это все еще игнорирует его. Какова могла быть проблема?

Обновление -

Я не знаю то, что действительно произошло. Но перед этим у меня был шаблон, названный таксономией-store.php. Так, когда я переименовал его к другому имени, таксономии tag запущенное использование taxonomy.php шаблонный файл. И все еще archive-coupon.php не работает.

0
13.04.2017, 15:37
3 ответа

я верю tag зарезервированная таксономия, переписывают имя на Wordpress, который будет использоваться на значении по умолчанию post_tag таксономия. Это могло бы вызвать проблему. Переименуйте пользовательскую таксономию к чему-то как coupon-tag.

BTW: Вы пытались сбросить переписывание путем посещения страницы постоянной ссылки из вкладки настроек?

1
19.02.2020, 23:42
  • 1
    да, я обновил настройки постоянных ссылок. Все еще не работал. Я также использовал другой краткий заголовок для, переписывают и получил тот же –  Godforever 21.06.2012, 23:58
  • 2
    @Godforever: okey, необходимо будет показать код для получения дальнейшей справки. –  Sisir 23.06.2012, 10:46

Прежде всего давайте удостоверимся, что Вы понимаете шаблонную иерархию. Поскольку сообщение вводит названный купон с 'has_archive' => true и таксономия назвала тег купона (следующий совету @Sisir), оба набора общественности,

  • /coupon/будет использовать архив-coupon.php, archive.php, или index.php, какой бы ни найден в том порядке
  • /coupon-tag/foo/будет использовать taxonomy-coupon-tag-foo.php, taxonomy-coupon-tag.php, taxonomy.php, archive.php, или index.php, какой бы ни найден первым в том порядке. Обратите внимание, что архив-coupon.php не находится в этом списке (это - частая ошибка).
  • home.php будет только использоваться для домашней страницы

Далее, tag специальное слово, и Вы встретитесь, переписывают конфликты с помощью что как краткий заголовок. Необходимо использовать что-то еще.

Наконец, сбрасывание Ваш переписывает, очень важно здесь, и необходимо не забыть делать это после любых изменений в любой из соответствующих норм (любые изменения в CPT или таксономии). Самый легкий способ сделать так состоит в том, чтобы перейти к Настройкам → Постоянные ссылки и нажать "Save Changes".

0
19.02.2020, 23:42

Я думаю, что необходимо добавить поддержку пользовательских типов таксономии и назвать файл taxonomy-cpt-type.php, где cpt является названием Пользовательского Типа Сообщения.

Ваш архивный файл CPT нужно назвать архивом-cpt.php, где cpt является названием Вашего Пользовательского Типа Сообщения.

Вот весь код, который был протестирован.

Примечание: Вы не должны использовать тег или теги как название Вашего пользовательского типа таксономии, поскольку это будет конфликтовать с существующими базовыми функциями.

add_action( 'init', 'wpsites_cpt_post_type' );
function wpsites_cpt_post_type() {

register_post_type( 'cpt',
    array(
        'labels' => array(
            'name'          => __( 'CPT', 'theme' ),
            'singular_name' => __( 'CPT', 'theme' ),
        ),
        'has_archive'  => true,
        'hierarchical' => true,
        'menu_icon'    => true,
        'public'       => true,
        'rewrite'      => array( 'slug' => 'cpt', 'with_front' => false ),
        'supports'     => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'revisions', 'page-attributes' ),
        'taxonomies'   => array( 'cpt-type' ),

    ));

}

И это для регистрации Полосы набора Таксономии, где можно создать неограниченные налоговые типы.

add_action( 'init', 'wpsites_register_taxonomy_types' );
function wpsites_register_taxonomy_types() {

register_taxonomy( 'cpt-type', 'cpt',
    array(
        'labels' => array(
            'name'          => _x( 'Types', 'taxonomy general name', 'theme' ),
            'add_new_item'  => __( 'Add New CPT Type', 'theme' ),
            'new_item_name' => __( 'New CPT Type', 'theme' ),
        ),
        'exclude_from_search' => true,
        'has_archive'         => true,
        'hierarchical'        => true,
        'rewrite'             => array( 'slug' => 'cpt-type', 'with_front' => false ),
        'show_ui'             => true,
        'show_tagcloud'       => false,
    ));

}

Замените все экземпляры cpt с названием Вашего пользовательского типа сообщения, затем повторно сохраняют Ваши настройки Permalink.

Иначе это может быть проблема с кодом в Вашем taxonomy-cpt-type.php файле.

2
19.02.2020, 23:42

Теги

Похожие вопросы