我在Wordpress页面标题中遇到&符问题。我有一个侧边栏,显示Page Parent Title&下面的孩子列表。如果“页面父标题”具有“&”符号,则会在“&”符号之前切断标题,并导致下面显示的列表出现问题。它也发生在Breadcrumb中。当我在带有&符号标题的页面上时,我没有任何问题,但是当我找到该页面的孩子时,那就是我的问题开始的时候。
页面标题为ChildLinks-CCR&R
以下是我的侧边栏的代码:
if ( !is_page('childcare-training')) {
$url = get_the_title($post->ID);
$output = wp_list_pages('echo=0&depth=1&sort_column=menu_order&sort_order=asc&exclude=802,1065,236,11&title_li=<h1 class="title1">'. $url .'</h1>' );
if (is_page( )) {
$page = $post->ID;
if ($post->post_parent) {
$page = $post->post_parent;
}
$titlenamer = get_the_title($page);
$children=wp_list_pages( 'echo=0&child_of=' . $page . '&title_li=' );
if ($children) {
$output = wp_list_pages ('echo=0&depth=1&child_of=' . $page . '&title_li=<h1 class="title3">' . $titlenamer . '</h1>');
}
}
echo $output;
}
修改
这似乎解决了侧边栏的问题:
$output = wp_list_pages (array(
'echo' => 0,
'child_of' => $page,
'depth' => 1,
'title_li' => '<h1 class="title3">' . $titlenamer . '</h1>'
));
我在上面的代码中尝试了str_replace
,如下所示:
$titlenamer = get_the_title($page);
$titlenamer = str_replace("&", "&", $titlenamer);
$titlenamer = str_replace("&amp;", "&", $titlenamer);
我也尝试过多种方式使用html_entity_decode
:
$titlenamer = html_entity_decode(get_the_title($page), ENT_QUOTES, 'UTF-8');
$titlenamer = html_entity_decode(get_the_title($page));
$titlenamer =get_the_title(get_the_title($page));
在编辑wordpress页面时,我还尝试将&
添加到标题中&
解决这个问题的任何想法?除了使用and
而不是&
重命名页面之外..
我还发布了Wordpress StackExchange