获取 woocommerce 子类别产品

2023-12-31

我正在尝试让 woocommerce 子类别中的产品显示在主要类别下。

<ul class="wsubcategs">
<?php
$wsubargs = array(
'hierarchical' => 1,
'show_option_none' => '',
'hide_empty' => 0,
'parent' => $category->term_id,
'taxonomy' => 'product_cat'
);
$wsubcats = get_categories($wsubargs);
foreach ($wsubcats as $wsc):
?>
<li><a href="<?php echo get_term_link( $wsc->slug, $wsc->taxonomy );?>"><?php echo $wsc->name;?></a>

</li>
<?php
endforeach;
?>

</ul>

到目前为止,这已经让我获得了正确的主类别下的当前子类别,但它们下没有显示任何产品。 任何意见,将不胜感激。

O.


在 WordPress 中,有很多方法可以做到这一点。您可以使用 WP_Query 对象执行自定义查询来获取该类别中的所有产品,这将是最灵活的选项,但还有一种更简单的方法。

Woocommerce 提供专门用于显示特定类别中的产品的短代码。输出将使用 Woocommerce 中已内置的模板。

<?php echo do_shortcode('[product_category category="appliances"]');?>

这将为您提供特定类别下的产品。

在您的代码中,您可能会执行以下操作:

<ul class="wsubcategs">
<?php
$wsubargs = array(
    'hierarchical' => 1,
    'show_option_none' => '',
    'hide_empty' => 0,
    'parent' => $category->term_id,
    'taxonomy' => 'product_cat'
);
$wsubcats = get_categories($wsubargs);
foreach ($wsubcats as $wsc):
?>
    <li>
        <a href="<?php echo get_term_link( $wsc->slug, $wsc->taxonomy );?>"><?php echo $wsc->name;?></a>
        <div class="products">
            <?php echo do_shortcode('[product_category category="'.$wsc->slug.'"]');?>
        </div>
    </li>
<?php endforeach;?>
</ul>

我在你的问题中注意到你正在输出一个列表。在我看来,您可能不想在每个类别下实际输出产品(详细模板),但您可能更想在子列表中显示产品或产品标题的数量。

显示产品数量的方法如下:

count;?>

您可以在上面的 foreach 循环中的任何位置使用它。

以下是在每个类别的列表元素中显示产品标题子列表的方法:

<?php $subcategory_products = new WP_Query( array( 'post_type' => 'product', 'product_cat' => $wsc->slug ) );
    if($subcategory_products->have_posts()):?>
    <ul class="subcat-products">
        <?php while ( $subcategory_products->have_posts() ) : $subcategory_products->the_post(); ?>
        <li>
            <a href="<?php echo get_permalink( $subcategory_products->post->ID ) ?>">
                <?php the_title(); ?>
            </a>
        </li>
        <?php endwhile;?>
    </ul>
<?php endif; wp_reset_query(); // Remember to reset ?>

这是上面代码中的样子:

<ul class="wsubcategs">
<?php
$wsubargs = array(
    'hierarchical' => 1,
    'show_option_none' => '',
    'hide_empty' => 0,
    'parent' => $category->term_id,
    'taxonomy' => 'product_cat'
);
$wsubcats = get_categories($wsubargs);
foreach ($wsubcats as $wsc):
?>
    <li>
        <a href="<?php echo get_term_link( $wsc->slug, $wsc->taxonomy );?>"><?php echo $wsc->name;?></a>
        <?php $subcategory_products = new WP_Query( array( 'post_type' => 'product', 'product_cat' => $wsc->slug ) );
            if($subcategory_products->have_posts()):?>
        <ul class="subcat-products">
            <?php while ( $subcategory_products->have_posts() ) : $subcategory_products->the_post(); ?>
            <li>
                <a href="<?php echo get_permalink( $subcategory_products->post->ID ) ?>">
                    <?php the_title(); ?>
                </a>
            </li>
            <?php endwhile;?>
        </ul>
    <?php endif; wp_reset_query(); // Remember to reset ?>
    </li>
