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

Я пытаюсь заменить все 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-адресами дочерних страниц, если вы продолжите.

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