我想在Yoast SEO插件中使用自定义短代码,但我无法将其用于工作。我想在元标题中加入自定义时间规范。
这是我的短代码:
function time_yoast_shortcode() {
$year = date('Y');
return $year;
}
add_shortcode('yyyy', 'time_yoast_shortcode')
这就是我希望Yoast中的标题看起来像这样的方式:这是我今年的帖子[yyyy]
我有什么想法可以让我的短代码在Yoast中运行?
答案 0 :(得分:1)
对于任何希望为Yoast SEO的元标题添加短码支持的人,这就是我的处理方式。该代码为Meta Title添加了完整的简码支持,并添加了自定义的简码[year]以输出当前年份。将此代码添加到functions.php:
// Add shortcode support to Yoast Meta Title using 'wpseo_title' filter
add_filter('wpseo_title', 'filter_wpseo_title');
function filter_wpseo_title($title) {
$title = do_shortcode($title);
return $title;
}
// Add [year] shortcode (outputs current date in YYYY format)
add_shortcode('year', 'year_shortcode');
function year_shortcode() {
$year = date('Y');
return $year;
}
答案 1 :(得分:0)
如果您希望自己的帖子在您的搜索引擎优化标题结束时显示日期,请尝试:%% date %%在该特定帖子的yoast插件的SEO标题字段中。仅使用年份%% currentyear %%。
如果您想在全球范围内执行此操作,则可以在帖子标题中执行此操作。插件设置的metas部分。
答案 2 :(得分:0)
我们创建了一个WordPress插件来为Yoast SEO执行/运行/显示短代码。当前版本为2.1.1。不幸的是,由于可能侵犯版权,我们无法将其上传到WordPress存储库(这是不正确的)。因此,您可以直接从此处下载,使用我们的部分代码并直接安装整个插件: https://denra.com/wordpress/plugins/do-shortcodes-for-yoast-seo/
我们将在需要时继续使用新功能更新插件,但您可能需要将URL保留在我们网站上的插件页面上,因为我们无法上传到WordPress.org
答案 3 :(得分:0)
将此代码添加到 functions.php 文件中,它将起作用:
// For adding [year] shortcode in WordPress Posts
add_shortcode( 'year', 'sc_year' );
function sc_year(){
return date( 'Y' );
}
add_filter( 'single_post_title', 'my_shortcode_title' );
add_filter( 'the_title', 'my_shortcode_title' );
function my_shortcode_title( $title ){
return do_shortcode( $title );
}