数据库迁移后,不会显示主题mod

时间:2021-08-16 作者:Meyer Auslander - Tst

我的Wordpress安装只有一个活动主题。这个wp_option 它的条目显示有31个主题mod条目。

a:31:{s:18:"custom_css_post_id";i:5248;s:30:"theme_settings_api_keys_google";s:39:"xxx.....etc..";s:28:"theme_settings_xxx";........etc...etc...etc....;s:11:"custom_logo";i:5810;}
但是当我跑步的时候get_theme_mod( \'my_mod_x\' )) 什么都不回来
在命令行上运行时也是如此:wp theme mod get --all --allow-root. 我得到的只是:

+--------------------+-------+
| key                | value |
+--------------------+-------+
| custom_css_post_id | 5248  |
+--------------------+-------+
谁能告诉我是什么让WordPress认为只有一个主题模式,而应该有很多主题模式?

1 个回复
最合适的回答,由SO网友:Meyer Auslander - Tst 整理而成

问题是,如果序列化的字符串长度与其真正的字符串长度不匹配,则会出现这种情况。迁移步骤之一是使用以下命令更改数据库SQL文件中的域名:

sed -i \'s/old-domain-name/new-domain/g\' db-dump.sql

其中一个主题mod是一个包含旧域名的字符串。当它更改为新域名时,字符串的长度没有调整为与新字符串长度匹配。因此,WordPress无法正确阅读主题mods。

教训:在db转储上执行全局查找和替换时要小心。sql文件!

相关推荐

Reducing Database Query Time

在这里寻找一些建议。有一位客户已经在WooCommerce上工作了大约一年半。我们为他们建了一个新网站。他们开始增加一条新的家具生产线。每个项目有700-800个产品变体组合。由于从生产线中添加了大约8个新产品,当您在管理中查看产品列表时,加载需要花费很长时间。如果您快速编辑一个产品,并说将其添加到第二个类别,然后单击“更新”,则完成查询平均需要10.2-10.8秒(根据查询监视器)。意识到有700-800个变体需要迭代,如果可以理解的话,可能需要更长的时间。我已经恢复到2017主题,禁用了除woocom