Обновление базы данных WooCommerce - PullRequest
1 голос
/ 23 сентября 2019

Summery (Проблема: значения в базе данных обновляются, но недоступны для чтения, Цель: добавить переменные продукты на основе большого файла JSON)

после непосредственного добавления продуктов в базу данных продукты не могут быть прочитаныс помощью пользовательского интерфейса woocommerce.

Кнопки пользовательского интерфейса по-прежнему могут изменять данные.

Даже после изменения пользовательского интерфейса значения в базе данных, он по-прежнему не читается в базе данных.

Я подозреваю, что проблема в том, что есть еще одно поле, которое мне нужно установить, чтобы пользовательский интерфейс мог получать данные.

Спасибо за любую помощь.

пользовательский интерфейсдо изменения
информация о базе данных до изменения пользовательского интерфейса
изменение пользовательского интерфейса
информация о базе данных после изменения пользовательского интерфейса

function wc_insert_term($ARGS){// needs name and slug
$table="wp_terms";
$data=array(
    //"term_id"=>"",// remove to add new
    "name"=>"test_val_0_name",
    "slug"=>"test_val_0_slug",
    "term_group"=>"0"
);
foreach($ARGS as $key => $value){
    $data[$key]=$value;
}

global $wpdb;
$wpdb->replace( $table, $data);
$id = $wpdb->insert_id;
return(array(
    "id"=>$id,
    "table"=>$table,
    "data"=>$data
));

}

function wc_insert_term_meta($ARGS){// needs term id and slug
$table="wp_termmeta";
$data=array(
    //"meta_id"=>"1",
    "term_id"=>"17",
    "meta_key"=>"order_pa_test_attr_slug",
    "meta_value"=>"0"
);
foreach($ARGS as $key => $value){
    $data[$key]=$value;
}
global $wpdb;
$wpdb->replace( $table, $data);
return(array(
    "id"=>$wpdb->insert_id,
    "table"=>$table,
    "data"=>$data
));

}

function wc_insert_term_relation($ARGS){// needs post_id and term id
$table="wp_term_relationships";
$data=array(
    //"meta_id"=>"1",
    "object_id"=>"7",// post parent id or self post id
    "term_taxonomy_id"=>"18",// term_tax id
    "term_order"=>"0"
);
foreach($ARGS as $key => $value){
    $data[$key]=$value;
}
global $wpdb;
$wpdb->replace( $table, $data);
return(array(
    "id"=>$wpdb->insert_id,
    "table"=>$table,
    "data"=>$data
));

}

function wc_insert_term_tax($ARGS){// needs term_id , slug , description
$table="wp_term_taxonomy";
$data=array(
    //"term_taxonomy_id"=>"17",
    "term_id"=>"17",
    "taxonomy"=>"pa_test_attr_slug",
    "description"=>"test_val_0_descript",
    "parent"=>"0",
    "count"=>"0"
);
foreach($ARGS as $key => $value){
    $data[$key]=$value;
}

global $wpdb;
$wpdb->replace( $table, $data);
return(array(
    "id"=>$wpdb->insert_id,
    "table"=>$table,
    "data"=>$data
));

}

function wc_assign_product_attr($ARGS){// this function assignes a term to a post
$data=array(
    "post_id"=>"0",
    "tax_id"=>"0"
);

foreach($ARGS as $key => $value){
    $data[$key]=$value;
}

$post_id=$data["post_id"];
$tax_id=$data["tax_id"];

wc_insert_term_relation(array(
    "object_id"=>"$post_id",
    "term_taxonomy_id"=>"$tax_id"
));

}

...