Fishpig Wordpress - 在帖子列表中获取帖子类别
问题描述:
将Fishpig wordpress与magento集成,我似乎无法使用文档提供的方法访问帖子的类别。在post/list.phtml中,我使用下面的代码来尝试提取当前帖子的类别以添加到列表项类,但是转储该对象表明类别术语数组为空。在查看单个帖子时,我也尝试了view.phtml,并得到相同的结果。任何人都可以提供任何指针,我在做什么错在这里?由于Fishpig Wordpress - 在帖子列表中获取帖子类别
<?php foreach ($posts as $post):
<?php $categories = $post->getTermCollection('category') ?>
<li class="<?php echo $categories ?>
答
<?php
$id = get_the_ID();
$cats = wp_get_post_categories($id);
echo $cats[0]->name;
?>
答
如果你在看代码一点点接近,你会看到你所呼叫的方法被称为getTermCollection。这告诉你该方法返回一个集合的术语(即类别)。你不能简单地将一个集合回显到屏幕上。相反,您需要循环访问该集合。
<?php $categories = $post->getTermCollection('category') ?>
<?php if (count($categories) > 0): ?>
<?php foreach($categories as $category): ?>
<a href="<?php echo $category->getUrl() ?>"><?php echo $this->escapeHtml($category->getName()) ?></a>
<?php endforeach; ?>
<?php endif; ?>
这循环遍历类别并将每个类别的链接打印到屏幕上。
您不能在magento模板中使用原生wordpress函数,只能使用Fishpig提供的包装函数和任何自定义添加。 – bsod99