如何使用 zend_navigation 填充 zend_feed?
在每个模块的引导文件中,我填充 Zend_Navigation 实例,以便我可以创建 html/xml 站点地图、侧边栏导航、管理导航,现在我想创建一个 rss 提要。
有没有办法使用 Zend_Navigation 来填充 Zend_Feed,而不是复制代码并将页面添加到 Zend_Feed?
In the bootstrap file of each of my modules I am populating my Zend_Navigation instance so that I can create html/xml sitemaps, side-bar navigation, admin navigation and, now, I want to create an rss feed.
Instead of duplicating code and adding the pages to Zend_Feed, is there a way to use Zend_Navigation to populate Zend_Feed?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
提要是线性条目,不支持导航等嵌套结构。
但是,导航容器实现了 SPL 迭代器接口,因此您可以通过
foreach
轻松迭代它们,以将页面作为提要条目传递。但我认为更好的方法是在将页面添加到导航容器时添加新的提要条目,以同样的方式。
Feeds are linear entries and do not support nested structures like Navigation.
However, Navigation Containers implement SPL Iterator Interfaces, so you can easily iterate them via
foreach
to pass the pages as feed entries.But I think the better approach would be to add new feed entries when you add your pages to navigation containers, the same way.
我扩展了 Zend_View_Helper_Navigation 来获取导航,创建 Zend_Feed 可以接受的项目数组 ($feed),并返回 Zend_Feed::importBuilder(new Zend_Feed_Builder($feed), 'rss')->saveXML();
I extended Zend_View_Helper_Navigation to take the nav, create an array ($feed) of items that Zend_Feed would accept, and returned
Zend_Feed::importBuilder(new Zend_Feed_Builder($feed), 'rss')->saveXML();