为了显示所有产品,我创建了分类活动。php,它已经显示了所有具有活动分类法的产品。
那不是什么taxonomy-activity.php
用于。该模板是用于显示每个活动分类术语的帖子的模板。因此,如果您查看博物馆活动,该模板将用于显示所有博物馆产品,或者如果您查看食品和;饮料活动将使用相同的模板查看食物和;饮料产品。
模板本身不应选择要显示的帖子。WordPress已经这样做了。所有这些模板都应该用于展示这些帖子。要循环浏览WordPress已经查询过的产品,只需使用The Loop, 非自定义查询:
<?php
if ( have_posts() ) :
while ( have_posts() ) : the_post();
// Display product content
endwhile;
endif;
?>
因此WordPress将自动为每个活动分类法提供一个存档,其中显示属于它的产品。您不需要为每个页面或模板创建页面或模板。
这同样适用于岗位类型。当您注册帖子类型(如产品)时,WordPress会自动对所有产品进行存档,如果has_archive
设置为true
或者是鼻涕虫。要为此存档创建唯一模板,您需要创建archive-product.php
. 这将自动用于https://example.com/products/
, 哪里products
是post类型名称,或slug传递到has_archive
.
所以你需要的是archive-product.php
在以下位置查看所有产品时将使用https://example.com/products/
, 和taxonomy-activity.php
查看每个活动链接时将使用这些链接,如https://example.com/activity/museum/
或https://example.com/activity/attractions/
, 作为示例。
当要添加FacetWP支持来过滤这些归档文件时,您需要查阅他们的文档,因为第三方插件在这里是无关紧要的,但当涉及到所需的内置WordPress模板时,您需要像我描述的那样设置它们作为起点。