Intereting Posts
Как HTML5 FormData Ajax Как добавить настраиваемое поле в расширенные свойства меню? Пользовательский фоновый / заголовок Удалить вкладку «Визуальный композитор» из меню панели инструментов Редактор TinyMCE – новые строки, не отображаемые на передней панели Как получить дочернюю тему для загрузки скриптов из родительской темы? Разный баннер для разных разделов Почему WordPress использует «вложение» в строку запроса пользовательского типа сообщения? Включить отправку комментариев без перезагрузки страницы (с помощью Ajax)? Участок загружается очень медленно (время загрузки 4-5 минут) Дифференцировать изображение с изображениями после загрузки Лучший способ удаления метаданных пользователя во время удаления плагина? Многоязычный язык перевода WordPress Проблема с добавлением пользовательского CSS-класса к изображению в плагине фотогалереи ACF Создание тегов ogp в теме

Автоматическое добавление # в подменю

Я пытаюсь заменить все URL-адреса моих дочерних страниц, чтобы включить # автоматически

Пример: http://www.website.com/parentfoo/#childfoo

Я попытался использовать wp_setup_nav_menu_item для запуска всех элементов дочернего меню и добавить '#' к нему, но теперь $ menu_item-> post_name вызывает идентификатор, поэтому я не знаю, как правильно заменить строку.

Что я до сих пор:

 function auto_hashtag( $menu_item ) { if ( ! is_admin() && $menu_item->post_parent > 0) { // url $url = $menu_item->url; // slug $slug = $menu_item->post_name; $menu_item->url = str_replace($slug, "#"+$slug, $url); } return $menu_item; } add_filter( 'wp_setup_nav_menu_item', 'auto_hashtag' ); 

Solutions Collecting From Web of "Автоматическое добавление # в подменю"

Это закончилось тем, что сделал трюк.

 function auto_hashtag( $menu_item ) { if ( ! is_admin() && $menu_item->post_parent > 0) { // url $url = $menu_item->url; $menu_item->url = preg_replace('!/([^/]+)/$!', "/#\\1", $url); } return $menu_item; } add_filter( 'wp_setup_nav_menu_item', 'auto_hashtag' ); 

То, что вы пытаетесь сделать, кажется плохой идеей; символ # используется в конце URL-адреса, чтобы обозначить позицию привязки для прокрутки веб-сайта.

Возьмем, к примеру, эту страницу с помощью этой ссылки:

Автоматическое добавление # в подменю

При щелчке по экрану он переместил экран в <div> с id post-form .

В примере, приведенном в http://www.website.com/parentfoo/#childfoo , браузер перейдет на страницу 'parentfoo' и ищет элемент HTML с id childfoo .

Было бы плохой идеей изменить всю переделку URL-адресов по умолчанию для учетной записи для вашей желаемой структуры URL-адреса.

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

МОЖЕТ Я ТОЛЬКО НЕ ПОНИМАЮ, ЧТО ТЫ ПЫТАСЬ ДЕЛАТЬ?