Поддержка → Проблемы и решения → Вывести произвольные записи в категориях
Вывести произвольные записи в категориях
-
Здравствуйте!
Пытаюсь решить задачу по выводу произвольных типов записей:
Добиться работы разделов вложенных таксономий или рубрик произвольных типов записей.В данный момент удалось вывести записи из таксономии с постраничной навигацией,
но не в назначеном мною шаблоне, а на странице index.php.Ссылки на страницы с произвольными типами записей работают и страницы открываются.
Не могу разобраться, почему записи из таксономии не выводитятся в шаблоне taxonomy-proizvoditeli.php,
пробовал создать шаблоны: category-proizvoditeli.php, arhive-proizvoditeli.php, но в них тоже не выводится,
выводит только в index.php.Еще проблема в том, что при клике на раздел и подраздел таксономии получаю 404 ошибку.
Пемалинки обновлял, связи типов записей и таксономий сделал.Помогите пожалуйста разобраться.
-
add_action( 'init', 'type_proizvoditeli' ); function type_proizvoditeli() { $labels = array ( "name" => "Производители", // основное название для типа записи, обычно во множественном числе. "singular_name" => "Производители", // название для одной записи этого типа. "menu_name" => "Производители", // название меню. По умолчанию равен name. "all_items" => "Все производители", // архивы записей. По умолчанию равен all_items "add_new" => "Добавить нового производителя", // текст для добавления новой записи, как "добавить новый" у постов в админ-панели. "add_new_item" => "Добавить производителя",// текст для добавления нового поста. Аналогична тексту "Добавить новый пост" у стандартных записей "edit_item" => "Редактировать производителя", // текст для редактирования типа записи. По умолчанию: редактировать пост/редактировать страницу. "new_item" => "Новый Производитель", // текст новой записи. По умолчанию: "Новый пост" "view_item" => "Смотреть эту страницу на сайте", // текст для просмотра записи этого типа. По умолчанию: "Посмотреть пост"/"Посмотреть страницу". "view_items" => "Смотреть производителей", // название в тулбаре, для страницы архива типа записей. По умолчанию: «View Posts» / «View Pages». С WP 4.7. "search_items" => "Поиск производителей", // текст для поиска по этим типам записи. По умолчанию "Найти пост"/"найти страницу". "not_found" => "Производители не найдены", // текст, если в результате поиска ничего не было найдено. "not_found_in_trash" => "Производителей нет", // текст, если не было найдено в корзине. По умолчанию "Постов не было найдено в корзине"/"Страниц не было найдено в корзине". // "parent" => "Parent Производитель",), "featured_image" => "Логотип", "set_featured_image" => "Изображения", "remove_featured_image" => "Удалить логотип", "use_featured_image" => "Использовать изображение", "archives" => "izgotoviteli", // Архивы записей. По умолчанию равен all_items "insert_into_item" => "Вставить в содержимое", // Вставить в запись "uploaded_to_this_item" => "Загрузить производителя", "filter_items_list" => "Фильтр производителей", // Фильтровать список записей "items_list_navigation" => "Производители list navigation", // Навигация по записям "items_list" => "Производители list", // Список записей // "attributes" => __( "Производители attributes", "custom-post-type-ui" ), "name_admin_bar" => "Производителя", // Название в админ баре (тулбаре). По умолчанию равен singular_name. "item_published" =>"Производитель опубликован",// Текст заметки в редакторе записи при публикации записи. С WP 5.0. // "item_published_privately" => __( "Производитель published privately.", "custom-post-type-ui" ), // Текст заметки в редакторе записи при публикации private записи. С WP 5.0. "item_reverted_to_draft" => "Производитель reverted to draft.", // Текст заметки в редакторе записи при возврате записи в draft. С WP 5.0. "item_scheduled" => "Производитель scheduled", "item_updated" => "Производитель обновлен", // Текст заметки в редакторе записи при обновлении записи. С WP 5.0. "parent_item_colon" => "Parent Производитель", // Текст для родительского элемента таксономии, тоже что и parent_item но с двоеточием в конце. По умолчанию нет или __( 'Parent Category:' ) ); $args = array( "label" => "Производители", // Имя типа записи помеченное для перевода на другой язык "labels" => $labels, // Массив содержащий в себе названия ярлыков для типа записи. "description" => "", // Короткое описание этого типа записи для REST API. "public" => true, // пределяет является ли тип записи публичным или нет. "menu_position" => 4, // позиция, расположение меню "menu_icon" => 'dashicons-hammer', // иконка для меню "publicly_queryable" => true, // определяет будут ли работать запросы этого типа записей в шаблоне. не будут доступны записи не будут доступны на сайте через url "show_ui" => true, // определяет показывать пользовательский интерфейс (UI) для этого типа записей. "show_in_rest" => false, // Нужно ли включать тип записи в REST API. true - добавит тип записи в маршрут wp/v2 "rest_base" => "", // Ярлык в REST API. По умолчанию, название типа записи. "rest_controller_class" => "WP_REST_Posts_Controller", // Название класса контроллера в REST API. "show_in_menu" => true, // показывать тип записи в административном меню "show_in_nav_menus" => false, // возможность выбирать этот тип записи в меню навигации "delete_with_user" => false, // Удалять записи при удалении юзера или нет "exclude_from_search" => false, // true - этот тип записей не будет учитываться при поиске по сайту "capability_type" => "post", // используется для списка прав котрые будут записаны в параметр capabilities. "map_meta_cap" => true, // преобразует неоднозначные права "hierarchical" => true, // будут ли записи древовидными (true) как постоянные страницы или будут связаны таксономией (false). "rewrite" => [ "slug" => "izgotoviteli", "with_front" => true ], // добавляет элемент slug в адрес "query_var" => true, // устанавливает название параметра запроса для создаваемого типа записи "has_archive" => true, // включает поддержку страниц архивов для этого типа записей "taxonomies" => [ "izgotoviteli" ], // Массив зарегистрированных таксономий, которые будут связаны с этим типом записей, например: category или post_tag. // "supports" => ['title', 'editor', 'author', 'thumbnail', 'excerpt', 'custom-fields'], типы метаблоков для страницы публикации и редактирования материала ); register_post_type( "proizvoditeli", $args ); }
- Ответ изменён 3 года, 10 месяцев назад пользователем mishaermolaev.
function tax_izgotoviteli() { register_taxonomy( 'izgotoviteli', // название таксономии array( 'proizvoditeli'), // для какого типа записей назначается данная таксономия array ( "hierarchical" => true, // true - по типу рубрик, false - по типу меток,по умолчанию - false 'labels' => array ( "name" => "Разделы производителей", // Имя таксономии, обычно во множественном числе. По умолчанию _x( 'Post Tags', 'taxonomy general name' ) или _x( 'Categories', 'taxonomy general name' ); "singular_name" => "Добавить раздел", // Название для одного элемента этой таксономии. По умолчанию _x( 'Post Tag', 'taxonomy singular name' ) или _x( 'Category', 'taxonomy singular name' ); "menu_name" => "Разделы", // Текст для названия меню в левом тулбаре админки. Эта строка обозначает название для пунктов меню. По умолчанию значение параметра name; "all_items" => "Все производители", // Текст для всех элементов. __( 'All Tags' ) или __( 'All Categories' ); "edit_item" => "Изменить раздел", // Текст для редактирования элемента. По умолчанию __( 'Edit Tag' ) или __( 'Edit Category' ); "view_item" => "Смотреть раздел", // Текст для просмотра термина таксономии. По умолчанию: "Посмотреть метку", "Посмотреть категорию". Используется например, в админ баре (тулбаре). "update_item" => "Изменить", // Текст для обновления элемента. По умолчанию __( 'Update Tag' ) или __( 'Update Category' ); "add_new_item" => "Добавить раздел", // Текст для добавления нового элемента таксономии. По умолчанию __( 'Add New Tag' ) или __( 'Add New Category' ); "new_item_name" => "New Добавить раздел name", // Текст для создания нового элемента таксономии. По умолчанию __( 'New Tag Name' ) или __( 'New Category Name' ); "parent_item" => "Родительский раздел", // Текст для родительского элемента таксономии. Этот аргумент используется для древовидных таксономий. По умолчанию null или __( 'Parent Category' ); "parent_item_colon" => "Добавить раздел:", // Текст для родительского элемента таксономии, тоже что и parent_item но с двоеточием в конце. По умолчанию нет или __( 'Parent Category:' ); "search_items" => "Поиск производителя", // Текст для поиска элемента таксономии. По умолчанию __( 'Search Tags' ) или __( 'Search Categories' ); "popular_items" => "Popular Производители", // Текст описывающий, что элементы нужно разделять запятыми (для блога в админке). Не работает для древовидного типа. По умолчанию __( 'Separate tags with commas' ) или null; "separate_items_with_commas" => "Separate Производители with commas", // Текст для "удаления или добавления элемента", который используется в блоке админке, при отключенном javascript. Не действует для древовидных таксономий. По умолчанию __( 'Add or remove tags' ) или null; "add_or_remove_items" =>"Add or remove Производители", // Текст для добавления или удаления терминов. Не используется для древовидных типов. По умолчанию: "Добавить или удалить метки". или null. "choose_from_most_used" => "Choose from the most used Производители", // Текст "Выбрать из часто используемых". Не используется для древовидных типов. "not_found" => "No Производители found", // Текст "не найдено", который отображается, если при клике на часто используемые ни один термин не был найден. "no_terms" => "No Производители", // Используется в таблицах записей и медиафайлов. По умолчанию 'No tags'/'No categories'. "items_list_navigation" => "Производители list navigation", // Текст для таблицы пагинации, для скрытого заголовка. "items_list" => "Производители list", // Текст для скрытого заголовка таблицы. ), "label" => "Раздел", "public" => true, // каждый может использовать таксономию, либо только администраторы, по умолчанию - true "publicly_queryable" => true, "show_ui" => true, // добавить интерфейс создания и редактирования "show_in_menu" => true, "show_in_nav_menus" => true, // добавить на страницу создания меню "query_var" => true, // разрешено ли использование query_var, также можно указать строку, которая будет использоваться в качестве него, по умолчанию - имя таксономии "rewrite" => array ( // настройки URL пермалинков 'slug' => 'izgotoviteli', // ярлык 'with_front' => true, // разрешить вложенность ), "show_admin_column" => true, // авто-создание колонки таксы в таблице ассоциированного типа записи. (с версии 3.5) "show_in_rest" => false, "rest_base" => "izgotoviteli", "rest_controller_class" => "WP_REST_Terms_Controller", "show_in_quick_edit" => false, "hierarchical" => true, ) ); } add_action( 'init', 'tax_izgotoviteli' );
Ответ нашел здесь. Дай Бог здоровья доброму человеку написавшему эту статью!
https://tokmakov.msk.ru/blog/item/399
- Тема «Вывести произвольные записи в категориях» закрыта для новых ответов.