任何人都知道如何删除默认的WordPress首页rel,然后添加自定义rel。 下面的rel下面是错的。因为我在我的头版上使用了分页。
<link rel='next' title='About Us' href='http://myweb/about-us' />
我想在下一次纠正我的人。任何人都可以帮助我。
<link rel='next' href='http://myweb/page/2' />
使用 add_action 和 remove_action
答案 0 :(得分:1)
推荐方法:
我不确定add_action
和remove_action
是否是正确的工具,但由于您愿意使用它们,您应该愿意使用add_filter - 是正确的工具。
您可以连接两个过滤器:
add_filter( "previous_post_rel_link", 'remove_title_from_previous_link' );
add_filter( "next_post_rel_link", 'remove_title_from_next_link' );
然后,编写函数来解析/删除title属性:
function remove_title_from_previous_link($link) {
// Write your code here to provide and return the correct link
// Sample only below:
return '<a href="my_custom_url" title="Corrected Url" rel="previous">';
}
function remove_title_from_next_link($link) {
// Write your code here to provide and return the correct link
// Sample only below:
return '<a href="my_custom_url" title="Corrected Url" rel="next">';
}
修改强>
如果你真的必须使用add_action
和remove_action
,那么你想要像这样挂钩这个动作:
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 999);
然后
add_action('wp_head', 'my_custom_rel_link_function');
当然还有你的自定义功能:
function my_custom_rel_link_function() {
// ... do your magic here ...
}
答案 1 :(得分:0)
这仅适用于首页
将以下代码添加到头部
// add custom link rel for home page
if(is_front_page()){
$post_per_page = 1;
$paged = (get_query_var('page')) ? get_query_var('page') : 1;
$published_posts = wp_count_posts()->publish;
$prev_link = get_pagenum_link( $paged - 1 );
$next_link = get_pagenum_link( $paged +1 );
if( $paged >= 2 ){
echo "<link rel=\"prev\" href=\"".$prev_link."\"/>"."\n";
}
if( $published_posts > ( $post_per_page * $paged ) ){
echo "<link rel=\"next\" href=\"".$next_link."\"/>"."\n";
}
}
答案 2 :(得分:0)
以下解决方案:
这会移除rel="next"
&amp;来自自定义帖子类型和页面的rel="prev"
。
在function.php
add_filter( 'wpseo_next_rel_link', '__return_false' );
add_filter( 'wpseo_prev_rel_link', '__return_false' );