Поддержка Проблемы и решения не выводит шаблон произвольной записи

  • В чём проблема, кто подскажет?
    Хочу чтобы при добавлении произвольных записей выводился шаблон, который предназначен только для них.
    Т.е. есть, скажем произвольные записи «uslugi» (с рубриками), заходишь добавить новую услугу, а там вместо «Базовый шаблон» в атрибутах страницы выдаётся только «Шаблон услуги».

    Для реализации такого было создано:

    single-uslugi.php по адресу: ../тема/template-parts/

    Внутри которого обязательно указано:

    * Template Name: Шаблон записи услуги
    * Template Post Type: uslugi

    В файле function было добавлено:

    add_filter('template_include', function ($path){
        if(is_page('uslugi')){
            return get_stylesheet_directory() . '/template-parts/single-uslugi.php';
        }
        return $path;
    });

    Однако, не выводит так, как мне нужно ;-(
    При добавлении новой записи в произвольной таксономии «uslugi» по прежнему в атрибутах страницы необходимо выбирать шаблон из предложенных..

    Вопрос:
    Что не так?
    Что и где нужно исправить?

    • Тема изменена 2 года, 7 месяцев назад пользователем legal2019.
Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Долго думая и разбираясь, стало чайнику понятно, что в данном коде по умолчанию выводится шаблон, только тогда, когда страница с названием uslugi создаётся…
    Что мне нужно написать вместо:

    (is_page('uslugi'))

    Чтобы шаблон по умолчанию выдавался при создании записи в произвольных записях «uslugi»?

    Ау, профессионалы! Подскажите пожалуйста.

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, wpcute.ru

    Подскажите пожалуйста.

    Что подсказать-то?

    Если произвольный тип записей называется uslugi, то достаточно создать файл single-uslugi.php. Он будет применяться при просмотре записи данного типа.

    Всё остальное, типа Template Name, Template Post Type, template_include и т.д. не требуется.

    @denisco, я прекрасно это понимаю, дело в другом.

    Для реализации такого было создано:
    single-uslugi.php по адресу: ../тема/template-parts/

    Вот мне и нужно, чтобы такого рода шаблоны валялись НЕ в общем каталоге, а в /template-parts/

    Для этого в файле function было добавлено:

    add_filter('template_include', function ($path){
        if(is_page('uslugi')){
            return get_stylesheet_directory() . '/template-parts/single-uslugi.php';
        }
        return $path;
    });

    НО я не понимаю:

    Что мне нужно написать вместо:

    (is_page('uslugi'))

    Чтобы шаблон по умолчанию выдавался при создании записи в произвольных записях «uslugi»?

    • Ответ изменён 2 года, 7 месяцев назад пользователем legal2019.
    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, wpcute.ru

    Вот мне и нужно, чтобы такого рода шаблоны валялись на в общем каталоге, а в /template-parts/

    Зачем?

    Что мне нужно написать вместо:

    Возможно, if( get_post_type() == 'uslugi' ).

    Зачем?

    Люблю упорядоченность. Считаю что в корне должны лежать основные файлы, а для шаблонов/img/шоткодов и т.п. должны быть свои папки.

    Возможно, if( get_post_type() == 'uslugi' ).

    Точно. Работает.
    А что означает ==? Где про это почитать можно? А то иногда встречаю и тройные ===

    А что означает ==? Где про это почитать можно? А то иногда встречаю и тройные ===…

    не рано вы за разработку то взялись?

    как минимум хороший разработчик должен уметь пользоваться гуглом.

    @flector, не поздно ли вы решили учить меня какие именно мне задавать вопросы?
    P.S.»Гугл не особо люблю»

    @flector, вот что вы тут делаете? Ещё ни одного нормального коммента от вас не встретил тут. Вам бы, лишь бы кого-то подколоть, охаить… а сами-то не одного дельного совета/рекомендации. Судя по вашим комментам (которые я видел тут) — вы хороший разработчик который пользуется только гуглом. + амбиции с короной, которая портит ваш потолок…
    В следующий раз, что-то дельное предложите, либо тупо не пишите посты.
    Заранее благодарю за понимание.

    😉 я могу понять, когда начинающие разработчики не совсем понимают разницу между == и ===, но когда они не знают, что вообще такое == это за гранью разумного.

    и я вам честно пытался помочь в нескольких топиках, откровенно не понимаю вашей хамской реакции.

    Модератор Yui

    (@fierevere)

    ゆい

    А что означает ==? Где про это почитать можно

    http://php.net/manual/ru/language.operators.comparison.php

    PS: и не нужно впадать в агро-пике по отношению к участникам форума пытающимся вам помочь

    @flector, а кто вам сказал, что я начинающий разработчик? Мне интересно — я делаю, мне не понятно — я спрашиваю, и хамской реакции тут нет.
    Однако, тут есть неадекватные ответы с вашей стороны, и при чём отнюдь не по делу. Вы попросту тупо тролите тут всех… Но это скорее ваше воспитание или образ жизни (как хотите воспринимайте).
    По поводу:

    я вам честно пытался помочь в нескольких топиках,

    Ваша непосильная помощь была уже мною оценена, в т.ч. и постом ранее. К сожалению это не помощь — это вы мягко сказали: «не пошёл бы ты по оси Х и по оси У в точку Й». Но это как раз и есть воспитание…

    ваше воспитание определенно оставляет желать лучшего 🙂

    Модератор Yui

    (@fierevere)

    ゆい

    раз тема «решенная», а терки в ней продолжаются, не вижу иного выхода кроме как закрыть её

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Тема «не выводит шаблон произвольной записи» закрыта для новых ответов.