每天60秒知晓世界

自动为WordPress文章添加标签

通过下面的代码可自动为WordPress文章添加已使用过的标签。

将代码添加到当前主题函数模板 functions.php 中:

代码一:

function zm_auto_add_tags() {
 $post_id = get_the_ID();
if ( $post_id ) : $post_content = get_post( $post_id )->post_content;
if ( !empty( $post_content ) ) {
 $tags = get_tags( array( 'hide_empty' => false ) );
if ( $tags ) {
 $i = 0;
foreach ( $tags as $tag ) {
if ( strpos( $post_content, $tag->name ) !== false ) {
if ( $i == 6 ) break; // 添加数量
 wp_set_post_tags( $post_id, $tag->name, true );
 $i++;
}
}
}
}
 endif;
}
add_action( 'save_post', 'zm_auto_add_tags' );

代码二:

打乱标签排序,每次更新都会变化。

function arraytoobject( $array ) {
if ( is_array( $array ) ) {
 $obj = new StdClass();
foreach ( $array as $key => $val ) {
 $obj->$key = $val;
}
} else {
 $obj = $array;
}
return $obj;
}

function objecttoarray( $object ) {
if ( is_object( $object ) ) {
foreach ( $object as $key => $value ) {
 $array[$key] = $value;
}
} else {
 $array = $object;
}
return $array;
}

function zm_auto_add_tags() {
 $post_id = get_the_ID();
if ( $post_id ) : $post_content = get_post( $post_id )->post_content;
if ( !empty( $post_content ) ) {
 $tags = get_tags( array( 'hide_empty' => false ) );
if ( $tags ) {
 $i = 0;
 $arrs = objecttoarray( $tags );
 shuffle( $arrs );
 $tags = arraytoobject( $arrs );
foreach ( $tags as $tag ) {
if ( strpos( $post_content, $tag->name ) !== false ) {
if ( $i == 6 ) break; // 添加数量
 wp_set_post_tags( $post_id, $tag->name, true );
 $i++;
}
}
}
}
 endif;
}
add_action( 'save_post', 'zm_auto_add_tags' );

使用时需要注意的是,当你的网站标签非常多,比如几千个,发表更新文章时可能会卡死。

温馨提示:

文章标题:自动为WordPress文章添加标签

文章链接:https://zy.prmath.com/10177.html

更新时间:2022年11月07日

1、本站只提供资源,不提供技术支持,介意勿下!具体可点击:免责声明,查看其中各项条款声明!
2、资源所标价格,是对本站收集、整理、打包、编辑详情以及本站运营费用的适当补偿,非资源价格,请支持正版,谢谢!
3、如若发现图片加载失效、演示站或资源下载链接失效,可点击:资源补档,进行反馈,我们将及时修正!
4、如有侵权请发邮件至:prmath@163.com,我们会第一时间进行审核处理。

给TA充电
共{{data.count}}人
人已充电
技术教程

分享15个自动写稿神器和文案素材网站

2022-10-24 16:46:53

技术教程

宝塔面板如何设置301重定向,为什么网站要设置重定向?

2022-11-11 15:40:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
搜索