• プラグイン一覧
    - WCEX Item Combo Set
    - WCEX Amazon Pay
    - WCEX Wishlist お気に入りリスト
  • リリース情報
  • お役立ちコラム
  • お問い合わせ
  • サポート
    • よくある質問
      • WCEX Amazon Pay
      • WCEX Wishlist お気に入りリスト
      • wcex-item-combo-set
    • リファレンス
      • WCEX Amazon Pay
      • WCEX Wishlist お気に入りリスト
      • wcex-item-combo-set
新規会員登録
ログイン
新規会員登録
ログイン
カート
  • プラグイン一覧
    • - WCEX Item Combo Set
    • - WCEX Amazon Pay
    • - WCEX Wishlist お気に入りリスト
  • リリース情報
  • お役立ちコラム
  • サポート
    • - よくある質問
      • - WCEX Amazon Pay
      • - WCEX Wishlist お気に入りリスト
      • - wcex-item-combo-set
    • - リファレンス
      • - WCEX Amazon Pay
      • - WCEX Wishlist お気に入りリスト
      • - wcex-item-combo-set
  • お問い合わせ
Aivec APPs > wcex-item-combo-set > クラス > OrderEdit
レファレンス
バージョン
1.0.6
絞り込み:

目次

  • ソース
  • 関数

フック

  • アクション
  • フィルター

ファンクション

    クラス

    OrderEdit

    受注編集ページ save actions

    ソース #ソース

    ファイル: src/Admin/OrderEdit.php

    class OrderEdit
    {
        /**
         * Registers hooks
         *
         * @author Evan D Shaw <evandanielshaw@gmail.com>
         * @return void
         */
        public static function init() {
            add_action('usces_pre_update_orderdata', [get_class(), 'updateGroupItemOrderCartOptionData']);
        }
    
        /**
         * Updates group item order cart option data, if necessary
         *
         * @author Evan D Shaw <evandanielshaw@gmail.com>
         * @return void
         */
        public static function updateGroupItemOrderCartOptionData() {
            global $wpdb;
    
            if (!isset($_POST['wcexicsGroupItemOption'])) {
                return;
            }
    
            $cart_table = Schema::getComboSetGroupItemsOrderCartTable();
            $cart_meta_table = Schema::getComboSetGroupItemsOrderCartMetaTable();
            foreach ((array)$_POST['wcexicsGroupItemOption'] as $cartmeta_id => $value) {
                $ordercart_metas = $wpdb->get_row(
                    $wpdb->prepare("SELECT * FROM {$cart_meta_table} WHERE cartmeta_id = %d", (int)$cartmeta_id),
                    ARRAY_A
                );
                if (empty($ordercart_metas)) {
                    continue;
                }
                $post_id = (int)$wpdb->get_var(
                    $wpdb->prepare("SELECT post_id FROM {$cart_table} WHERE cart_id = %d", (int)$ordercart_metas['cart_id'])
                );
                if (empty($post_id)) {
                    continue;
                }
    
                $option_fields = usces_get_opts($post_id, 'name');
                $means = $option_fields[$ordercart_metas['meta_key']]['means'];
                if (is_array($value)) {
                    $opval = [];
                    if (4 == $means) {
                        foreach ($value as $v) {
                            $opval[] = urldecode($v);
                        }
                    } else {
                        foreach ($value as $v) {
                            $opval[$v] = urldecode($v);
                        }
                    }
                    $value = serialize($opval);
                } else {
                    if (3 == $means) {
                        $value = urldecode($value);
                    }
                }
    
                $wpdb->query($wpdb->prepare(
                    "UPDATE $cart_meta_table SET meta_value = %s WHERE cartmeta_id = %d",
                    $value,
                    $cartmeta_id
                ));
            }
        }
    }
    

    ソースを伸ばす ソースを縮める


    関数 #関数

    Top ↑

    • init — Registers hooks
    • updateGroupItemOrderCartOptionData — Updates group item order cart option data, if necessary

    • 新規会員登録
    • ログイン
      • プラグイン一覧
      • 会社概要
      • リリース情報
      • よくある質問
      • お役立ちコラム
      • お問い合わせ
      • 個人情報保護方針
      • 特定商取引法に基づく表記
      • 情報セキュリティ基本方針
      • 利用規約

    アイベック合同会社は「Welcart」「Amazon Pay」の公式パートナーです。

    ※Amazon、Amazon.co.jp、Amazon Payおよびそれらのロゴは、Amazon.com,inc.またはその関連会社の商標です。

    © 2025 Aivec llc All Rights Reserved.