天涯论坛

 找回密码
 立即注册
搜索
查看: 79|回复: 4

WordPress文案外边链接清除

[复制链接]

2996

主题

3万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109194
发表于 2024-7-4 07:09:35 | 显示全部楼层 |阅读模式

 保持分享优秀内容,重点为Python、seo、WordPress以及综合应用关联,让工作批量化、自动化,助你更有效完成项目,欢迎你的关注。

文案目录

操作流程

清除所有文案外边链接代码

按照搜索内容清除外边链接代码

运用之后

WordPress文案外边链接清除办法分享,有时候咱们采集引用了其他文案,有时候会忘记去除外边链接是采集规则由于各样未知原由未处理干净a标签,咱们能够倘若办法对WordPress文案外边链接进行清除。

操作流程

首要,备份了数据库,以防止意外状况出现

登录到你的WordPress后台。

在左侧的导航菜单中,找到并点击“外观”选项,而后选取“编辑主题”子菜单。

在编辑主题文件的页面,找到并点击“functions.php”文件。

在functions.php文件的末尾添加以下代码:

将代码中的www.linfengnet.com改为自己的域名

重视在域名中的.符号前面加一个 英文的\符号。

添加完之后等一会你再看就会发掘文案中的外边链接就被清除了。

举荐运用WPCode 代码片段插件,你能够直接将下述代码添加为一个新的代码片段开启,关于这个插件的介绍举荐你看我之前文案WordPress代码片段插件 WPCode

清除所有文案外边链接代码

倘若文案数量少,能够直接运用下面这个代码,会清除所有文案外边链接。

// 重视备份数据库哦!!!

functionremove_external_links(){

$args = array(

post_type=>post,

posts_per_page=>-1,

);

$query =new WP_Query($args);

if($query->have_posts()){

while($query->have_posts()){

$query->the_post();

$content = get_the_content();

$updated_content = preg_replace(/<a.*?href=["\](http[s]?:\/\/(?!www\.linfengnet\.com)[^"\]*)["\].*?>(.*?)<\/a>/i,$2, $content);

if($content !== $updated_content){

$post_id = get_the_ID();

$post_data = array(

ID=> $post_id,

post_content=> $updated_content,

);

wp_update_post($post_data);

}

}

}

wp_reset_postdata();

}

add_action(init,remove_external_links);

按照搜索内容清除外边链接代码

倘若咱们文案数量非常多的状况下,运用上面清除所有文案的代码,可能会引起占用服务器性能比较多,网站卡顿等状况咱们能够经过搜索的方式,搜索要清除的外边链接。

例如你的文案中存在www.baidu.com的外链,你就把www.baidu.com替换your_search_query,而后程序会搜索到存在www.baidu.com的文案而后把它们存在的所有外边链接都去除。不单单是链接,你搜索其他特定重要词去清除能够的。

和上面清除所有文章中的代码同样,记得把remove_external_links函数里面的正则域名替换为自己的(这般就除了自己域名以外的链接都清空)。

$args = array(

s=>your_search_query,// 替换为你的搜索重要

post_type=>post,

posts_per_page=>-1,

fields=>ids,// 只获取文案ID

);

$query =new WP_Query($args);

$external_Links = array();

if($query->have_posts()){

$post_ids = $query->posts;

wp_reset_postdata();

// 将得到的id加入数组

$external_Links = $post_ids;

echo 文案ID已保留到数组中。;

}else{

echo 找到匹配的文案;

}

function remove_external_links(){

global $external_Links;

foreach($external_Links as$post_id){

$post = get_post($post_id);

$content = $post->post_content;

$updated_content = preg_replace(/<a.*?href=["\](http[s]?:\/\/(?!www\.linfengnet\.com)[^"\]*)["\].*?>(.*?)<\/a>/i,$2, $content);

if($content !== $updated_content){

$post_data = array(

ID=> $post_id,

post_content=> $updated_content,

);

wp_update_post($post_data);

}

}

}

add_action(init,remove_external_links);

运用之后

上面代码运用完之后,请将它们从你的functions.php文件中删除是从WPCode插件中关闭就可

仅清除失效链接

倘若是仅必须清除失效链接,那样举荐运用之前的咱们分享的Broken Link Checker插件,详情请你看:

WordPress文案失效照片/链接检测插件举荐:Broken Link Checkerhttps://www.linfengnet.com/wordpress-plugin/2790.html




上一篇:是时候了,没外链的CSS研发策略
下一篇:没外链的CSS研发策略
回复

使用道具 举报

2996

主题

3万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109194
 楼主| 发表于 2024-10-6 20:21:05 | 显示全部楼层
你的见解真是独到,让我受益匪浅。
回复

使用道具 举报

3089

主题

3万

回帖

9909万

积分

论坛元老

Rank: 8Rank: 8

积分
99098770
发表于 2024-10-23 18:17:11 | 显示全部楼层
楼主果然英明!不得不赞美你一下!
回复

使用道具 举报

3089

主题

3万

回帖

9909万

积分

论坛元老

Rank: 8Rank: 8

积分
99098770
发表于 2024-11-2 19:54:59 | 显示全部楼层
哈哈、笑死我了、太搞笑了吧等。
回复

使用道具 举报

3061

主题

3万

回帖

9913万

积分

论坛元老

Rank: 8Rank: 8

积分
99139052
发表于 2024-11-9 13:26:59 | 显示全部楼层
你的见解真是独到,让我受益匪浅。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-23 02:55 , Processed in 0.179236 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.