Loops 在Wordpress中处理一个带有多个循环多维参数的WP_查询?
我想优化下面的代码。地点和舞蹈风格都是分类课程,但由contants townLocation1和TownLocation2确定 (不属于特定位置的是舞蹈风格,反之亦然) 我的思维方向是“正确”的吗?请给我指点!这种方法甚至可能不可行 在这种情况下可以使用瞬态吗?计划: 如果我们尝试为数据库增长进行规划,我们可能会提出如下显示模式: 其中:Loops 在Wordpress中处理一个带有多个循环多维参数的WP_查询?,loops,wordpress,Loops,Wordpress,我想优化下面的代码。地点和舞蹈风格都是分类课程,但由contants townLocation1和TownLocation2确定 (不属于特定位置的是舞蹈风格,反之亦然) 我的思维方向是“正确”的吗?请给我指点!这种方法甚至可能不可行 在这种情况下可以使用瞬态吗?计划: 如果我们尝试为数据库增长进行规划,我们可能会提出如下显示模式: 其中: 看起来您当前的解决方案只适用于少数帖子和条款(黄色) 由于文章多,术语少,我们需要文章分页(橙色) 由于术语多,帖子少,我们希望使用术语分页(绿色) 对
- 看起来您当前的解决方案只适用于少数帖子和条款(黄色)
- 由于文章多,术语少,我们需要文章分页(橙色)
- 由于术语多,帖子少,我们希望使用术语分页(绿色)
- 对于许多帖子和术语,我们需要两种分页(蓝色)
WP\u Query()
分类结构:
看起来您正在将自定义的类别课程
分类法拆分为两个相互排斥的部分:位置和舞蹈风格
但我建议使用两种自定义分类法:位置
和舞蹈风格
这听起来更符合逻辑
本机分类搜索:
例如,当您收到大量帖子时,可以使用本机分类法搜索来显示与给定位置和舞蹈风格对应的所有帖子
example.com/?location=london&dancestyle=tango
这将使用主查询,不需要辅助查询。“212”主题将使用archive.php
模板显示结果,您将免费获得分页
如果我们想使用自定义模板文件而不是archive.php
,我们可以使用过滤器对其进行修改
用户界面:
有许多方法可以为分类法搜索制作用户界面
<>你可以考虑使用刻面搜索UI。例如,检查这个很棒的插件以获得好的想法:
下面是一个类似插件的列表:
术语分页:
对于大量的术语(数以千计),我们可以考虑术语分页或某种类型的向下钻取的解决方案,如-Z目录列表。 我们可以使用以下方法在
get_terms()
中设置术语分页:
get_terms( 'mytaxonomy',
array(
'offset' => $offset,
'number' => $number,
)
);
我希望这对您有所帮助。计划:
如果我们尝试为数据库增长进行规划,我们可能会提出如下显示模式:
其中:
- 看起来您当前的解决方案只适用于少数帖子和条款(黄色)
- 由于文章多,术语少,我们需要文章分页(橙色)
- 由于术语多,帖子少,我们希望使用术语分页(绿色)
- 对于许多帖子和术语,我们需要两种分页(蓝色)
WP\u Query()
分类结构:
看起来您正在将自定义的类别课程
分类法拆分为两个相互排斥的部分:位置和舞蹈风格
但我建议使用两种自定义分类法:位置
和舞蹈风格
这听起来更符合逻辑
本机分类搜索:
例如,当您收到大量帖子时,可以使用本机分类法搜索来显示与给定位置和舞蹈风格对应的所有帖子
example.com/?location=london&dancestyle=tango
这将使用主查询,不需要辅助查询。“212”主题将使用archive.php
模板显示结果,您将免费获得分页
如果我们想使用自定义模板文件而不是archive.php
,我们可以使用过滤器对其进行修改
用户界面:
有许多方法可以为分类法搜索制作用户界面
<>你可以考虑使用刻面搜索UI。例如,检查这个很棒的插件以获得好的想法:
下面是一个类似插件的列表:
术语分页:
对于大量的术语(数以千计),我们可以考虑术语分页或某种类型的向下钻取的解决方案,如-Z目录列表。 我们可以使用以下方法在
get_terms()
中设置术语分页:
get_terms( 'mytaxonomy',
array(
'offset' => $offset,
'number' => $number,
)
);
我希望这对你有所帮助。说起来可能很愚蠢,但如果你做WP\u Query($loop\u arr['tax\u Query']),会发生什么?@Voltlight-为什么会有帮助?这只是争论的一部分说起来可能很愚蠢,但是如果你做WP_Query($loop_arr['tax_Query']),会发生什么呢?@Voltlight-为什么会有帮助?这只是争论的一部分,我不想分页(或者实际上客户不想分页),但将舞蹈风格和地点划分为单独的分类更符合逻辑。我已经通过对瞬态使用片段缓存部分解决了这个问题,但第一次加载它需要很长时间。我只是在寻找一种方法来优化对get_loop_courses()调用的处理(这一定是一种更好的方法!?)+1来提供解决方案/细节!看起来您的客户不想要一个可扩展的解决方案,所以您可能已经在通过缓存处理它了;-)从单个
WP\u Query()
获取所有内容的问题在于它不支持分类法/术语排序。关于如何使用单个查询获取单个分类中的所有帖子。您也可以编写手动SQL查询,但这可能不够灵活。@bestprogrammerintheworld(sjoe,只是厌倦了键入您的名字:-)),别忘了在奖金到期之前奖励它。:-)我不想要分页(或者实际上客户不想要),但将舞蹈风格和地点划分为单独的分类更符合逻辑