如何使用phpMyAdmin合并类别

时间:2014-04-20 作者:q305noonce

我尝试了以下phpMyAdmin查询,以将我的类别112747合并到类别112748中:

UPDATE `wp_term_relationships`
SET `term_taxonomy_id` = 112747
WHERE `term_taxonomy_id` = 112748;
它不起作用。查询包含哪些错误?

wordpress 3.8.2

phpMyAdmin 4.18

MySQL 5.5.34-cll-lve

我的一个wordpress网站有近300000篇帖子,大多数类别至少包含5000篇帖子。除其他外,我希望合并许多类别,以提高网站速度和性能。

我曾尝试使用几个不同的插件来合并wordpress仪表板中的类别,但我成功使用插件的能力似乎受到我网站所在的共享托管环境(cloudlinux)的各种mysql、cpu和php自动终止/限制功能的不利影响;换言之,任务在完成之前就被“杀死”,有时会“崩溃”整个网站。

我知道,使用wordpress仪表板删除类别会将该类别的帖子移动到默认类别;因此,我甚至尝试将默认类别更改为我要将“另一个”类别合并到其中的类别,并删除了“另一个”类别,但显然,任务最终还是会被“杀死”或“超时”。

通常,当我尝试从wordpress仪表板、使用插件或通过删除类别来合并类别时,“合并”仅部分完成。例如,一个类别中可能有30或400篇帖子被合并,但任务会被“终止”或“超时”,有时会在wordpress仪表板中产生错误,有时会“崩溃”网站,有时会两者兼而有之。

通常,如果没有合并所有帖子,我可以使用wordpress仪表板以增量方式重复该任务,但这可能需要多次重复该任务,才能将15000篇帖子合并到另一个类别中。此外,如果网站在特定的“重复”上“崩溃”,那么,我必须等待网站从崩溃中“恢复”。

因此,考虑到我遇到的上述问题,在尝试从wordpress仪表板中合并类别时,我觉得只使用phpMyAdmin来合并类别会更加高效和简单,等等。

然而,wordpress数据库结构似乎变得更加复杂。大约在5年前,我想我能够使用phpMyAdmin来做这类事情,而且更加容易和简单。

在这个特定的实例中,我在尝试实际查询之前多次确认“术语分类id”等;为了避免不必要的错误。然而,我的一些论坛帖子可能会显示不正确的术语分类ID,因为在这个特定的例子中,我从列出所有失败尝试的文本文件中复制/粘贴的方式。然而,当我实际尝试查询时,我会在继续查询之前多次检查“术语分类id”之类的内容。

1 个回复
SO网友:unifiedac

你不能简单地“合并类别”,你必须更改每个帖子所关联的类别。WP\\u TERM\\u RELATIONSHIPS表将帖子与类别联系起来。您可以尝试以下方式:

UPDATE wp_term_relationships 
SET term_taxonomy_id = 
   (SELECT term_taxonomy_id FROM wp_term_taxonomy WHERE term_id = 112748)
WHERE term_taxonomy_id =
   (SELECT term_taxonomy_id FROM wp_term_taxonomy WHERE term_id = 112747)
您也可以尝试此插件:http://wordpress.org/plugins/batchmove/

结束

相关推荐

JQuery AJAX添加了json2依赖吗?

我正在Wordpress中使用jQuery和AJAX开发投票系统。为了使这个投票系统工作,我需要在我的主题中使用jQuery。所以在我的函数中写下了代码。php。但出于某种原因,我的剧本什么都没做。Watch my full vote script here.所以我开始阅读抄本,发现here 要包含用于AJAX调用的jQuery,需要json2依赖项。有没有人有这方面的经验,可以告诉我需要如何包括这一点,因为jQuery已经在Wordpress中注册了,所以我是否需要再次注册jQuery并将json2依赖