Woocommerce でこのコードを使用してバリエーション価格を表示していましたが、Woocommerce 2.0 に更新したときに、製品を編集するたびに wp-admin/error-log にデータベース エラーが表示されることに気付きました。2.0 に更新する前にエラーが発生していたかどうかはわかりません。更新のずっと前から Woocommerce を使用しておらず、今日までエラー ログを確認していなかったと思います。
バリエーションの価格は期待どおりに表示されましたが、編集のために製品を開くたびに、エラー ログが次のエラーでいっぱいになりました。編集中の商品に関連するすべてのバリエーションにエラーがありました。
WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 8 for query SELECT postmeta.post_id AS product_id
FROM wp_postmeta AS postmeta
LEFT JOIN wp_posts AS products ON (
products.ID = postmeta.post_id )
WHERE postmeta.meta_key LIKE 'attribute_%'
AND postmeta.meta_value = '12'
AND products.post_parent = made by
include('wp-admin/edit-form-advanced.php'), do_meta_boxes, call_user_func, woocommerce_product_data_box, do_action('woocommerce_product_write_panels'), call_user_func_array, variable_product_type_options, include('/plugins/woocommerce/admin/post-types/writepanels/variation-admin-html.php'), apply_filters('woocommerce_variation_option_name'), call_user_func_array, display_price_in_variation_option_name
あなたのコードの次の行を変更しました: AND products.post_parent = $product->id"; これに AND products.post_parent = '$product->id' ";
これでエラーはなくなりました。エラーログはきれいで空のままです。
他の誰かが問題に遭遇した場合に備えて共有したかっただけです。