codecowboy
  • 0
Учитель

Как объединить посты разных типов в одну иерархию?

  • 0

Я хотел бы создать собственный тип сообщения и добавить его в качестве дочернего сообщения некоторых, но не всех существующих стандартных сообщений (которые не являются страницами). Это возможно?

Могу ли я, например, создать собственный тип сообщения, а затем включить его в другие сообщения с помощью шорткода? Есть ли лучший способ сделать это с помощью пользовательских таксономий?

Share
  1. Есть ли лучший способ сделать это с помощью пользовательских таксономий?

    Вы правы насчет денег. Вместо того, чтобы пытаться сделать пользовательский пост дочерним элементом стандартного поста (потому что вы не можете), я бы рекомендовал использовать пользовательскую таксономию для упорядочения вещей.

    По сути, вы можете создать пользовательскую иерархическую таксономию и использовать ее для «категоризации» как стандартных, так и пользовательских сообщений. Вы бы пометили свои стандартные сообщения как родительские в таксономии, а свои пользовательские сообщения — как дочерние.

    Второй вариант

    Другой вариант — использовать настраиваемое поле для родительского наследования. Это может быть немного быстрее для написания кода и более интуитивно понятно в использовании (плюс это даст вам дополнительный контроль).

    Добавьте настраиваемое мета-поле в свой настраиваемый тип сообщения под названием «родители». Затем это может быть список идентификаторов постов, под которыми должен быть вложен дочерний пост. Когда вам нужно вызвать список, вы можете сделать быстрый запрос ко SELECT всем вашим пользовательским сообщениям, у которых есть родительский идентификатор, о котором идет речь, в их «родительском» списке.

    • 0
    • Спасибо за ответ. Вариант 1 — не могли бы вы расширить его? Допустим, у меня есть посты в новостях, и иногда я хочу иметь «подпост», который представляет собой интервью с кем-то по теме. Мои новостные сообщения уже классифицированы по стандартным категориям WP.

      • 0
  2. Я думаю, что плагин Posts 2 Posts делает то, что вам нужно. Вам придется написать часть логики самостоятельно, но он предоставляет хороший API для отношений «многие ко многим» между сообщениями (любого типа).

    • 0
  3. Могу ли я, например, создать собственный тип сообщения, а затем включить его в другие сообщения с помощью шорткода? Есть ли лучший способ сделать это с помощью пользовательских таксономий?

    <?php query_posts( array( 'post_type' => array('post', 'CUSTOM_POST_TYPE_HERE') ) ); ?>
    

    Поместите это в соответствующий шаблон выше if(have_posts()) . Это позволит отображать как сообщения, так и ваш пользовательский тип.

    • 0

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

You must login to add an answer.