2
我希望在主要网站上查找并替换某个关键字。限制搜索并替换为类别
我通常会使用类似
UPDATE wp_posts
SET post_content = REPLACE (post_content, 'Item to replace here', 'Replacement text here');
不过,我不希望更新是在整个网站,我希望把它限制在只有一个类别。
谁能告诉我如何做到这一点?
我希望在主要网站上查找并替换某个关键字。限制搜索并替换为类别
我通常会使用类似
UPDATE wp_posts
SET post_content = REPLACE (post_content, 'Item to replace here', 'Replacement text here');
不过,我不希望更新是在整个网站,我希望把它限制在只有一个类别。
谁能告诉我如何做到这一点?
UPDATE:为了更精确的查询应该
UPDATE wp_term_relationships r JOIN wp_posts p
ON r.object_id = p.id JOIN wp_terms t
ON r.term_taxonomy_id = t.term_id JOIN wp_term_taxonomy x
ON r.term_taxonomy_id = x.term_taxonomy_id
SET p.post_content = REPLACE(post_content, 'Item to replace here', 'Replacement text here')
WHERE t.name = 'My Category'
AND x.taxonomy = 'category'
AND x.parent = 0 -- top level category
注:之前更新任何内容:
1),您可以检查哪些职位将通过发行
影响SELECT *
FROM wp_term_relationships r JOIN wp_posts p
ON r.object_id = p.id JOIN wp_terms t
ON r.term_taxonomy_id = t.term_id JOIN wp_term_taxonomy x
ON r.term_taxonomy_id = x.term_taxonomy_id
WHERE t.name = 'My Category'
AND x.taxonomy = 'category'
AND x.parent = 0 -- top level category
2)确保你有坚实的备份你的wordpress数据库。
完美的作品彼得。非常感谢你。 – Shakey
彼得,如果类别是一个子类别,它将会如何改变? 我试着运行这个,但是一旦查询运行,它只显示上面一个类别的详细信息。 – Shakey
@Shakey你有没有机会拥有多个具有相同名称但不同父类别的子类别? – peterm