我做我的第一个主题,一切都进展真实的快速感谢循环和WooCommerce的SDK提供的所有援助。然后今天我花了一整天未能做一些简单的显示图像.经过一整天的挣扎,我唯一能学到的是,WP似乎没有提供获取类别的图像和许多人问这个问题多年的手段但我还是找不到一个方法来真正做到这一点......:(
我想做的是在我的商店上面创建一个滑块,显示精选的商店类别的图像。我希望能够输入一个术语名称列表,并基于此,我的函数应该以类别图像的形式生成指向产品类别的链接。
听起来很简单......事实证明,它远没有接近简单......在你离开并将其标记为重复问题之前,让我解释一下我为什么要问它......
我发现的一些解决方案要求我知道术语的ID,而不是术语名称。有些人说“使用自定义术语搜索获得ID”,但没有解释如何。我知道如何为帖子进行基于自定义分类的查询,但不为术语。文档在传递给查询术语的值方面让我感到困惑:(
其他解决方案要求我首先找到一个特定类别的产品,然后从那里向后找到产品的类别图像(?)
然后当然有默认的答案,人们喜欢给给予的一切:“哦,你正在设计自己的主题,并希望显示类别图标?简单,只需下载一个插件来为你做”.现在,为什么我没有想到只是包括别人的插件到我的主题?(facepalm)
其他答案只是显示如何打印术语名称列表,但到目前为止,还没有什么能让我做什么 * 应该 * 已经这么简单:
$categories = array("software", "plugins", "merch");
foreach($categories as $cat) {
$term_id = get_term_id($cat);
$term_image = get_term_featured_image($term_id);
echo '<img src="'.$term_image.'">;
}
字符串
获取术语的第一个问题是,获取术语ID的WordPress功能只适用于类别分类,但我需要查询WooCommerce的product_cat分类。其次,即使你有ID,似乎也没有获取缩略图/特色图像的选项。那么现在怎么办?
所以我去低级别,并开始直接使用$wpdb查询表,我确定我之后的术语具有term_id 94。我查询缩略图的帖子ID的termmeta表,我发现它是905。现在我转向我的帖子表,发现.没有帖子条目905!WTF?所以我这样做了两个类别,并找到同样的事情。找到图像的id结果是没有从尝试提取帖子的附件返回,因为没有帖子匹配图像的id.
为什么这是如此该死的硬?WordPress使一切如此令人难以置信的简单,但这个简单的听起来任务似乎是不可能做到的.所以现在,你看到我已经谷歌这个死亡和挣扎我的背了,我问这个问题出于绝望:
如何将product_cat术语名称数组转换为url数组以显示类别的图像?
谢谢
2条答案
按热度按时间kkih6yb81#
最短的方法是使用
woocommerce_subcategory_thumbnail()
专用函数:字符串
另一步一步的方式,即将显示链接的产品类别图像及其名称:
型
两个都行...
要获取所有产品类别
WP_Term
对象并显示其缩略图:型
vnzz0bqm2#
我同意LoicTheAztez的回答,以下是我最近(在woocommerce更新后)如何获得任何术语的名称,缩略图和链接。
字符串
这可以被称为:
型