我想获得我的博客文章的作者列表,所以我在local.xml中设置了一个块,并尝试以下内容:
<wordpress_homepage>
<reference name="root">
<block type="wordpress/post_list" name="wordpress_author" template="wordpress/homepage/author/view.phtml">
<block type="wordpress/post_list" name="wordpress_post_list" template="wordpress/post/list.phtml">
<block type="wordpress/post_list_pager" name="wordpress_post_list_pager"/>
</block>
</block>
</reference>
</wordpress_homepage>
我的xml块但在我的view.phtml文件中:
<?php $posts = $this->getPosts(); ?>
返回null。但在其他页面我可以得到帖子。有什么想法吗?
答案 0 :(得分:0)
您提供的XML代码几乎显示给定作者的所有帖子(尽管由于在加载同名时未在注册表中定义作者模型,因此不会返回任何帖子)但不会作为您定义的第一个块具有错误的块类型(它应该是wordpress / author_view)。
根据您的解释,您似乎确实希望列出您网站上的所有作者,而不是特定作者的博客帖子列表。为此,以下代码应该有所帮助:
<?php $authors = Mage::getResourceModel('wordpress/user_collection')->load() ?>
<?php if (count($authors) > 0): ?>
<ul>
<?php foreach($authors as $author): ?>
<li>
<a href="<?php echo $author->getUrl() ?>">
<?php echo $this->escapeHtml($author->getDisplayName()) ?>
</a>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
此代码将加载所有用户并写出包含每个用户页面链接的列表。