如何为WordPress文章自动添加已经使用过的tag标签?

我们在发布WordPress文章的时候,需要手动给文章添加标签,这种方法比较麻烦,我就想着能不能在后台发布文章的时候,能自动添加tag标签,那么如何为WordPress文章自动添加已经使用过的tag标签?今天为大家分享三个方法。

如何为WordPress文章自动添加已经使用过的tag标签? (https://www.wpzt.net/) WordPress开发教程 第1张

方法一

// WordPress 自动为文章添加已使用过的标签

add_action(‘save_post’, ‘auto_add_tags’);

function auto_add_tags(){

$tags = get_tags( array(‘hide_empty’ => false) );

$post_id = get_the_ID();

$post_content = get_post($post_id)->post_content;

if ($tags) {

foreach ( $tags as $tag ) {

// 如果文章内容出现了已使用过的标签,自动添加这些标签

if ( strpos($post_content, $tag->n**e) !== false)

wp_set_post_tags( $post_id, $tag->n**e, true );

}

}

}

方法二

优化增强的版本,可控制标签输出数量。

// WordPress 自动为文章添加已使用过的标签

add_action(‘save_post’, ‘auto_add_tags’);

function auto_add_tags(){

$tags = get_tags( array(‘hide_empty’ => false) );

$post_id = get_the_ID();

$post_content = get_post($post_id)->post_content;

if ($tags) {

$i = 0;

foreach ( $tags as $tag ) {

// 如果文章内容出现了已使用过的标签,自动添加这些标签

if ( strpos($post_content, $tag->n**e) !== false){

if ($i == 5) { // 控制输出数量

break;

}

wp_set_post_tags( $post_id, $tag->n**e, true );

$i++;

}

}

}

}

方法三

考虑到每次输出都是标签库里面的前几个标签,不利于 SEO ,增加了标签打乱功能。

// WordPress 自动为文章添加已使用过的标签

function array2object($array) { // 数组转对象

if (is_array($array)) {

$obj = new StdClass();

foreach ($array as $key => $val){

$obj->$key = $val;

}

}

else {

$obj = $array;

}

return $obj;

}

function object2array($object) { // 对象转数组

if (is_object($object)) {

foreach ($object as $key => $value) {

$array[$key] = $value;

}

}

else {

$array = $object;

}

return $array;

}

add_action(‘save_post’, ‘auto_add_tags’);

function auto_add_tags(){

$tags = get_tags( array(‘hide_empty’ => false) );

$post_id = get_the_ID();

$post_content = get_post($post_id)->post_content;

if ($tags) {

$i = 0;

$arrs = object2array($tags);shuffle($arrs);$tags = array2object($arrs);// 打乱顺序

foreach ( $tags as $tag ) {

// 如果文章内容出现了已使用过的标签,自动添加这些标签

if ( strpos($post_content, $tag->n**e) !== false){

if ($i == 5) { // 控制输出数量

break;

}

wp_set_post_tags( $post_id, $tag->n**e, true );

$i++;

}

}

}

}

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容