Processwire Holder / Page实现

时间:2015-09-28 09:39:54

标签: processwire

如何在Processwire中实现持有者/页面模式。这个想法很简单。一种页面类型管理列表视图,通常包含非常少的本机内容。此页面的主要功能是提供其子页面列表,为每个子页面提供简要摘要,以及指向其详细信息视图的链接。第二个页面类型将表示任何给定子页面的详细信息视图,该子页面通常具有构成其标识的自定义模板和内容字段。可以想象它像新闻列表,图像画廊,甚至Twitter时间轴一样。

2 个答案:

答案 0 :(得分:1)

我可以举例说明我最近使用Processwire构建的网站中的两种不同方法。

首先是新闻部分: 我有一个名为News的页面,它的模板是新闻列表。根据新闻,我有新闻页面,他们的模板是新闻详细信息。新闻列表模板仅接受子页面的新闻详细信息和新闻列表。如果客户需要在新闻下创建子列表页面,我允许在新闻列表下新闻列表。

新闻列表模板基本上以

获取新闻
<?php $news = $page->children('template=news-detail'); ?>

其次是产品部分 网站有不同的部分用于目的。像WOMENS,MENS,KIDS等。产品不在主要分离之间共享。我有一个像下面这样的结构

  • 主要分离
    • 产品(产品列于下方)
    • 类别(类别列在其下)

在产品详细信息页面上,您可以选择多个类别。在类别页面上,产品列出如下。在主分离页面上,我列出了类别。每种页面类型都有自己的模板。

$products = $page->rootParent->find("template=product-detail,category={$page->id}");

希望有所帮助

答案 1 :(得分:-1)

只需在父页面下创建页面,然后在子页面上进行迭代。虽然Processwire很慢,但更好地使用Silverstripe它的响应速度更快。