最合适的回答,由SO网友:BBQ. 整理而成
这是我对自己帖子的回答。我希望这对其他人也有帮助!
为了创建类别,我使用了一个数组,其中包含函数所需的每个类别的数据wp_insert_term
.
然后我通过该数组循环,并使用fetch_media
函数,该函数上载在给定给该函数的图像路径中找到的图像,并返回附件ID。
然后我打电话给wp_insert_term
函数,我将其设置为$cid
, 这样我就可以term_id
从返回的数组输出返回的值。
返回的$cid[\'term_id\']
以及$thumb_id
从获取fetch_media
函数,我可以使用update_woocommerce_term_meta
功能,并使用上载的附件更新我的缩略图。
基本fetch_media
我正在使用的函数可以在此处找到:
http://nlb-creations.com/2012/09/26/how-to-programmatically-import-media-files-to-wordpress/
我修改了它,因此不需要post\\u id,因为很明显,我的术语(类别)不是post。
$cats = array(
array(\'thumb\' => \'images/uploads/cat09.png\',\'name\' => \'Cat 9\',\'description\' => \'Cat 9 description\',\'slug\' => \'cat-9\',\'parent\' => 8),
array(\'thumb\' => \'images/uploads/cat10.png\',\'name\' => \'Cat 10\',\'description\' => \'Cat 10 description\',\'slug\' => \'cat-10\',\'parent\' => 8),
array(\'thumb\' => \'images/uploads/cat11.png\',\'name\' => \'Cat 11\',\'description\' => \'Cat 11 description\',\'slug\' => \'cat-11\',\'parent\' => 8),
);
foreach($cats as $data) {
$thumb_id = fetch_media($data[\'thumb\']);
$cid = wp_insert_term(
$data[\'name\'], // the term
\'product_cat\', // the taxonomy
array(
\'description\'=> $data[\'description\'],
\'slug\' => $data[\'slug\'],
\'parent\' => $data[\'parent\']
)
);
if(!is_wp_error($cid)){
$cat_id = isset( $cid[\'term_id\'] ) ? $cid[\'term_id\'] : 0;
update_woocommerce_term_meta( $cat_id, \'thumbnail_id\', absint( $thumb_id ) );
}
}