adamtomat
  • 0
Новичок

Пользовательские типы записей

  • 0

Я сделал пользовательский тип сообщения под названием «Кейсы».

Существует страница тематических исследований, на которой отображается заголовок каждого пользовательского сообщения и небольшой отрывок. Однако, когда вы нажимаете на заголовок, чтобы просмотреть один пост, в навигации текущая вкладка меняется с » Case studies » на » News «. Где новости — это страница публикации по умолчанию, а тематические исследования — шаблонная страница.

Есть ли способ сделать пользовательский тип сообщения дочерним по отношению к Case Studies странице? Или, по крайней мере, установите файл шаблона, который я могу использовать для пользовательского типа сообщения. Когда вы просматриваете один case study пост, мне нужна навигация, чтобы показать, что вы все еще находитесь на Case Studies странице, а не в новостях.

Спасибо

Share
  1. как активируются вкладки в данный момент? Используя CSS? Вы использовали firebug, чтобы увидеть, можете ли вы настроить правило, чтобы оно работало на вас?

    • 0
  2. // Template redirect for custom templates
    add_action( 'template_redirect', 'template_redirect' );
    
    public function template_redirect() {
        global $wp_query;
        if ( $wp_query->query_vars['post_type'] == 'case_studies' ) {
            get_template_part( 'single-casestudies' ); // a custom page-slug.php template
            die();
        }
    }
    

    Это то же самое, что упомянул @Dalton, вам нужно создать собственный шаблон страницы с именем page-casestudies.php или как вы хотите его назвать, а затем создать страницу в администраторе WP, которая имеет фрагмент «кейсов», чтобы соответствовать page-{slug}.php или page-{id}.php, где совпадает идентификатор страницы. И вы можете использовать код page.php с одной или двумя строками перед циклом if(have_posts() while(have_posts()). Примерно так:

    $paged = (get_query_var(‘paged’)) ? get_query_var(‘выгружается’): 1; query_posts(array(‘post_type’ => ‘case_studies’, ‘paged’ => $paged));

    if (have_posts()) : while (have_posts()) : the_post();
    

    Извините, если я неправильно понял проблему, но я думаю, что это исправит ее.

    • 0
  3. Я полагаю, вы хотите использовать параметр перезаписи, чтобы изменить постоянную ссылку на свой собственный тип сообщения. Что касается создания пользовательского шаблона сообщения, формат single-CUSTOMPOSTTYPE.php

    Вот ссылка, которую я нашел для этого: http://kovshenin.com/archives/extending-custom-post-types-in-wordpress-3-0/

    Например, на моем сайте есть обычная страница под названием «Анимация», которая является целевой страницей для моего пользовательского типа сообщений (анимации). Мой слаг перезаписи — «анимация», а мой шаблон — single-animation.php. Структура постоянной ссылки выглядит так: mysite.com/animation/name-of-animation.

    • 0

Оставить ответ

You must login to add an answer.