WordPress Условный, если is_single

Я пытаюсь использовать условное утверждение на моей странице single.php.

То, что я хочу сделать, – если оно относится к текущим продуктам типа Custom Post Type, использует конкретную страницу шаблона singleproduct.php, если нет (т.е. стандартная запись в блоге), используйте страницу single.php по умолчанию.

Я думаю, что я использую правильный оператор, но не знаю, что делать после этого (чтобы получить шаблон для использования):

if ( is_single( 'current-products' == get_post_type() ) { // If the post type is "Current Products" use this template... // Please help me out on this bit } elseif ( is_single() ) { // If not, use the standard one... // please help me out on this bit } 

Я думаю, что это правильно …?

WordPress автоматически использует другую страницу шаблона для разных типов сообщений, если ваш тип сообщения называется продуктом, файлы должны быть названы single-products.php. Вы можете узнать больше об этом оттуда Codex

Точно так же одиночные сообщения и их архивы могут отображаться с использованием файлов шаблона single.php и archive.php, соответственно,

  • отдельные сообщения настраиваемого типа сообщений будут использовать single-{post_type} .php
  • и их архивы будут использовать archive- {post_type} .php

где {post_type} – аргумент $ post_type функции register_post_type ().

Вы можете использовать is_singular() , согласно документации WordPress: Ссылка Ref

Этот условный тег проверяет, отображается ли сингулярная запись, которая имеет одно из следующих значений: is_single (), is_page () или is_attachment (). Если задан параметр $ post_types, функция дополнительно проверит, задан ли запрос для одного из указанных типов сообщений.

Истина при просмотре сообщения в книге Custom Post Type.

is_singular('book');

Это выполнит вашу задачу.