Искал плагин для WordPress, который бы позволил связывать публикации друг с другом. Видно, что не я один искал. :) Пришлось написать свой плагин, разместил его в репозиториии WP.
Я назвал его «References» по аналогии с плагином для Drupal — «Node References». Смысл в том же — иметь возможность создать в редакторе поле (-я), которые связывают редактируемую статью с другими статьями сайта, в том числе и пользовательскими типами контента.
Настраиваются связи в разделе настроек (Settings) (там появляется дополнительный пункт после установки плагина).
Фичи следующие:
- Можно создать несколько ref — полей для выбранного типа статьи;
- Можно выбрать какие типы материалов могут быть привязаны в каждом конкретном случае;
- Плагин включает в себя и widget, который показывает список статей, ассоциированных с просматриваемой публикацией;
- Данные храняться в postmeta данных, потому в коде их можно извлечь функцией get_post_meta($post->ID, ‘_ref_ID’, true), где ‘_ref_ID’ — идентификатор мета поля, настриваемый отдельно для каждой связи.
Когда вы настроете нужные связи, в редакторе соответствующих типов публикаций появятся Метабоксы, созданные плагином, где вы сможете прикрепить статьи нужных вам типов.