问题描述
<?PHP
$args = array(
'post_type' => 'unistused','type' => 'yearly','format' => 'anchor',);
cptda_get_archives($args);
?>
我还为永久链接生成了一种自定义格式,以便在单击年度存档时将其锚定到正确的部分:
//
add_filter ('get_archives_link',function ($link_html,$url,$text,$format,$before,$after) {
if ('anchor' == $format) {
$link_html = "<li class='year-archive'><a href='$url#dreams'>"
. "$text"
. '</a></li>';
}
return $link_html;
},10,6);
不幸的是,当查看存档页面时,自定义结构'anchor'并未将'active'类添加到永久链接结构中,并且我无法实现解决方案或尝试实现此目的。任何帮助将不胜感激。
解决方法
您可能需要在此自定义功能中自己添加它:
add_filter ('get_archives_link',function ($link_html,$url,$text,$format,$before,$after) {
if ('anchor' == $format) {
global $wp;
$current_url = home_url( add_query_arg( array(),$wp->request ) );
$active_classname = $current_url === $url ? 'active' : '';
$link_html = "<li class=\"year-archive\"><a href=\"$url#dreams\" class=\"$active_classname\">$text</a></li>";
}
return $link_html;
},10,6);