欢迎访问向前网络工作室官方网站!我们专注于包头网站建设,包头网站优化,包头网站推广,包头做网站等相关服务!

咨询热线:14794781288
微信号
新闻中心News
包头网站建设制作设计_包头网站优化推广-向前网络工作室

WordPress纯代码为文章自动生成标签和自动添加标签内链

本文作者:网站建设专家 | 时间:2023-05-06 16:48:39 | 点击:2次|打印本文|收藏 本文有827个文字,大小约为3KB,预计阅读时间3分钟
0605
2023
WordPress纯代码为文章自动生成标签和自动添加标签内链纯代码实现WordPress文章自动生成标签,标签自动添加内链,比插件 WP Keyword Link 和 Ad Inserter

原文标题:WordPress纯代码为文章自动生成标签和自动添加标签内链

WordPress纯代码为文章自动生成标签和自动添加标签内链

纯代码实现WordPress文章自动生成标签,标签自动添加内链,比插件 WP Keyword Link 和 Ad Inserter好用多了,每次写文章时都是自己整理的标签并手动添加,哪怕是已经存在的标签。对于已存在的标签最好是能够自动添加标签了,不然全手动的话胡萝卜周肯定会崩溃的,除此之外在网上发现许多的WordPress网站添加了标签云功能后,在文章中对于Tag标签的文字还增加了超链接,相当于给网站页面增加了内链功能,这对于网站优化,用户体验是很友好的。这个方法免费实现WordPress站点自动为文章添加Tag标签,并自动为这些标签添加链接变成内连接的方法。

图片[1]-WordPress纯代码为文章自动生成标签和自动添加标签内链-密鉴网

1、文章自动添加标签功能的实现

只需将下面的代码添加进WordPress主题的functions.php中就能够实现了。


/* 自动为文章添加标签 */

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->name) !== false)

wp_set_post_tags( $post_id, $tag->name, true );

}

}

}
2、文章自动给文章内出现的标签内容添加超链接。


/* 自动为文章内的标签添加内链 */

$match_num_from = 1; //一篇文章中同一个标签少于几次不自动链接

$match_num_to = 1; //一篇文章中同一个标签最多自动链接几次

function tag_sort($a, $b){

if ( $a->name == $b->name ) return 0;

return ( strlen($a->name) > strlen($b->name) ) ? -1 : 1;

}

function tag_link($content){

global $match_num_from,$match_num_to;

$posttags = get_the_tags();

if ($posttags) {

usort($posttags, "tag_sort");

foreach($posttags as $tag) {

$link = get_tag_link($tag->term_id);

$keyword = $tag->name;

$cleankeyword = stripslashes($keyword);

$url = "<a href=\"$link\" title=\"".str_replace('%s',addcslashes($cleankeyword, '$'),__('点击了解更多关于[%s]的文章'))."\"";

$url .= ' target="_blank"';

$url .= ">".addcslashes($cleankeyword, '$')."</a>";

$limit = rand($match_num_from,$match_num_to);

$content = preg_replace( '|(<a[^>]+>)(.*)('.$ex_word.')(.*)(</a[^>]*>)|U'.$case, '$1$2%&&&&&%$4$5', $content);

$content = preg_replace( '|(<img)(.*?)('.$ex_word.')(.*?)(>)|U'.$case, '$1$2%&&&&&%$4$5', $content);

$cleankeyword = preg_quote($cleankeyword,'\'');

$regEx = '\'(?!((<.*?)|(<a.*?)))('. $cleankeyword . ')(?!(([^<>]*?)>)|([^>]*?</a>))\'s' . $case;

$content = preg_replace($regEx,$url,$content,$limit);

$content = str_replace( '%&&&&&%', stripslashes($ex_word), $content);

}

}

return $content;

}

add_filter('the_content','tag_link',1);
以上代码的功能就是在我们发布/保存/更新文章时,自动检测文章中的内容,是否出现标签内容。如果出现过就会自动为文章内的标签添加内链。 具体效果如本篇文章所示!

版权声明:本文为向前网络工作室,未经站长允许不得转载。

本文来源:https://www.0478g.com/wzseo/2157.html

以下推荐不得不看
我要咨询做网站
成功案例
微信扫一扫,手机观看精彩再继续
tags标签聚合
最新内容推荐
热点内容推荐
建站流程
  • 网站需
    求分析
  • 网站策
    划方案
  • 页面风
    格设计
  • 程序设
    计研发
  • 资料录
    入优化
  • 确认交
    付使用
  • 后续跟
    踪服务
  • 14794781288
    14794781288
Hi,Are you ready?
准备好开始了吗?
那就与我们取得联系吧

咨询送礼现在提交,将获得某某网络策划专家免费为您制作
价值5880元《全网营销方案+优化视频教程》一份!
下单送礼感恩七周年,新老用户下单即送创业型空间+域名等大礼
24小时免费咨询热线14794781288
合作意向表
您需要的服务
您最关注的地方
预算
  • 看不清?点击更换

直接咨询