Добавление пункта меню для архива произвольного типа записей
Я создал произвольный тип записи (project
), и он работает отлично. У меня есть собственная страница архива (archive-project.php
), которая тоже работает хорошо, но какой лучший способ добавить ссылку на этот архив произвольных записей в главное меню сайта?
Я создал "Произвольную ссылку" (см. ниже), но есть ли лучший способ, который не требует жесткого кодирования?

Вы можете использовать встроенную функцию редактора меню для этого. Перейдите к своему типу записи (Custom Post Type) в редакторе меню, нажмите на вкладку "Просмотреть все" и первым пунктом вы увидите ссылку на архивную страницу CPT.
Если ваш CPT не отображается в редакторе меню, убедитесь, что для него включены архивы ('has_archive' => true
в аргументах register_post_type
).
Если вы уверены, что архивы включены, но ваш CPT всё ещё не виден, вы можете отобразить его через меню "Настройки экрана" в верхней части страницы (спасибо, Nathan Hornby).

"Перейдите к своему типу записей (Custom Post Type) в редакторе меню". Для сведения: чтобы отобразить пользовательские типы записей на странице 'Меню', необходимо вручную включить их через выпадающее меню 'Параметры экрана', иначе они там не появятся.

И не забудьте добавить 'has_archive' => true при создании вашего CPT.

Странное поведение, которое я обнаружил: интерфейс недоступен, если для данного типа записей нет опубликованных материалов (v4.9.8). Чтобы добавить архив в меню, сначала нужно опубликовать хотя бы одну запись (хотя это, возможно, редкий сценарий использования).
