因为涉及到老站的修改,数据量比较大,一个个的文章修改肯定不现实,所以研究起了WordPress的数据库,想通过数据库来批量修改,其实WordPress数据库的几张表我觉得有三张表wp_term、wp_term_relationships、wp_term_taxonom比较有意思。
这几张表是描述WordPress文章和分类目录、标签之间的关系,所以单独拿出来说一下,通过数据库修改文章分类、标签页主要涉及到这三张表:
基础不太好的朋友理解下面的知识需要一定的耐心,一定要一字一句的读完才能够理解,有理解不了的请给品自行博客留言。
一、表wp_term
这个表比较简单,主要是存储我们后台新建分类目录的数据(分类id、分类名称、分类别名)还有tags标签数据的,注意分类描述在wp_term_taxonomy这个表里面。主要涉及到三个字段:
1、term_id,我们在后台建一个分类目录或者tags标签,就生成一个term_id,这个字段在表wp_term_taxonomy里面也有;
2、name,分类名称,对应的分类目录或者tags标签名称;
3、slug,分类别名,对应的分类目录或者tags标签别名;
4、term_group,分类分组,这个用到比较少;
二、wp_term_relationships
这个表描述文章与分类、tags之间的关系,简单点说就是一篇文章你属于哪个分类目录,你属于哪个分类tags,跟你把归属搞清楚。总共三个字段:
1、object_id,这个值可以和wp_posts里面的ID划等号,就是wp_posts表里面ID=3对应着wp_term_relationships表里面object_id=3
2、term_taxonomy_id,这个值和wp_term_taxonomy表里面的term_taxonomy_id划等号;
3、term_order分类排序
这个不复杂,通过这个表我们可以用sql命令修改文章分类,可以参考一下文章:
三、表wp_term_taxonomy
这个表描述文章分类、标签之间的关系,以及一个分类里面文章的数量,上级分类,分类描述。主要有以下字段:
1、term_taxonomy_id:与表wp_term_relationships里面的term_taxonomy_id等值;
2、taxonomy:分类方法,WordPress的分类方法比较麻烦,有好几个值,category、post_tag、nav_menu等,比如我们创建一篇文章,文章指定类分类、定义了tags,那么这篇文章会有两个分类方法,一个category,一个post_tag,如果后台创建了菜单那么这个菜单对应的就是nav_menu的分类方法;
3、term_id:这个字段是表示文章分类或者标签的ID,这个我们后台创建分类以后会自动在wp_terms表里面生成一个term_id,同时会在wp_term_relationships表里面生成对应数据;
4、description:存放的栏目或者标签的描述(不添加数据时默认为空内容)
5、parent:所属父分类方法ID(不添加数据时,默认为0)
6、count:文章数统计(不添加数据时,默认为0);
一篇文章,对应着表wp_posts里面一个文章ID,这个文章ID在wp_term_relationships这个表里面对应着object_id,大家注意这两个字段的值是相等的,就是wp_posts表里面ID=3对应着wp_term_relationships表里面object_id=3
在wp_term_relationships表里面描述的是文章与分类、标签之间的关系,因为Wordpress里面的一篇文章可以同时分类到多个栏目分类,一篇文章也会有多个标签,所以一个object_id就可以对应多个term_taxonomy_id,同一个object_id就对应着多term_taxonomy_id,term_taxonomy_id其中至少会有一个分类id,另外的可能是代表分类id或者是标签代表的id(这样表述比较拗口,因为wp数据库里面分类目录和tags数据都统一放在wp_terms这个表里面,同样都是用term_id来表示的)
通过上面的简单论述,如果要批量修改WordPress数据库文章分类、标签就容易的多了,但是在此基础上还是要学习Mysql数据库的相关命令,后面有机会在说一下通过sql命令如何操作数据库。
评论