Добро пожаловать в самую большую библиотеку wordpress-кода в рунете

Убрать вложенность страниц или категорий в URL

WordPress · 04.08.2024 16:24

0 0 109

Данный сниппет убирает вложенность урлов для дочерних страниц. С точки зрения структуры страницы остаются дочерними - и это можно использовать - для вывода дерева меню, например. 
Но с точки зрения URL - получается плоская структура, подходящая для определенных SEO-задач

Было: /родительская-страница/страница
Стало: /страница

function remove_parent_slug($post_link, $post) {
if ($post->post_type == 'page') {
$post_link = home_url('/' . $post->post_name . '/');
}
return $post_link;
}
add_filter('page_link', 'remove_parent_slug', 10, 2);

function update_page_slug($post_id) {
$post = get_post($post_id);
if ($post->post_type == 'page' && $post->post_parent) {
wp_update_post(array(
'ID' => $post_id,
'post_name' => wp_unique_post_slug($post->post_name, $post_id, $post->post_status, $post->post_type, $post->post_parent)
));
}
}
add_action('save_post', 'update_page_slug');

Обсудить сниппет
romapad

romapad

присоединился
30.04.2016

  • 69 Добавлено
    Сниппетов
  • 2 Получено
    Лайков
  • 0 Comments Posted
Теги
Поделиться с друзьями