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

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

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

Solutions Collecting From Web of "Как объединить сообщения разных типов в одну иерархию?"

Есть ли лучший способ сделать это, используя пользовательские таксономии?

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

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

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

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

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

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

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

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

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