今天看见标签”linux”的别名是”linux-2″,看着这个url很别扭,需要将其改正。于是在后台”文章”,”标签”中进行修改,显示别名已经被使用,无奈。但是发现ubuntu在分类目录和标签中都一样,没有冲突。于是就自己探索着怎么修改。

有两种方法可以让”分类目录(category)”和”标签(tag)”的别名一样。

第一种方法,在”分类目录”中添加目录,只写名字和别名就行了,描述就先不写了,然后在”标签”中添加一个标签,名字和别名和目录中的一样,这样创建的标签就使用的是分类目录是同一个对象了(即引用数据库中表”wp_terms”中的同一行记录)。

第二个方法是,在数据库中进行更改。

表”wp_terms”表中存放这是”分类目录(category)”和”标签(tag)”的记录,在这里是不能区分这两个的哪个是标签哪个是目录的。只有在表”wp_term_taxonomy”中数据才是区分”分类目录”(category)和”标签”(post_tag)。

表wp_terms结构
term_id name slug term_group
11 Linux linux 0

看看表wp_terms的结构。

"term_id":表wp_terms的主键(Primer Key)索引值,在其他表中可以引用这个值作为外键。
"name":该记录(关系)的名字,用于显示其名字。不做链接使用。
"slug":该记录的别名,仅在在url中显示。
"term_group" :目前还不知道。
表wp_term_taxonomy结构
term_taxonomy_id term_id taxonomy description parent count
11 11 category 0 0
36 11 post_tag 0 0

具体看看表wp_term_taxonomy的结构。

"term_taxonomy_id":为表"wp_term_taxonomy"的主键(Primer key),这个表中的索引值,不能有重复。
"term_id":表"wp_terms"的引用,他的取值只能在表"wp_terms"中取值。
"taxonomy":表示分类的意思,"category"表示这条记录(关系)是"分类目录(category)",的意思。而"post_tag"表示的是这条记录(关系)是"标签(tag)"的意思。
"description":用于表示该记录的详细信息,具体描述目录或者标签。
"parent":分类目录(category)的父目录,对文章标签(post_tag)则无效。
"count" :该记录被文章的引用次数。

我们只要将表wp_term_taxonomy中的两条记录的”taxonomy”对应的category和post_tag中的term_id指向统一个对象,那么”分类目录”和”标签”就使用统一个对象了,因此他们的别名也就相同了。

———————-update on 11th July———– 发现原来是之前的name使用的是大写,后台在tag中输入的是小写,导致两个不一样,所以就出现了不同的两个id,我还是直接对数据库进行更改的。

声明:未经允许禁止转载 东东东 陈煜东的博客 文章,谢谢。如经授权,转载请注明: 转载自东东东 陈煜东的博客

本文链接地址: 目录category和标签tag使用相同的别名 – https://www.chenyudong.com/archives/category-and-tag-use-same-slug.html