たいへん申し訳ございません。
誤って管理者からのお知らせのところに投稿してしまいました。
あらためてご質問させていただきます。
管理者様、お手数ですが、先の投稿を削除していただきますようお願いいたします。
——————————————-
WordPress のバージョン:WordPress 4.6.1
Welcart のバージョン:Version 1.9.0.1610051
ご利用のテーマ:petitgarden
症状を確認したブラウザ:firefox50.0.2
サーバー(会社名、サービス名):さくらのレンタルサーバ
SSLの利用: 利用していない
WordPress のパーマリンク設定:デフォルトから変更していない
——————————————–
お世話になります。
このフォーラムやgoogleでも検索してみたのですが、
どうしても分からなかったので、はじめて質問させていただきます。
まず、商品マスターに商品を登録する際に、
「Reserved_Date」という名前のカスタムフィールドを設定しています。
そして、商品注文時のオプションとして「使用日」(2016/12/01の形式)
をユーザーに入力してもらいます。
購入が完了したタイミングで、このオプション「使用日」の値「2016/12/01」で、
「Reserved_Date」の値を更新したいのです。
usces_action_reg_orderdata
というフックを使えばできそうだということが分かり、
add_action( ‘usces_action_reg_orderdata’, ‘usces_action_reg_orderdata_update_postmeta’ );
function usces_action_reg_orderdata_update_postmeta( $args ){
extract( $args ); //カートの中身を展開して新しい配列にする
foreach( $cart as $cartrow ){
$post_id = $cartrow[‘post_id’];
$order_id = $cart_row[‘order_id’];
$options = $cart_row[‘options’];
foreach((array)$options as $key => $value){
if( $key == ‘使用日’ ) {
$optstr = $value;
}
}
//商品マスターを書き換え
update_post_meta( $post_id, ‘Reserved_Date’, $optstr );
}
}
というコードを、テーマのfunctions.phpに追加しました。
しかし、商品を購入しても「Reserved_Date」は空白になってしまいます。
最後の
update_post_meta( $post_id, ‘Reserved_Date’, $optstr );
を、
update_post_meta( $post_id, ‘Reserved_Date’, “日付” );
とすると、「Reserved_Date」は「日付」という文字が入ります。
なので、カートの中身(オプション)の取り出し方が、間違っているのだと思うのですが、
どのようにしたらよいのか分かりません。
お忙しいところたいへん恐れ入りますが、中身の取り出し方について
教えていただきたくお願いいたします。