2016-12-24 14 views

答えて

3

-(コード内のいくつかのタイプミスエラーを修正)

- 2を更新

ここでは、という仕事をするPHPカスタム関数があります。これは、forループを使って順番に繰り返します番号範囲。また、get_post_meta()update_post_meta()機能を使用して、オーダーの'_customer_user' met_keyを確認し、そのカスタマーID値を更新します。

この機能を実行する前に、データベースバックアップを実行します。だからここ

は、この関数のコードです:

function cristmas_bulk_editing_orders(){ 

    if(!is_admin()) return; // Will work only from Admin Backed. 
    else { 

     $new_costumer_id = 89; 

     // Iterating with a for loop through a range of numbers 
     for($order_id = 23000; $order_id <= 24000; $order_id++){ 

      // Getting the postmeta customer ID for 'order' post-type 
      $costumer_id = get_post_meta($order_id, '_customer_user', true); 

      // If it's an existing order and doesn't have already this user ID 
      // It update the customer ID 
      if(!empty($costumer_id) && $new_costumer_id != $costumer_id) 
       update_post_meta($order_id, '_customer_user', $new_costumer_id); 
     } 
    } 

} 

cristmas_bulk_editing_orders(); 

コードは、あなたのアクティブな子テーマ(アクティブテーマや任意のプラグインファイル内)のfunction.phpファイルになります。

あなたは一度だけ、この機能を使用するために、その後(下記参照)、それを削除する必要があります。


USAGE:このコードは貼り付けfunction.phpファイル、ディスプレイ上に保存したり、ブラウザ内でバックエンドから任意の管理ページをリロードしたら

今、あなたは機能をこのようにコメントして保存することができます:

// cristmas_bulk_editing_orders(); 

注文は、あなたが望むように変更、すべてこのコードを削除されていることを確認します。

コードがテストされ動作します。

+0

ご利用いただきありがとうございます。しかし、このコードをfunction.phpに追加すると、管理ページに白いページが表示されます。 – Mostafa

+1

ありがとうございました...問題解決済み。あなたのコードは完璧に動作します。 – Mostafa

+0

@LoicTheAztec素晴らしいソリューションをありがとう。素晴らしいです...しかし、私はこれがゲストの顧客からの注文のために働いていないという問題に直面しています。私はまた、私が余裕ができる賞金を払っています----- https:// stackoverflow。com/questions/46507873/assign-orders-from-guest-customers-to-specific-user – terminator

関連する問題