我能想到的唯一通用半自动程序是删除post-meta,其中post_id
无效。
SELECT *
FROM {$wpdb->postmeta} as pm
LEFT JOIN {$wpdb->posts} as p
ON pm.post_id = p.ID
WHERE p.ID IS NULL
我写了一个
SELECT
而不是
DELETE
因为我不相信这在所有情况下都有效。我在Posteta表中看到了“dummy”或“placeholder”值
post_id
属于
0
或者一些荒谬的高价值。我并不是说这些都是好主意,但我已经看到了,所以请注意。你最好检查一下它返回的数据
SELECT
然后有选择地删除项目。
我真的不希望在没有post的情况下,post meta有什么意义,除了一些令人怀疑的明智用法之外。
你可以做的另一件劳动密集型的事情是meta_keys
并尝试找出属于不再使用的插件的密钥。可能无法识别它们,但您可以尝试。一些插件使用可识别的前缀或后缀。