如果产品中没有设置标题,我想在Yoast中添加一个元标题。
为此,我使用以下功能:
add_filter( 'wpseo_title', 'wpseo_change_product_title' );
function wpseo_change_product_title( $title ) {
if ( is_product() ) {
// My function to generate the title
}
return $title;
}
但我只想在WooCommerce产品中没有定义标题的情况下设置标题。
我试图通过将整个函数包装在if语句中来检查$title
是否为空:
if ( empty($title)) {
// function
}
但它没有效果。我错过什么了吗?
我看到Yoast SEO的标题从来都不是emtpy。Yoast添加了一些占位符内容。也许这就是没有办法检查的原因?
问题是,当您尝试清空产品中的Yoast SEO标题时,Yoast会在保存后重新设置标题,因为Yoast中有默认的产品模板设置。
要解决此问题,您需要按照Yoast:中的文档删除产品的Yoats SEO默认标题
https://yoast.com/help/how-to-modify-default-snippet-templates-in-yoast-seo/
之后,如果你删除每个产品中的SEO标题,你的检查将起作用。