WordPress 纯代码实现页面锚文本链接(免插件)

WordPress 纯代码实现页面锚文本链接

WordPress 实现页面锚文本链接的方法很多,由于装插件比较繁琐,所以这里老文笔记介绍一个WordPress 纯代码实现页面锚文本链接方法,在网站主题目录找到该文件 functions.php,具体路径:网站根目录:wp-content/themes/主题目录/ functions.php

//自动TAG转内链 https://www.wenrr.com/ 来源
$match_num_from = 1; // 一个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, '$'),__('%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 纯代码实现页面锚文本链接。

关于WordPress 纯代码实现页面锚文本链接(免插件)的相关内容;如有侵权,请联系老文删除。

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
老文的头像老文
上一篇 2021年10月8日 下午4:51
下一篇 2021年10月9日 上午10:22

相关推荐

  • 网站错误提示“Error establishing a Redis connection”怎么办?

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

    2024年7月31日
    560
  • Nginx常用屏蔽规则,让网站更安全

      引言 Ng­inx (en­gine x) 是一个高性能的 HTTP 和反向代理服务,目前很大一部分网站均使用了 Ng­inx 作为 WEB 服务器,Ng­inx 虽然非常强大,但默认情况下并不能阻挡恶意访问,这里有一份常用的 Ng­inx 屏蔽规则,希望对你有所帮助。 在开始之前,希望您已经熟悉 Ng­inx 常用命令(如停止、重启等操作)及…

    2021年8月25日
    736
  • 让你的WordPress 网站更安全的常见方法

    WordPress程序使用者众多,然而被黑,被攻击的网站也是众多,那么怎样让你的WordPress 网站更安全呢,下面小编就来说说。 1.备份数据 经常备份网站数据 这个习惯是必须的,即使是再安全的服务器也有崩溃损失文件的可能性,此外如果网站被黑客攻击了,也会造成文件丢失或被修改。最简单有效的方法当然就是备份数据了。但是备份数据也是需要有一定的规划,不能说想…

    2021年8月19日
    733
  • 宝塔面板一键卸载教程命令:删除宝塔面板并重新开始安装

    宝塔面板自从爆出重大漏洞之后,目前来看似乎该升级的朋友已经都升级了,其他的朋友要么是没什么重要数据,要么就是根本没用宝塔所以高枕无忧。那么除了升级之外,如果我们想卸载宝塔,并且使用其他的建站环境的话,可以看一下小编整理的宝塔面板一键卸载教程。目前卸载方法主要包括直接重装系统法以及使用宝塔提供的卸载命令进行卸载的方法。 一、直接重装系统以实现卸载宝塔面板 重装…

    2022年2月7日
    2.0K
  • wordpress子主题怎么添加

    WordPress子主题简介和原理 WordPress提供了子主题功能,让我们可以通过使用子主题进行修改WordPress主题,而不需要直接修改源码,而出现无法更新的内容。子主题需要有一个父级主题存在才能启用,根据WordPress主题的主要文件,子主题存在,WordPress则会自动使用子主题的文件,而放弃使用父主题。 这样,我们先要修改父级主题的哪一个文…

    2023年1月4日
    171