Вопрос или проблема
Мне удалось установить собственный тип записи в качестве главной страницы для сайта woocommerce, который я создаю.
Проблема в том, что когда я это делаю, URL главной страницы не отображается. (т.е. https://mywebsite.com).
Вместо этого он отображается как (https://mywebsite.com/post-type/post-name).
С помощью фильтров мне удалось избавиться от слога поста, но название все еще присутствует, когда он установлен как главная страница. Если я перехожу по адресу (https://mywebsite.com), адресная строка отображает (https://mywebsite.com/post-name).
Кто-нибудь знает, как избавиться от post-name в URL, когда устанавливаю это в качестве главной страницы?
Похоже, вам нужно либо настроить ваш index.php для отображения ваших хуков для этого типа поста, либо изменить настройки главной страницы в настройщике. Вот ссылка о том, как это сделать.
Ответ или решение
Для настройки пользовательского типа записи в качестве главной страницы на вашем сайте WordPress и устранения проблемы с отображением URL, который выводит «/post-type/post-name» вместо простого «/», необходимо следовать нескольким шагам. Это поможет вам добиться необходимого результата и улучшить SEO вашего сайта.
1. Настройка постоянных ссылок (пермалинков)
Первый шаг – убедиться, что ваши «пермалины» настроены корректно. Перейдите в админ-панель WordPress:
- Настройки > Постоянные ссылки.
- Выберите структуру, которая подходит вашему сайту. В большинстве случаев рекомендуется использовать «Имя записи» для более чистых URL адресов.
2. Создание пользовательского типа записи
Если вы еще не создали пользовательский тип записи (например, «product» для WooCommerce), сделайте это, добавив следующий код в файл functions.php
вашей темы:
function create_custom_post_type() {
register_post_type('your_custom_post_type',
array(
'labels' => array(
'name' => __('Your Custom Posts'),
'singular_name' => __('Your Custom Post')
),
'public' => true,
'has_archive' => true,
'rewrite' => array('slug' => 'your-custom-post-type'),
'supports' => array('title', 'editor', 'thumbnail'),
)
);
}
add_action('init', 'create_custom_post_type');
3. Установка главной страницы
Перейдите в админ-панель WordPress и следуйте инструкции:
- Настройки > Чтение.
- Выберите «Статическая страница» и как «Главная страница» укажите ваш пользовательский тип записи.
4. Переопределение URL-адреса
Чтобы убрать «/post-name» из URL, вам потребуется использовать перезаписи правил в WordPress. Для этого добавьте следующий код в ваш файл functions.php
:
function custom_redirect() {
if (is_front_page() && is_post_type_archive('your_custom_post_type')) {
wp_redirect(home_url(), 301);
exit();
}
}
add_action('template_redirect', 'custom_redirect');
Эта функция проследит за тем, чтобы при запросе главной страницы пользователя перенаправляло на корень сайта, тем самым убрав ненужный URL.
5. Очищение кеша и тестирование
После внесения всех изменений, очистите кеш вашего сайта и проверьте URL. Заходите на главную страницу и убедитесь, что она отображает именно «https://mywebsite.com», без дополнительных путей.
Заключение
Вышеизложенные шаги помогут вам настроить пользовательский тип записи в качестве главной страницы, очищая ненужные элементы в URL. Это не только улучшит удобство навигации, но и положительно скажется на SEO оптимизации вашего сайта. Не забывайте регулярно проверять обновления и совместимость плагинов, которые могут повлиять на вашу настройку.