优秀的Yoast SEO插件正在添加一些不需要的元标记。
例如,我希望article:author
显示在帖子上,但不会显示在网页或其他内容类型上。
有没有办法全球调整?
我很高兴编辑functions.php
,但我只是不确定我应该加入什么。
对于那些更熟悉插件的人来说,我将不胜感激。
我试过了:
function wpseo_show_article_author_only_on_posts() {
if ( !is_single() ) {
return false;
}
}
add_filter( 'xxxxxx', 'wpseo_show_article_author_only_on_posts' );
我需要知道哪个钩子应该替换xxxxxx
。
答案 0 :(得分:3)
您正在寻找wpseo_opengraph_author_facebook
过滤器,该过滤器与插件的article_author_facebook()
中的frontend/class-opengraph.php
方法相关联。
function wpseo_show_article_author_only_on_posts( $facebook ) {
if ( ! is_single() ) {
return false;
}
return $facebook;
}
add_filter( 'wpseo_opengraph_author_facebook', 'wpseo_show_article_author_only_on_posts', 10, 1 );
article_author_facebook()
方法检查is_singular()
,检查我们是否正在查看单页,帖子或附件:
此条件标记检查是否显示单个帖子,当下列其中一个返回true时就是这种情况:
is_single()
,is_page()
或is_attachment()
。如果指定了$post_types
参数,该函数将另外检查查询是否针对指定的一种帖子类型。
( ! is_single() )
的附加过滤器可确保article:author
仅添加到帖子中。
答案 1 :(得分:1)
如果人们正在寻找删除更多酵母SEO标签的方法,只需查找文件wordpress-seo / frontend / class-opengraph.php,您就会看到可以连接到哪些过滤器以删除某些标签。
这是我用来从页面中删除这些标签的代码:url,图像,标题,描述和类型:
function remove_yoast_og_tags( $ogTag ){
// Do a check of which type of post you want to remove the tags from
if ( is_page() ) {
return false;
}
return $ogTag;
}
$yoastTags = array(
"url",
"image",
"title",
"desc",
"type"
);
foreach ($yoastTags as $tag) {
add_filter( 'wpseo_opengraph_'.$tag, 'remove_yoast_og_tags');
}