Zend_Navigation:如何为其他操作保存动态添加的页面?

发布于 2024-12-01 01:49:28 字数 732 浏览 1 评论 0原文

我正在使用 Zend_Navigation 开发一个包含 100 多个参考的购物网站。导航有一些静态页面,例如“产品”页面。有些页面是动态创建的,例如,当用户转到产品页面时,导航页面是在产品操作中创建的:

$pageToAdd = array (
    'label' => 'Product 01',
    'controller' => 'productController',
    'action' => 'productAction'
);
$this->view->navigation()->findByLabel('Products');

这工作正常。然后,对于每个产品,用户可以获得另一个页面,其中包含与该产品相关的选项,我想在之前创建的页面中添加另一个页面。因此,在“选项产品”操作中,我做了同样的事情:

$pageToAdd = array (
    'label' => 'Option for product 01',
    'controller' => 'productController',
    'action' => 'optionsProductAction'
);
$this->view->navigation()->findByLabel('Product 01');

但此时,导航中不再存在上一页(“产品 01”)。它只包含静态页面“产品”,我找不到如何在两个操作之间“保存”导航。

I'm working with Zend_Navigation for a shopping site with 100+ references. The Navigation has some static pages, like the 'Products' one. Some pages are dynamically created, for instance, when the user goes to a product page, the navigation page is created in the product action:

$pageToAdd = array (
    'label' => 'Product 01',
    'controller' => 'productController',
    'action' => 'productAction'
);
$this->view->navigation()->findByLabel('Products');

This works fine. Then, for each product, the user can get another page with options relative to the product, and I'd like to add another page to the previously created. So, in the 'options-product' action, I do the same thing:

$pageToAdd = array (
    'label' => 'Option for product 01',
    'controller' => 'productController',
    'action' => 'optionsProductAction'
);
$this->view->navigation()->findByLabel('Product 01');

But at this time, the previous page ('Product 01') does not exist anymore in the navigation. It only contains the static page 'Products', and I cannot find how to have the navigation 'saved' between the 2 actions.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不必在意 2024-12-08 01:49:28

navigation 容器并不是

以最快的方式保存自己,以便轻松地

从操作控制器的 preDispatch() 方法的请求参数中查找 productId id。
如果存在 - 添加正确的产品页面链接到 Zend_Navigation 实例

navigation containers isnt saves themself

fastest way for easy jobs

find productId id from req params at preDispatch() method of your action controller.
if exists - add a right product page link to Zend_Navigation instance

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文