如何从 meta_key wordpress 中删除超链接

Posted

技术标签:

【中文标题】如何从 meta_key wordpress 中删除超链接【英文标题】:How to remove hyperlink from meta_key wordpress 【发布时间】:2018-10-28 18:59:39 【问题描述】:

我在博客中有 11458 个帖子,我想从 meta_key 的值中删除所有链接。

示例:

我在 meta_key 电影上有这个。

<ul>
<li><a href="http://mydomin/17541/">big art</a> (1954)</li>
<li><a href="http://mydomin/14368/">power</a> (1953)</li>

<li><img src="http://mydomin/wp-content/upload/56498654.jpg"/>
<a href="http://mydomin/14902/">down</a> (1953)</li>

<li><a href="http://mydomin/14847/">sorry man</a> (1950)</li>

<li><img src="http://mydomin/wp-content/upload/56456654.jpg"/>
<a href="http://mydomin/14902/">im wild</a> (1951)</li>
</ul>

我想更改并保存(自动更新帖子)

<ul>
<li>big art (1954)</li>
<li>power (1953)</li>
<li>down (1953)</li>
<li>sorry man (1950)</li>
<li>im wild (1951)</li>
</ul>

怎么做?

【问题讨论】:

【参考方案1】:

您需要添加您的 $meta_key,它会按照您想要的方式过滤结果。

 $anchor_image_tag_remove_ar = array ('/<img[^>]+./','/<a[^<>]*?[^<>]*?>(.*?)<\/a>/');
 $new_html = preg_replace($anchor_image_tag_remove_ar, '$1', $meta_key);

您也可以分别移除锚点和图片标签。

用于删除图像标签

 preg_replace("/<img[^>]+\>/i", "(image) ", $meta_key); 

用于删除锚标记

 preg_replace('#<a.*?>([^>]*)</a>#i', '$1', $meta_key);

【讨论】:

tnx 回答,meta_key 电影的完整代码是什么?在哪里复制此代码?抱歉,我是业余爱好者

以上是关于如何从 meta_key wordpress 中删除超链接的主要内容,如果未能解决你的问题,请参考以下文章

如何计算某个meta_key在列中出现的meta_value的次数?

如何访问 WordPress 插件变量/MySQL 数据?

Wordpress WP_Query 与 meta_key 的多个 meta_values

从 ACF 转发器字段中获取 meta_key

如何在 wordpress 中使用 wp_Query 输出 JSON?

更改与特定 meta_key 相关的 meta_value