Как изменить URL страницы архива, чтобы он находился внутри пользовательского типа записи

Вопрос или проблема

Я создал пользовательский тип записи под названием “Новости”, и у меня есть статическая страница для url.com/news

В настоящее время архивная страница загружается по этому URL: url.com/?post_type=news

Как мне сделать так, чтобы архивная страница загружалась по этому URL: url.com/news/all-news

Примечание: я использую Elementor

Ответ или решение

Для изменения URL-адреса страницы архива произвольного типа записи (custom post type) в WordPress с url.com/?post_type=news на url.com/news/all-news, необходимо внести изменения в настройки пользовательского типа записи и добавить соответствующие правила перезаписи. Ниже приводится поэтапная инструкция.

Шаг 1: Изменение параметров пользовательского типа записи

  1. Регистрация произвольного типа записи: Убедитесь, что вы правильно зарегистрировали ваш пользовательский тип записи "News" в файле functions.php вашей темы или в плагине. Пример кода:

    function create_post_type() {
        register_post_type('news',
            array(
                'labels' => array(
                    'name' => __('News'),
                    'singular_name' => __('News Item')
                ),
                'public' => true,
                'has_archive' => true,
                'rewrite' => array('slug' => 'news'),
                'supports' => array('title', 'editor', 'thumbnail'),
            )
        );
    }
    add_action('init', 'create_post_type');
  2. Параметр rewrite: Обратите внимание, что в параметре rewrite используется 'slug' => 'news', что указывает, что все записи этого типа будут доступны по URL, начинающимся с /news.

Шаг 2: Добавление пользовательского маршрута для архива

Для того чтобы сделать архив доступным по URL-адресу url.com/news/all-news, вам нужно изменить правила перезаписи:

function custom_news_archive() {
    add_rewrite_rule('^news/all-news/?$', 'index.php?post_type=news', 'top');
}
add_action('init', 'custom_news_archive');

Шаг 3: Обновление правил перезаписи

После внесения изменений в правила перезаписи, вам потребуется обновить постоянные ссылки:

  1. Перейдите в административную панель WordPress.
  2. В меню выберите «Настройки» -> «Постоянные ссылки».
  3. Просто нажмите «Сохранить изменения». Это действие перезапустит правила перезаписи и применит ваши изменения.

Шаг 4: Верификация изменений

Рекомендуется проверить, правильно ли работает новый URL-адрес для архива. Перейдите по адресу url.com/news/all-news и убедитесь, что страницы с новостями загружаются корректно. Если страницы не загружаются, проверьте, есть ли ошибки в коде и попробуйте очистить кэш вашего сайта, если используете плагины кэширования.

SEO-оптимизация

Для SEO-оптимизации и улучшения индексации страниц:

  1. Убедитесь, что ваши записи новостей содержат метатеги и описания с соответствующими ключевыми словами.
  2. Используйте плагины для SEO, такие как Yoast SEO или Rank Math, чтобы настроить заголовки и мета описания для архивной страницы.
  3. Регулярно добавляйте контент на странице архива, чтобы улучшить видимость в поисковых системах.

Следуя вышеописанным шагам, вы сможете успешно изменить URL-адрес страницы архива вашего произвольного типа записи и обеспечить его правильное функционирование.

Оцените материал
Добавить комментарий

Капча загружается...