Woocommerce 按属性名称 asc 订购产品

2024-02-19

我在 Woocommerce 中有一个包含产品的自定义页面模板,但我想按属性的术语名称 asc 订购产品。我有三个任期。我不知道正确的方法,我尝试过:

<?php
args = array(
     'post_type' => 'product',
     'posts_per_page' => 20,
     'meta_key' => 'pa_tire-type',
     'orderby'  => 'meta_value_num',
     'order'    => 'asc' 
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); 
global $product; ?>

- 更新 -

您需要添加一个tax_query对于您的产品属性及其相关术语(slugs),如下所示:

// Set HERE the attibute taxonomy slug
$taxonomy = 'pa_tire-type';

// Set HERE the term slugs for this attribute
$terms_array = array('term_slug1', 'term_slug2', 'term_slug3');

// The loop query
$loop = new WP_Query( array(
    'post_type'      => 'product',
    'posts_per_page' => 20,
    'post_status'    => 'publish',
    'tax_query'      => array( array(
            'taxonomy'  => $taxonomy,
            'field'     => 'slug',
            'terms'     =>  $terms_array,
            'operator'  => 'IN',
    ) ),
    'order_by'       => 'terms',
    'order'          => 'asc'
) );

$product_ids = array();

if ( $loop->have_posts() ): while ( $loop->have_posts() ) : $loop->the_post();
$product_ids[] = $loop->post->ID;
endwhile;

wp_reset_postdata();
endif;

// Testing output
print_pr($product_ids);

这段代码已经过测试并且可以工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Woocommerce 按属性名称 asc 订购产品 的相关文章

  • 安装失败:无法在 ubuntu 上的 WordPress nginx 中创建目录

    我在本教程的帮助下设置了 WordPress 如何在 ubuntu 18 04 上使用 LEMP 安装 WordPress https www digitalocean com community tutorials how to inst
  • 如何在 PHP 中去除字符串中的所有空格? [复制]

    这个问题在这里已经有答案了 我怎么能够strip remove all spaces of a string in PHP 我有一个string like string this is my string 输出应该是 thisismystr
  • 无法使用 javascript 建立与安全 Websocket 服务器的连接

    我的开发环境是这样的 操作系统 微软Windows 10 PHP 框架 Laravel 8 0 PHP 版本 7 4 Websocket 服务器 cboden ratchet 0 4 3 WAMP 服务器 3 2 0 Apache 2 4
  • Perl:散列 2 中数组的数值排序(施瓦茨变换)

    这实际上是该线程的后续内容 Perl 散列中数组的数字排序 https stackoverflow com questions 7914931 perl numerical sort of arrays in a hash 我无法编辑原始问
  • 如何使用WAMP登录phpMyAdmin,用户名和密码是什么?

    根 这个词是什么意思php我的管理员 http en wikipedia org wiki PhpMyAdmin 每当我写作时localhost phpmyadmin在地址栏上 我被要求输入用户名和密码 但我不知道它们是什么 我不记得何时何
  • 合并数组而不丢失键索引

    我有两个数组 Menu Navigation var array public nav top array 100 gt Dashboard 200 gt Sell 300 gt Products 400 gt History 500 gt
  • wkhtmltopdf 与 javascript-delay 不起作用

    使用下面的代码创建的 pdf 尚未完成 javascript 的渲染 因此 javascript 在一半的表格上执行 假设有 100 个表格 则有时完成 50 个表格 其他时候完成 52 54 个表格等 我正在使用旗帜 javascript
  • 开发 WordPress 管理链接重定向到实时站点

    我正在尝试对我拥有的 WordPress 网站进行新的更改 所以我复制了所有文件并导出到新的开发子域 为子域创建新数据库并从实时站点导入数据库 直播站点 http mysite com http mysite com 开发站点 http d
  • 如何设置 Zend Cache Storage 的过期时间?

    我想在 Zend 文件系统缓存中存储一 些 XML 并让它在 30 分钟后过期 如何设置缓存持续时间 过期时间 我使用 Zend 缓存作为组件 而不是在完整的 ZF2 应用程序的上下文中 cache Zend Cache StorageFa
  • 使 IPTC 数据可搜索

    我对 IPTC 元数据有疑问 是否可以通过 IPTC 元数据 关键字 搜索不在数据库中的图像并显示它们 我将如何执行此操作 我只需要一个基本的想法 我知道 PHP 有 iptcparse 函数 我已经编写了一个函数来获取画廊文件夹和所有子目
  • 预期响应代码 250,但收到代码“530”,并显示消息“530 5.7.1 需要身份验证”

    我尝试配置 SMTP 邮件时遇到此错误laravel 这是我的配置 env MAIL DRIVER smtp MAIL HOST smtp mailtrap io MAIL PORT 2525 MAIL USERNAME fff3c01db
  • 让 PHP 脚本永远循环执行队列系统中的计算作业

    目前 我有一个永远在我的服务器上运行的 perl 脚本 检查 SQS 是否有要计算的数据 该脚本已经运行了大约 6 个月 没有出现任何问题 所以 现在我想切换到 PHP 的 CLI 并让脚本永远循环在那里 主要是因为我对PHP比较熟悉 Ba
  • 拖放图像上传在服务器上不起作用

    我正在尝试实现拖放图像上传 我在网上找到了一个相当简单的脚本并适合我的使用 在我的本地安装中 文件上传得很好 但在服务器上却不行 从我的调试尝试来看 SERVER HTTP X FILENAME 甚至没有被 php 设置 我尝试了以下方法
  • 如何使用多个Auth组件?

    我使用用户模型将身份验证组件配置为 管理页面 但现在 我还想为客户端创建 配置身份验证 我尝试 重写 inialize This is in my ClientsController php public function initiali
  • WPF - 按多列排序时使用自定义比较器

    我有一个 ListView GridView 我想按 2 列排序 因此如果第 1 列中有 2 个以上的项目具有相同的值 它将按第 2 列排序 非常简单 但是在对 A Z 进行排序时 空字符串会出现在顶部 我想把它们移到底部 我制作了一个比较
  • 数据库设计 - “推”模型,或写时扇出

    背景信息 我正在尝试检索我关注的人的图像 按最新时间排序 它就像 Twitter 新闻源 显示您朋友的最新动态 Plans 目前我只需要考虑一项 那就是图像 将来我计划分析用户的行为并将他们可能喜欢的其他图像添加到他们的提要中等 http
  • 即使浏览器关闭,如何保持 PHP 会话处于活动状态?

    即使用户不小心关闭了浏览器 如何才能保持用户的会话处于活动状态 例如 Facebook 如果您登录他们的网站并关闭选项卡或浏览器 当您再次打开浏览器并访问 Facebook 时 他们会自动检测活动用户 并且不会将您重定向到登录页面 我怎么做
  • 单个返回语句与多个返回语句? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 url 中传递百分号 (%) 并使用 php 获取其准确值

    我正在尝试在 url 中传递百分号 例如 B6011000995504101 SB 但当我回声时 它又回来了 011000995504101 SB 我想要与在 URL 中传递的值完全相同的值 我尝试使用 urlencode 函数 但它给了我
  • 通过jquery ajax()和serialize()提交html表单

    我想通过 jquery ajax 提交此表单 这是我所做的 但它不起作用 即表单正在提交并刷新页面 但我没有看到响应 即在同一页面上打印数组 HTML

随机推荐