Пользовательский запрос типа записей WP не возвращает пользовательскую таксономию - PullRequest
0 голосов
/ 04 июня 2019

У меня есть следующий CPT:

        array(
            'slug'        => 'articles',
            'single_name' => 'Article',
            'plural_name' => 'Articles',
            'menu_name'   => 'Articles',
            'description' => '',
            'dashicon'    => 'dashicons-media-default'
        ),

и следующую пользовательскую таксономию, которая указана в статьях CPT:

        array(
            'slug'        => 'author',
            'single_name' => 'Author',
            'plural_name' => 'Authors',
            'menu_name'   => '→ Authors',
            // This is where you sync the taxonomy to the post types above
            'post_type'   => ['articles', 'news']
        ),

Теперь я пытаюсь создать файл single-article.php, в котором я запрашиваю одну статью, чтобы включить всю информацию о пользовательской таксономии.

Я перепробовал все варианты:

$args = array(
    'post_type' => 'articles',
    'tax_query' => array(
        array(
            'taxonomy' => 'author',
            'field' => 'slug'
        ),
    ),
);

Я относительно новичок в PHP & WP и не на 100% уверен, как получить данные. В Javascript вы получите объект обратно, через который можно пройти. При добавлении print_r($my_query) я не получаю обратно то, что ищу. Ранее в документе я уже инициировал цикл:

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

но я не могу понять, почему php / wp не показывает все данные, включенные в объект. В идеале Я хочу запросить только одну статью и получить все данные обратно, чтобы включить информацию обо всех прикрепленных таксономиях . Я не хочу запрашивать статьи по таксономии. Итак, у меня два вопроса:

1) Как правильно запросить это, чтобы получить результаты обратно? 2) Как отобразить эти данные на интерфейсе?

Редактировать: В соответствии с этим tax_query игнорируется, когда is_singular() истинно. print_r( is_singular() ) приводит к 1 (иначе правда ?!), это будет иметь значение?

У меня также есть пользовательские типы записей, привязанные к таксономиям. Мне нужно также получить эту информацию.

1 Ответ

0 голосов
/ 04 июня 2019

Ваш слаг таксономии author НЕ authors

$args = array(
'post_type' => 'articles',
'posts_per_page' => -1,
'tax_query' => array(
    array(
        'taxonomy' => 'author',
        'field' => 'slug',
        'terms' => 'your-term-here',
    ),
  ),
);

Вы можете использовать single- {posttype} .php для одного шаблона.

И, если вы зарегистрировали свой тип записи с аргументом has_archive, установленным в значение true, вы можете использовать archive- {posttype} .php для вашего архивного шаблона.

Вы можете проверить Иерархия шаблонов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...