Изменить: 12/09/2017 См. Этот ответ для более актуального решения этого вопроса: Как использовать таксономии на вложения с новой медиа-библиотеки?
Я собираюсь ответить на свой вопрос здесь, так как мне удалось найти решение того, что я пытался сделать. Я пришел к выводу, что невозможно включить метабокс категорий для вложений. Однако я обнаружил, что достаточно просто получить базовое поле для категорий, добавленных на страницу вложений, с помощью register_taxonomy_for_object_type
и add_post_type_support
:
add_action('admin_init', 'reg_tax');
function reg_tax() {
register_taxonomy_for_object_type('category', 'attachment');
add_post_type_support('attachment', 'category');
}
Добавленное поле показывается так:
Это просто текстовое поле, но я обнаружил, что вы можете ввести там имя существующей категории, и оно будет успешно сохранено при обновлении вложения. (Единственное странное поведение в том, что он возвращает обычную версию вместо слизняк после сохранения).
Как только я понял, что могу сохранять категории таким способом, я решил, что смогу получить список всех доступных категорий в виде флажков и проверить те, которые были выбраны. Затем я использовал немного jQuery, чтобы получить значения проверенных категорий и поместить все слагаемые категорий в поле Category. Чтобы это выглядело еще более плавно, я затем использовал простой кусочек CSS, чтобы скрыть строку таблицы, которая содержала поле «Категория», поэтому все, что вы когда-либо видите, это флажки, например:
Теперь, когда я могу добавлять категории к вложенным изображениям, я могу использовать что-то вроде:
get_posts('post_type=attachment&category_name=timber-fixed-windows')
И перетащите изображения по категориям на страницу! Именно то, что я надеялся сделать, я не думал, что будет способ сделать это, но рад, что мне удалось что-то выяснить.
Я превратил это в плагин под названием, WOS Media Categories
который я сделал доступным для загрузки с моего сайта Suburbia.org.uk. Надеюсь, он пригодится кому-то еще! Еще раз спасибо тем, кто прокомментировал этот и другие вопросы, которые я задал здесь, которые помогли понять это!
Обновление: я добавил исправление, позволяющее добавлять категории, когда изображения загружаются с помощью загрузчика Flash.