Я настраиваю боковое навигационное меню, используя wp_list_pages
, и я хотел бы преобразовать дочерние ссылки из URL-адресов в якорные ссылки, т.е. #link, а не текущую https://example.com/link, генерируемую wp_list_pages
.
Я пытался использовать следующий код:
<?php
$my_pages = wp_list_pages('echo=0&title_li=&child_of=5&depth=1');
$pieces = explode('"', $my_pages);
$i = 5;
$j = 3;
$limit = count($pieces);
for (;$i<$limit;) {
$tmp1 = '#'.$pieces[$j];
$pieces[$i] = $tmp1;
$i = $i+6;
$j = $j+6;
}
$tmp2 = implode('"',$pieces);
echo $tmp2;
?>
Но он кажется очень старым, и я не могу понять, как правильно внедрить его в мою текущую структуру. Возможно, этот код бесполезен для того, что я пытаюсь сделать, но я не смог найти ничего, что сработало бы.
Это то, что у меня сейчас есть:
<div class="hero-container">
<?php
global $children;
global $post;
if ( $post->post_parent ) {
$children = wp_list_pages( array(
'title_li' => '',
'child_of' => $post->post_parent,
'echo' => 0
) );
} else {
$children = wp_list_pages( array(
'title_li' => '',
'child_of' => $post->ID,
'echo' => 0
) );
}
if ( $children ) : ?>
<?php echo '<div class="hero-side-menu">', '<h1>', get_the_title(), '</h1>', '<ul>', $children, '</ul>', '</div>' ?>
<?php endif; ?>
</div>
Буду очень признателен за любые предложения, так как я пытался разобраться в этом в течение нескольких дней и ничего не получил ... Также был бы признателен за объяснение, как я пытаюсь узнать, где я ошибся!
Мне нужно изменить дочерние элементы родительских страниц, чтобы они содержали ссылки #anchor, а не URL-адреса, поскольку я сжал страницы до их родителей, но все еще хотел бы иметь их в качестве параметров в боковом меню.
Пояснение: У меня есть страница с детскими страницами, которые я называю родителями, однако, они действительно дети. Я хотел бы сохранить URL-адреса для дочерних страниц, а затем сделать детей из дочерних страниц #links.