WordPress程序自动设置标签Tag自动内链无插件实现办法

一直有使用WP keyword Link Plugin插件,但是发现这个插件已经好久没有更新,好像目前在平台中已经找不到。所以准备替换掉这个插件。类似的WordPress插件还是有很多的,比如Keywords to Links Converter、Auto Tag Links等都可以实现。

WordPress程序自动设置标签Tag自动内链无插件实现办法

本着少用插件,能不用插件就不用的策略,所以准备还是无插件实现。

//自动TAG转内链
$match_num_from = 2; // 一个TAG标签出现几次才加链接
$match_num_to = 1; // 同一个标签加几次链接
add_filter(‘the_content’,’tag_link’,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, ‘$’),__(‘View all posts in %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;
}

将代码添加到当前主题Functions.php文件中。如果有冲突出现问题,我们需要检查是不是不兼容。检查不出来的话,我们只能使用插件实现。

关于WordPress程序自动设置标签Tag自动内链无插件实现办法的相关内容;如有侵权,请联系老文删除。

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
老文的头像老文
上一篇 2021年8月18日 下午4:05
下一篇 2021年8月19日 下午4:56

相关推荐

  • wordpress程序中使用的Gravatar头像被墙及解决方案

    今天网站发现Gravatar应该是彻底被墙了,根本无法访问了,可能是最近大会或者什么其他原因吧,还有人因为什么被抓起来了,太多东西也不好评价。我Gril Friend Wall 果然是天下无敌。 年纪大了折腾的精力就不如从前了,只想用最简单的方法解决问题,我采用了第一种方法,直接调用官方的数据,理论上应该是最稳定的了(没被墙的前提下)。 调用ssl 头像链接…

    2021年8月18日
    465
  • 怎样挖掘长尾词?目标关键词和长尾关键词的区别?

    怎样挖掘长尾词?目标关键词和长尾关键词的区别? 目标关键词 你的目标客户最可能使用和搜索的关键词,我们往往用首页来优化它们。 目标关键词一般作为网站首页的标题,以是2-4个字构成的一个词或词组,名词居多,网站的主要内容需围绕网站产品和服务来设定,网站的主要内容围绕目标关键词展开。 一般通过百度指数和竞争对手分析,确定目标关键词。 长尾关键词 长尾关键词是指网…

    2022年5月13日
    433
  • Discuz论坛网站首页窄屏自定义宽度修改图文教程

    Discuz论坛管理中心默认有窄屏和宽屏的选择,窄屏默认是960px宽度,很多论坛为了页面美观,基本都是1200px的宽度,如何修改DZ论坛首页窄屏宽度大小的呢? 1、在网站根目录中依次打开文件 /template/default/common/common.css 2、直接在文件中快速查找960(文本编辑器中查找快捷键是ctrl+F5)会出现3处,将这3处…

    2024年7月30日 建站知识
    179
  • 使用宝塔面板Shell脚本设置定时重启MySQL服务

    服务器最近用宝塔数据库服务发现偶尔会长时间有很多占用内存的情况,配置也不是很高,只能定时重启一下MySQL服务了。给大家分享一下我的方法,挺简单的。 简单介绍 首先重启MySQL命令是 service mysqld restart,知道了就简单了,只要在计划任务加上shell脚本就好。 操作方法 1、打开计划任务界面,提交下图内容,然后在添加任务即可。 2、…

    2022年3月26日
    1.2K
  • 通过Nginx日志分析百度蜘蛛的爬行抓取情况

    做网站 SEO优化的朋友会特别关注蜘蛛爬行的次数、频率等,而做好网站优化的第一步就是首先让蜘蛛爬虫经常来你的网站进行光顾,如果蜘蛛爬行出现异常怎么办?下面将结合 Linux 系统中的几个 Linux 命令,如 cat 命令 \grep 命令 \awk 命令等可以让你清楚的知道蜘蛛的爬行情况。 下面我们针对 ng­inx 服务器进行分析,日志文件所在目录:/u…

    2021年8月25日
    739