我的博客中有大约1K的帖子 . 我使用Yoast SEO Wordpress插件 . 我的所有帖子都没有添加焦点关键字 . 有没有办法我可以动态地添加帖子的 Headers 到焦点关键字字段而不是逐个复制粘贴?
Yoast Focus关键字是一个post meta,你可以创建一个循环遍历所有帖子,然后用get_the_title()更新post meta;
示例代码:
$title = get_the_title(); $args = array('posts_per_page' => -1, 'post_type' => 'post'); $posts = new WP_Query($args); foreach($posts as $post){ update_post_meta($post->ID, '_yoast_wpseo_focuskw', $title); } wp_reset_postdata();
您可以在functions.php中添加代码,也可以使用代码创建页面模板 .
更新:
创建一个不包含循环的空白页面模板,然后将以下代码添加到文件中,并使用此页面模板创建页面 .
$posts_query = new WP_Query( array( 'post_type' => 'post', 'posts_per_page' => -1 ) ); while($posts_query->have_posts()) : $posts_query->the_post(); $title = get_the_title(); $post_id = get_the_ID(); update_post_meta($post_id, '_yoast_wpseo_focuskw', $title); echo $title . ' Meta Updated'; endwhile;
使用页面模板访问该页面,它应该遍历每个帖子并在每次发布帖子时显示“TITLE Meta Updated” .
1 回答
Yoast Focus关键字是一个post meta,你可以创建一个循环遍历所有帖子,然后用get_the_title()更新post meta;
示例代码:
您可以在functions.php中添加代码,也可以使用代码创建页面模板 .
更新:
创建一个不包含循环的空白页面模板,然后将以下代码添加到文件中,并使用此页面模板创建页面 .
使用页面模板访问该页面,它应该遍历每个帖子并在每次发布帖子时显示“TITLE Meta Updated” .