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发布文章时自动添加标签插件wp-autotags

    很多用户吐槽说WordPress不能自动添加标签,自己添加有些麻烦,今天为大家分享发布文章时自动添加标签WordPress插件wp-autotags,但是自动添加的标签没有自己的设置的标签更精准。 wp-autotags插件采用了TF-IDF算法来生成标签。 TF-IDF算法 使用这款插件,有必要让大家了解一下这个算法。 TF:Term Frequency,…

    2021年10月8日 建站知识
    505
  • wordpress怎么降级(使用插件将wordpress升/降到指定版本)

    最近有用户的网站出现了程序需要降级的需求,那么我们就用最简单的办法,插件实现wp程序的降级; 后台插件搜索:WP Downgrade | Specific Core Version 这是一个可以轻松实现升/降级的插件(任何致命性操作之前,请先本分各种数据!程序/数据库) ①准备升级或降级的WP程序版本号 ②这里可以将准备升降机的源程序放到本地服务器内,这样升…

    2023年8月22日
    140
  • 查询自己名下或者公司名下有几个腾讯云账号的方法

    很多个人或者公司为了获得新客户的优惠政策,往往会注册很多腾讯云账号,有时候时间久了,自己究竟有几个腾讯云账号都不记得了。很多人不知道从什么地方去查自己到底有几个账号,那么今天分享一个方法给大家。 大家可以打开下方的连接,然后填入自己的认证信息,就可以查到了。 https://cloud.tencent.com/account/recover 第一步输入你的个…

    2023年10月8日
    541
  • 网站错误提示“Error establishing a Redis connection”怎么办?

    WordPress建站使用缓存软件之后,经常会出现“Error establishing a Redis connection”的提示,如图: 去宝塔面板查看后发现,是因为MongoDB或者Redis插件被关闭,你需要手动重启插件才行。 我也没找到具体原因,想着应该是数据过大(70w条帖子),也有可能是我的设置有问题或者wp程序自身对大数据的处理不够好,所以…

    2024年7月31日
    511
  • 宝塔面板降级7.7.0方法

    这个版本可以不用强制登录宝塔账号7.7.0安装方法 纯原版安装:wget -O install.sh http://blog.fqidc.cn/bt/install_6.0.sh && bash install.sh 如已经安装宝塔最新版降级脚本如下: wget http://download.bt.cn/install/update/Lin…

    2024年7月27日
    330