首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >通过WP_Query中的自定义分类法术语值获取Woocommerce产品

通过WP_Query中的自定义分类法术语值获取Woocommerce产品
EN

Stack Overflow用户
提问于 2018-04-17 08:04:53
回答 1查看 14.8K关注 0票数 3

我正在开发一个插件,将放在我的woocommerce产品侧边栏中。我需要这一点,给定产品id/对象,它将找到2个产品,与我以前创建的自定义分类法相同。

通过这段代码,我得到了产品中使用的术语列表,其中"collane“是自定义分类法

代码语言:javascript
运行
AI代码解释
复制
get_the_term_list( $product->id, 'collane', '<div style="direction:rtl;">', '</div>', '' ); 

问题是,我不知道如何获得自定义分类法id,也不知道如何通过自定义分类法对其进行筛选。

我已经使用WP_Query找到了与此代码相同类别的产品:

代码语言:javascript
运行
AI代码解释
复制
$args = array(
'post_type'             => 'product',
'post_status'           => 'publish',
'ignore_sticky_posts'   => 1,
'posts_per_page'        => $atts['limit'],
'tax_query'             => array(
    array(
        'taxonomy'      => 'product_cat',
        'field' => 'term_id', //This is optional, as it defaults to 'term_id'
        'terms'         => $cat_id,
        'operator'      => 'IN' // Possible values are 'IN', 'NOT IN', 'AND'.
    ),
    array(
        'taxonomy'      => 'product_visibility',
        'field'         => 'slug',
        'terms'         => 'exclude-from-catalog', // Possibly 'exclude-from-search' too
        'operator'      => 'NOT IN'
    )
)
);

如何更改代码以获得所需的分类法id/对象,然后在我的WP_Query中使用它?

EN

回答 1

Stack Overflow用户

发布于 2018-04-17 16:32:32

您应该尝试下面的WP_Query $args,它将允许从与当前产品相同的术语相同的"collane“自定义分类法中获得另外两个产品。

我使用wp_get_post_terms() WordPress函数从特定的自定义分类法中获取post中的术语in (此处为“产品”自定义post类型)。

守则:

代码语言:javascript
运行
AI代码解释
复制
$taxonomy = 'collane'; // The targeted custom taxonomy

// Get the terms IDs for the current product related to 'collane' custom taxonomy
$term_ids = wp_get_post_terms( get_the_id(), $taxonomy, array('fields' => 'ids') ); // array

