通过对元数据进行分组来优化WordPress查询速度

时间:2016-12-23 10:44:38

标签: database wordpress optimization metadata

我正在建立一个电子商务网站,我有大约10种不同的自定义帖子类型。对于每个自定义帖子类型,我有大约20个自定义字段(每个meta_key都分配了一个meta_value)。

我在考虑做的是将所有20个自定义字段分组到一个自定义字段中,这样我就可以将20个meta_values(数组)分配给单个meta_key。对于每个自定义帖子类型,这实际上会将数据库表中的行数从20行减少到单行。

例如,假设我有帖子类型“book”。 目前,此帖子类型的post_meta表可能如下所示:


meta_key   | meta_value
_________________________
chapters   |     5
_________________________
paragraphs |    10
_________________________
author     | john_smith
_________________________
price      |     19
_________________________

如果我将其转换为:

meta_key    | meta_value
____________________________
book_detail | [chapters:5 ,paragraphs:10, author:john_smith, price:19]
____________________________

这样做会优化WordPress查询速度还是只是浪费时间?

1 个答案:

答案 0 :(得分:0)

表格应尽可能保持标准化。不建议存储CSV或任何分隔值。

此外,如果您需要查询帖子的特定方面(例如仅chapters),那么在您只需要放置一个简单谓词的地方,规范化数据会派上用场:

where metakey = 'chapters';