<?php endforeach;?>
</ul>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取 woocommerce 子类别产品 的相关文章

  • Smarty输出空白页

    已解决 模板文件错误 我有这样的 Smarty 设置 require once smarty Smarty class php smarty new Smarty smarty gt compile dir compile dir smar
  • WooCommerce 使用 AJAX 设置购物车数量?

    我已经为此绞尽脑汁好几天了 需要一些指导 我正在为 WooCommerce 网站完全从头开始制作自定义主题 现在我正在尝试让购物车功能正常工作 我一直试图使用按钮 来更新购物车中产品的数量 对我来说问题似乎是WC 我在functions p
  • .htaccess 异常导致主目录出现问题

    这是我的目录结构 localhost or livehost app bootstrap public vendor code demo 这是我的 htaccess
  • 如何使用 Facebook SDK API 为页面/网址“点赞”?

    我正在使用这段代码 facebook gt api me likes post array url gt http www google com 我收到以下错误 Fatal error Uncaught OAuthException 200
  • zip 文件的校验和

    我目前正在开发一个工具 它上传一组文件 然后使用 md5 校验和将文件与上一批上传的文件进行比较 并告诉您哪些文件已更改 对于常规文件 这工作正常 但某些上传的文件是 zip 存档 即使其中的文件相同 它们几乎总是会发生变化 有没有一种方法
  • 在 Laravel 5 中截断表

    描述 我有一个充满测试数据的表 有时 我想清除它以获取新数据 我可以在 DBMS 应用程序中执行截断 例如MySQL 工作台 但我试图在我的应用程序中实现它 Goal 创建一个按钮 单击时截断数据库中的表 这是我的步骤 1 声明一条路线 R
  • 通过 facebook graph API 检索 facebook 用户的邮政编码

    我正在尝试使用 facebook graph API 检索用户的邮政编码 我正在使用以下代码 代码在php ini中 facebook new Facebook array appId gt APP ID secret gt APP SEC
  • 如何阻止直接访问我的 JavaScript 文件?

    我使用 Minify 来缩小并缓存所有脚本请求 我只希望我的用户能够访问 JavaScript 文件的缩小版本 缩小位于www example com min我的脚本位于www example com scripts 如何阻止直接访问doc
  • 如何在 PHP 中使用 cURL 发出同时包含 GET 和 POST 参数的请求?

    其他人已经问过如何从 perl java bash 等执行此操作 但我需要在 PHP 中执行此操作 并且我没有看到任何已提出的专门与 PHP 相关的问题 或包含 PHP 的答案 My code ch curl init url curl s
  • Magento - 检查 cms 页面

    我想通过 php 检查页面是否是 Magento 中的 cms page 我需要不同的 cms 页面面包屑 所以我尝试在一个条件下做到这一点 但我不知道如何或在哪里查看 到目前为止 这是我的 breadcrumbs phtml p some
  • WordPress 分页自定义帖子类型

    我有一个名为 新闻 的页面 使用页面模板page newslist php 它应该显示来自自定义帖子类型 也称为新闻 的帖子 我意识到两者具有相同的名称会导致问题 因此在注册自定义帖子类型时 我进行了重写以将其与页面区分开来 rewrite
  • fgetcsv 在特定行打开?

    有没有办法使用 fgetcsv 在特定行上打开 我有一个非常大的 csv 想通过 ajax 一次运行大约 100 行 我可以轻松停止 while 循环 但如何在特定行上打开 或者这是不可能的 从第 100 行开始读取没有简单的方法 但您可以
  • MySQL PHP邮政编码比较具体距离

    我试图找出比较一个邮政编码 用户提供的 和一大堆其他邮政编码 现在大约有 200 个邮政编码 之间的距离的最有效方法 相对于加载时间 但它会随着时间的推移而增加 我不需要任何精确的东西 只是在球场上 我下载了整个美国的邮政编码 csv 文件
  • JavaScript 验证和 PHP 验证?

    我正在使用 jquery 验证插件来验证空表单 我还应该在 PHP 中检查一下以确保 100 正确吗 或者用 javascript 验证就可以了 谢谢 您应该始终在服务器上进行验证 如果用户以某种方式不使用 Javascript 提交表单
  • Joomla 页面中的自定义 php 代码

    我正在尝试将 Joomla 1 5 9 页面中的表源从页面中的硬编码 html 更改为从 SQL 数据库获取信息 执行此操作的正确方法是什么 创建一个新的模型或组件并以某种方式在页面中使用它 我找到了这些 http docs joomla
  • 如何在 OS X 上使用 OpenSSL 1.0.1 编译 PHP 5.5.19

    我已经安装了 OpenSSL 1 0 1j usr local ssl现在我尝试使用此版本的 OpenSSL 编译 PHP 5 5 19 这是我的配置过程 export CFLAGS arch x86 64 export CXXFLAGS
  • suhosin.mt_srand.ignore 在 PHP 中一致洗牌数组的解决方法?

    我有一个 PHP 脚本 需要随机化一个具有一致结果的数组 这样它就可以向用户呈现前几个项目 然后如果他们愿意 他们可以从同一个打乱的集合中提取更多结果 我目前使用的是这个 基于我相信的 Fisher Yates 算法 function sh
  • 检查条件并通过 Zend 中的 Regex 识别 url 中的模式

    我正在实现 Zend Regex 路由 并且必须对 url 执行多次检查 例如 如果这是我的网址 http localhost application public index php module controller action 这是
  • 如何在 Zend Framework 3 中注册自定义表单视图助手

    我正在将继承的 Zend Framework 2 应用程序迁移到 Zend Framework 3 并且在注册自定义表单视图助手时遇到了一些困难 这些助手在应用程序使用版本 2 时起作用 主要用于添加标签属性以实现可访问性 例如 这是一个自
  • 检查 $_POST 数据

    我正在对表单进行一些垃圾邮件检查 下面的代码在我的本地主机上正常工作 如果为 true 则重定向到 google com 但是 当它在生产服务器上时却不起作用 执行脚本的其余部分并且不重定向到 Google com if POST SERV

