需要MySQL查询或WP-CLI命令来更新快捷代码中的旧URL

时间:2019-04-16 作者:Mike Hermary

我客户的网站已从httphttps, 我已经使用phpMyAdmin中的查询更新了大多数URL,但我无法更新短代码URL。

我已使用以下查询替换中的URLpost_content, 但它对短码URL没有影响:

UPDATE `wp_posts`
SET post_content = REPLACE(post_content, \'src="http://example.com\', \'src="https://example.com\')
WHERE post_content
LIKE \'%src="http://example.com%\';

Update:

以下内容wp-cli 命令在wp_yoast_seo_links 表格:

wp search-replace \'http://example.com\' \'https://example.com\' --dry-run --skip-columns=guid
我也试过了--all-tables 在命令中,它产生了更多的结果,但仅适用于Wordfence和其他安全表。

有没有关于为什么找不到通过短代码放置的URL的想法?

Note: 使用DIVI插件插入的短代码。

1 个回复
SO网友:leymannx

您应该尝试运行WP-CLIsearch-replace 命令

$ wp search-replace \'http://example.com\' \'https://example.com\' --all-tables
但是你说这些URL是从一个短代码放置的?然后你需要找出这个短代码到底在做什么。因为它不一定已将URL保存到数据库。可能是在短代码中设置的,然后相应地生成URL?您还可以转储数据库(可能再次使用WP-CLI:$ wp db export test.sql) 然后用文本编辑器打开它,看看是否仍然可以在其中找到旧的URL。

相关推荐

需要有关MySQL中嵌套数组格式的帮助

我构建了一个插件,可以运行CSV文件并将变量解析为自定义帖子的自定义字段。在我的自定义帖子类型中,我构建了一个带有可重复自定义字段的元框。此元框从MySQL获取数据的格式如下:a:3:{i:0;a:2:{s:5:\"title\";s:7:\"Title 1\";s:5:\"point\";s:19:\"55.635656,12.506767\";}i:1;a:2:{s:5:\"title\";s:7:\"Title 2\";s:5:\"point\";s:19:\"55.625668,12.502392