问题描述
我有一组数据,我想用这些数据更新我的产品类别(分类)元数据。具体来说,我正在尝试更新 description
和 thumbnail url
值。我尝试使用多个 wordpress 函数,但没有一个起作用!我没有收到任何错误,但这些值也没有更新。
$row_data = array(
'Term ID' => 150,'Name' => "my 1st category",'Slug' => "my-1st-category",'Term URI' => "",'Parent Term ID' => "",'Description' => "My best description on this category that would change your life forever!",'display Type' => "",'Image' => "https://myexample.site/wp-content/"
);
// This did not work!
wp_update_term($row_data['Term ID'],'product_cat',$row_data);
// This did not work either!
update_term_Meta($row_data['Term ID'],'description',$row_data['Description']);
// This did not work either!
update_woocommerce_term_Meta($row_data['Term ID'],'thumbnail_id',$row_data['Image']);
有什么我遗漏的吗?你会帮助兄弟吗?
update_woocommerce_term_Meta
是更新缩略图 url 的正确函数吗?
谢谢。
解决方法
主要问题来自于插入或更新术语错误的数组键。
来自您的自定义数组(更新):
$row_data = array(
'Term ID' => 150,'Name' => 'my 1st category','Slug' => 'my-1st-category','Taxonomy' => 'product_cat'
'Parent Term ID' => 0,'Description' => __("My best description on this category that would change your life forever!","woocommerce"),'Display Type' => "",'Image ID' => "356",);
- 要更新术语说明,请按如下方式使用 WordPress
wp_update_term()
function:
wp_update_term( $row_data['Term ID'],$row_data['Taxonomy'],array('description' => $row_data['Description']) );
- 要更新缩略图 ID (而不是图像网址),请按如下方式使用
update_term_meta()
function:
update_term_meta( $row_data['Term ID'],'thumbnail_id',$row_data['Image ID'] );
两者都经过测试。
要插入一个新术语,您将使用 WordPress wp_insert_term()
function,例如:
$term_data = wp_insert_term( $row_data['Name'],array(
'description' => $row_data['Description'],'slug' => $row_data['Slug'],'parent' => $row_data['Parent Term ID'],) );
if ( ! empty($row_data['Display Type']) ) {
update_term_meta( $row_data['Term ID'],'display_type',$row_data['Display Type'] );
if ( ! empty($row_data['Image ID']) ) {
update_term_meta( $row_data['Term ID'],$row_data['Image ID'] );
}