web-dev-qa-db-ja.com

WoocommerceのphpMyAdminにある "default attribute"の値はどこにありますか?

私はWoocommerceの変動商品のデフォルト属性を一括削除または消去する予定です。

enter image description here 

この値をマスクリアする簡単な方法はありますか?そうでない場合は、phpMyAdminのどこでこの値を見つけることができるかを教えてもらえますか。

1
Humble Val

次のコードでデフォルト属性を変更できます。このコードは商品の完全なリストを取得し、それが大量のリソースを使うことができます

$products = wc_get_products([
    "nopaging" => TRUE, // retrieve all products
]);


foreach ($products as $p) { 

    $default_attributes = $p->get_default_attributes();

    if (    (!empty($default_attributes))
        &&  FALSE // other condition to select of which product the default attributes is reset
    ) {

        $p->set_default_attributes("");

    }


}
1
mmm

WooCommerceの可変商品のデフォルト属性は、ポストメタとしてデータベースに保存されます。これらはwp_postmetaテーブルにあります。ここで、post_id列は親商品(変数product)の投稿ID、meta_key列は_default_attributesです。

空でないすべての配列を置き換えることによって、すべての製品のデフォルト属性を消去および削除できます。

これを行うには、phpMyAdminを開き、左パネルからあなたのWordPressインストールのデータベースを選択して、SQLタブをクリックしてください。次に、以下のSQLコマンドを書いてGoを押します。

PhpMyAdminでコマンドを実行する前にデータベースをバックアップすることを忘れないでください

UPDATE `wp_postmeta` SET `meta_value`= 'a:0:{}' WHERE meta_key = '_default_attributes'
0
Yashar