我在Wordpress网站上工作,并且正在使用Woocommerce,我有很多产品类别,我想在代码中添加它们,而不是在Wordpress CMS本身中添加它们。
有人知道我如何进入代码中添加类别的代码。我到处都看过,即使在数据库中也找不到。而且我还想更改代码中的菜单,因为这样也可以减少很多工作。
感谢您的帮助。
答案 0 :(得分:2)
Woocommerce产品类别术语是WordPress自定义分类法product_cat
…
在数据库中,数据也位于表
wp_terms
,wp_term_taxonomy
,wp_termmeta
和wp_term_relationships
下。
1)要以编程方式添加新的产品类别术语,您将使用专用的WordPress功能wp_insert_term()
,例如:
// Adding the new product category as a child of an existing term (Optional)
$parent_term = term_exists( 'fruits', 'product_cat' ); // array is returned if taxonomy is given
$term_data = wp_insert_term(
'Apple', // the term
'product_cat', // the Woocommerce product category taxonomy
array( // (optional)
'description'=> 'This is a red apple.', // (optional)
'slug' => 'apple', // optional
'parent'=> $parent_term['term_id'] // (Optional) The parent numeric term id
)
);
这将返回一个包含term Id
和术语分类法ID 的数组,例如:
array('term_id'=>12,'term_taxonomy_id'=>34)
2)菜单顺序::要设置甚至更改产品类别的菜单顺序,您将使用add_term_meta()
Wordpress功能。
您将需要产品类别的术语ID和唯一的订购数字值(例如 2
):
add_term_meta( $term_data['term_id'], 'order', 2 );
3)缩略图:您还将使用add_term_meta()
使用之类的东西将缩略图ID设置为产品类别(其中最后一个参数是数字缩略图ID引用) :
add_term_meta( $term_data['term_id'], 'thumbnail_id', 444 );
4)在产品中设置产品类别:
现在将此新产品类别“ Apple”设置为现有产品ID ,您将使用类似(带有从新创建的“ Apple”产品中生成的相应$term_id
)的名称类别):
wp_set_post_terms( $product_id, array($term_data['term_id']), 'product_cat', true );
以供参考:函数wp_set_post_terms()