$query = new WP_Query( $args = array(
    'post_type'             => 'product',
    'post_status'           => 'publish',
    'ignore_sticky_posts'   => 1,
    'posts_per_page'        => 2, // Limit: two products
    'post__not_in'          => array( get_the_id() ), // Excluding current product
    'tax_query'             => array( array(
        'taxonomy'      => $taxonomy,
        'field'         => 'term_id', // can be 'term_id', 'slug' or 'name'
        'terms'         => $term_ids,
    ), ),
);

// Test count post output
echo '<p>Posts count: ' . $query->post_count . '</p>';

// The WP_Query loop
if ( $query->have_posts() ): 
    while( $query->have_posts() ): 
        $query->the_post();

        // Test output
        echo '<p>' . $query->post->post_title . ' (' . $query->post->ID . ')</p>';

    endwhile;
    wp_reset_postdata();
endif;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49882763

复制
相关文章
woocommerce根据标题获取相关产品
  我们知道woocommerce的相关文章是根据分类category或标签tag来获取的,能不能实现根据标题来调取相关产品呢?get_posts() 函数可以根据库存、价格、自定义项、搜索条件等不同的标准来显示不同的相关产品,如何操作呢?随ytkah一起来看看
ytkah
2019/12/19
1.6K0
通过jQuery获取页面中radio选中的值
<tr> <td class="tdtext" colspan="3">2、廉洁自律,不利用岗位职权方便谋取私利。</td> <td class="trss"><input name="radio17" type="radio" value="5" required/></td> <td class="trss"><input name="radio17" type="radio" value="4" /></td> <td class="trss"><input name=
SingYi
2022/07/13
5.7K0
通过jQuery获取页面中radio选中的值
自定义WooCommerce分类每页产品数量
WooCommerce分类页默认显示为10个产品,但不同的模板显示样式不同,比如3列,那么最后一行就只有一个产品了,不是很协调,如果想要显示显示更多或更少要如何调整呢?要把如下代码copy到你主题functions.php文件中即可。
ytkah
2019/09/25
1.7K0
WordPress自定义查询WP_Query使用方法大全
  自定义调用文章在网站建设中很常用,wordpress也很人性化,用新建查询new WP_Query就能实现相关功能。WP_Query怎么用呢?随ytkah一起来看看吧
ytkah
2019/12/25
4.4K0
WordPress自定义查询:WP_Query的使用
wordpress默认会根据网址调用数据,不能满足我们所有建站要求,而WP_Query可以用于查询任何你想要的内容,相当于自定义数据调用。
青梅煮码
2023/01/16
1.5K0
一文说透WordPress的自定义文章类型
从2004年的1.0版本算起,WordPress在14年间已经迭代开发到了5.x版。如果说这中间哪个版本是一个质的提升的话,那应该算是2010年发布的代号为Thelonious 的 3.0版。这个版本发布了很多重要的功能,比如多站点、主题API等等,其中一个就是 Custom Post Type(自定义文章类型)。
丘壑
2019/04/18
1.9K0
一文说透WordPress的自定义文章类型
获取listbox中的值
List<string> list=new List<string>();             for (int i = 0; i < lbLog.Items.Count - 1; i++)             {                 list.Add(lbLog.Items[i].ToString());             }
2018/09/03
6.3K0
java @interface自定义注解和通过反射获取注解属性值
@interface用来声明一个注解,其中的每一个方法实际上是声明了一个配置参数。  方法的名称就是参数的名称,返回值类型就是参数的类型  参数类型只能是基本类型、Class、String、enum。  可以通过default来声明参数的默认值。  Java注解就是一种特殊的接口,使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口,因此在自定义注解时不能继承其他的注解或者接口。
用户7886150
2020/12/03
4K0
wordpress 学习笔记 (二)
例子: [is_archive] => 1 归档类页面 [is_catgory] => 1 分类目录的页面
青梅煮码
2023/01/16
9830
Js通过值获取索引下标
var list = [1, 2, 3, 4, 5, 6, 7, 8] var index = list.map(item => item).indexOf(8) console.log(index) //7 var array = [{ name: "aa" }, { name: "bb" }, { name: "cc" }, { name: "dd" }, {
明知山
2020/09/03
11.8K0
woocommerce shortcode短代码调用
WooCommerce配备了很多shortcode短代码(简码),可以直接在post帖子和page页面内插入内容,方便展示产品、分类等。比如直接在文章编辑时直接插入[products],或者在php文
ytkah
2023/03/14
11.4K0
woocommerce shortcode短代码调用
woocommerce分类页产品数量修改
  我们用woocommerce建商城,不同的模板分类页产品数量不同,如果想要显示更多或更少的数量要如何修改呢?很简单,一行代码就能搞定!打开当前主题的function.php文件,加入如下代码,把18改为任意您想要展示的数量,一般设为15到25,设置太多需要下拉屏幕太长,设置太少需要翻页的次数变多,可以根据实际需要修改
ytkah
2019/10/08
1.3K0
获取GridView中的某列值
    protected void GridView1_RowEditing(object sen
Java架构师必看
2021/03/22
10.5K0
封装获取URL中params的值
utils const str = "http:www.baidu.com?name=swt&age=80&heigth=200" function get(key) { //获取?位置的索引
peng_tianyu
2022/12/15
3.1K0
Java Map通过值来获取键的正确姿势
本文将展示3种,Java中通过Map的值获取其键的方式。本文将讨论不同方法的优缺点。如果想学习Map的更多内容,参见The Java HashMap Under the Hood 
明明如月学长
2021/08/27
5.7K0
Thymeleaf 获取model中的值和JS获取Model中的数据
1:Thymeleaf 获取model中的值 访问model中的数据 //通过“${}”访问model中的属性
王小婷
2021/06/21
24.5K0
Thymeleaf 获取model中的值和JS获取Model中的数据
产品经理必懂的技术术语
产品经理在实际工作中经常会遇到一些“技术黑话”,这些技术语言让非技术背景的产品经理们经常不知所云,带来了一些沟通和理解的问题,这里梳理了一些但不全的技术术语,以比较通俗的方式来解释和介绍,希望对于非技术背景的产品经理们有所帮助。
宇相
2018/12/24
8350
产品经理必懂的技术术语
pageadmin CMS教程:模板中获取自定义文件的url节点值
我们通过*Route.config配置自定义文件时,模板中可能会用到url中的一些节点,下面这段配置一个自定义搜索页面
Almost Lover
2019/04/04
1.4K0
Typecho教程 - 获取模板自定义字段值
在Typecho很多模板都要通过设置自定义字段来实现文章缩略图或者其他功能,但是我们在二次开发或者开发插件时,并没有一个接口来实现获取自定义字段,所以便有了我今天的想法。
用砖头敲代码
2022/08/30
1.6K0
js获取数组中的最大值最小值
遍历方法: var tmp = [1,12,8,5]; var max = tmp[0]; for(var i=1;i<tmp.length;i++){ if(max<tmp[i])max=tmp[i]; } console.log(max); 使用apply方法: var a = [1,2,3,5]; console.log(Math.max.apply(null, a));//最大值 console.log(Math.min.apply(null, a));//最小值 多维数组可以这
deepcc
2018/05/16
36.7K0

相似问题

如何从WooCommerce产品属性分类法中获取术语?

11

获取WP_Query中当前产品类别术语Id中的所有Woocommerce产品

32

显示WooCommerce产品属性的自定义分类法术语图像

11

在WooCommerce产品中添加分类法术语

11

按产品ID获取产品自定义分类法术语

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文