随机推荐

  • JNI 在应用程序中检测到错误

    我正在使用 WordPress 中的 API 来获取我拥有的标题数量 我的代码适用于除 5 x 之外的所有 Android 版本 当我在应用程序中推送一个线程时 它不幸关闭了 我不知道Android 5版本有什么问题 有谁知道解决方案是什么
  • 如何在不选择所有节点的情况下禁用 TreeView 控件?

    我不知道这是一个错误还是什么 但如果我尝试禁用TTreeView控件 所有节点都被选中 灰显 可以采取任何措施来禁用该控件的输入而不更改选择吗 当然 节点并不是真正被选择的 它们只是视觉上选择的 但这很烦人 这就是未应用主题时禁用控件的样子
  • SQL:如何更新多个字段,以便将空字段内容移动到逻辑上的最后一列 - 丢失空白地址行

    我有三个地址行列 aline1 aline2 aline3 代表街道 地址 由于数据不一致 其中任何一个或全部都可以 空白的 我想将第一个非空白移动到addrline1 第二个非空白 到 addrline2 如果没有三个非空 行 则清除第
  • 上传到 Google Play 后,谷歌地图不显示

    我将我的应用程序上传到谷歌游戏商店 但地图不起作用 只显示白屏 我知道我必须根据发布证书指纹获取密钥 我已尝试阅读所有相关内容 并执行了以下操作 但它仍然不起作用 我从 Android Studio 创建了一个新的密钥库 带有密码 别名和密
  • 内存映射文件偏移低

    我正在用 C 和 Visual Studio 编写 Windows 程序 我必须映射一个文件而不是从它的第 750 个字节访问它 我试过 pFile char MapViewOfFile hMMap FILE MAP ALL ACCESS
  • 如何使用scrapy抓取javascript实现的多页数据

    我想用scrapy从网页中爬取数据 但是从url上看不出不同页面之间的区别 例如 上面的url是我要抓取数据的第一个页面 很容易从中获取数据 这是我的代码 author Rabbit from scrapy spiders import S
  • 使用 jQuery Mobile 的动态页面

    我已经使用 jQuery 有一段时间了 并且迈出了使用 jQuery Mobile 的第一步 我使用index html作为我的应用程序的jQuery Mobile和设计 它在加载后立即调用content php 所有页面的列表视图 中的内
  • 在 C++ 的动态内存分配(堆)中,“删除”运算符实际上是如何在幕后工作的?

    我不明白 删除 运算符在 C 中是如何在幕后实际实现的 例如 class Node int i Node left right int main Node a new Node somehow the object a is initial
  • 合并两个 Git 存储库而不破坏文件历史记录

    我需要将两个 Git 存储库合并到一个全新的第三个存储库中 我发现了许多关于如何使用子树合并来执行此操作的描述 例如雅库布 纳伦布斯基的回答 https stackoverflow com a 1426163 on 如何合并两个 Git 存
  • 跟踪视频中的眼睛瞳孔

    我正在开展一个项目 旨在追踪眼睛瞳孔 为此 我制作了一个头戴式系统来捕获眼睛的图像 硬件部分我已经完成了在软件中被击中部分 我在用opencv 请让我知道跟踪瞳孔最有效的方法是什么 霍夫圆表现不佳 之后我也尝试过HSV过滤器 这是代码和 链
  • 在 onStop 之前隐藏视图?

    当用户按下主页按钮时 调用 onStop 方法 系统会截取屏幕截图 当用户按住主页按钮 在 Android 手机上 时 可以在打开的应用程序中看到屏幕截图 我的问题是如何防止任何可以拿起手机并按住主页按钮的人看到敏感数据 想象一下 应用程序
  • 它是可调用损失函数(以函数的形式)的 TensorFlow 最佳实践吗?除了 Eager Execution 兼容性之外,还有其他优点吗?

    热切执行要求传递给任何优化器的任何损失都可以被调用 即以函数的形式 所以这没问题 def loss function return tf reduce mean tf nn sampled softmax loss weights soft
  • glibc的写入是如何工作的?

    我尝试编译一个简单的程序 名为write with nostdlib 但我收到错误 path to file 3 undefined reference to write 我想write是 Unix 的东西并且一直存在 但显然不是 事实证明
  • 解析一个数字但保留负数

    我正在尝试将数字取消格式化为其原始形式 但保留它是否为负数 堆栈溢出上的某人引导我找到了这段代码 该代码工作得非常好 但它没有保留负数 有人能帮我更好地解决这个问题吗 EDIT 对于美元货币 普通数字 Example 1 234 1234
  • 如何更新 OpenJDK 的时区信息?

    如何更新 OpenJDK 的时区信息 Oracle 推出了 tzupdater 但它受到他们的许可证的约束 所以我不想使用它 我正在寻找一个开源替代方案 它允许我只更新时区信息而不是整个 JRE Azul 最近发布了一个开源工具来更新 TZ
  • 用随机数据填充表

    我有如下两张表 区域 表 AreaKey AreaID
  • 以编程方式将 NSScrollView 滚动到右侧

    一切都在标题中 我想以编程方式滚动NSScrollView向右 这样我就可以看到文档的结尾 我试过这个 let width scrollView frame size width let height scrollView frame si
  • 无法运行“phonegap run android”,抛出异常

    我想开始使用 Phonegap 开发东西 我按照他们网站上的说明进行操作 http phonegap com install http phonegap com install 当我执行 phonegap run android 时 它给了
  • 避免PHP执行时间限制

    我需要用 PHP 语言创建一个脚本来执行数字排列 但 PHP 的执行时间限制设置为 60 秒 我怎样才能运行脚本 以便在需要运行超过60个sesunde时 不被服务器中断 我知道我可以更改 php 中的最大执行时间限制 但我想听到另一个不需
  • 获取 woocommerce 子类别产品

    我正在尝试让 woocommerce 子类别中的产品显示在主要类别下 ul class wsubcategs li a href a li ul