【问题标题】:Replace URLs in wp_postmeta's meta_value relating to specific meta_key替换 wp_postmeta 的 meta_value 中与特定 meta_key 相关的 URL
【发布时间】:2017-03-05 13:26:13
【问题描述】:

在 wp_postmeta 表中,我想替换出现在 meta_value 字段中的 URL(除了其他内容),但前提是某些 meta_keys 匹配。

这些条目的内容是链接的图像。传出的 url 应该改变,但图像的路径必须保持不变。

例子:

<a href="https://olddomain.com/?someparameters" target="_blank" >
<img src="https://olddomain.com/wp-content/..." />
</a>

应该变成:

<a href="https://newdomain.com/?someparameters" target="_blank" >
<img src="https://olddomain.com/wp-content/..." />
</a>

我只获取这些行的查询是:

SELECT * FROM `wp_postmeta` WHERE `meta_key` LIKE 'sa_slide%_content' 

如果有人可以提出查询建议,我会节省数小时的体力劳动。

非常感谢您的帮助。

谢谢

【问题讨论】:

    标签: mysql wordpress replace phpmyadmin


    【解决方案1】:

    因此,经过进一步阅读和反复试验,我自己提出了 sql 查询:

    UPDATE wp_postmeta 
    SET meta_value = REPLACE (meta_value, 'href="https://olddomain.com/', 'href="https://newdomain.com/')
    WHERE meta_value LIKE '%href="https://olddomain.com/%'
    AND meta_key LIKE 'sa_slide%_content';
    

    所以诀窍是只匹配带有 href 的字符串以仅针对传出链接并添加 AND 条件以仅在这些行中执行操作

    【讨论】:

      猜你喜欢
      • 2015-03-03
      • 2017-06-21
      • 2020-04-21
      • 1970-01-01
      • 2019-11-06
      • 2017-08-07
      • 1970-01-01
      • 1970-01-01
      • 2018-02-16
      相关资源
      最近更新 更多