0
私は、単一の製品と変数の製品(カスタムフィールド価格は選択された変数のオプションに応じて変更する必要があります)でWoo-commerce(プラグインには興味がありません)でカスタムフィールドを作成しようとしています1 stのように価格を入力し、お客様がオプションを確認することができます。WordpressのWoocommerceのカスタムフィールド
マイ要件
// Display Fields
add_action('woocommerce_product_options_general_product_data', 'woocom_general_product_data_custom_field');
function woocom_general_product_data_custom_field() {
// Create a custom text field
// Text Field
woocommerce_wp_text_input(
array(
'id' => '_text_field',
'label' => __('Enter your choose', 'woocommerce'),
'placeholder' => 'Custom text field',
'desc_tip' => 'true',
'description' => __('Enter the custom value here.', 'woocommerce')
)
);
// Number Field
woocommerce_wp_text_input(
array(
'id' => '_number_field',
'label' => __('Enter your number', 'woocommerce'),
'placeholder' => '',
'description' => __('Enter the custom value here.', 'woocommerce'),
'type' => 'number',
'custom_attributes' => array(
'step' => 'any',
'min' => '15'
)
)
);
// Checkbox
woocommerce_wp_checkbox(
array(
'id' => '_checkbox',
'label' => __('Select', 'woocommerce'),
'description' => __('Check me!', 'woocommerce')
)
);
// Select
woocommerce_wp_select(
array(
'id' => '_select',
'label' => __('option', 'woocommerce'),
'options' => array(
'1' => __('Custom Option 1', 'woocommerce'),
'2' => __('Custom Option 2', 'woocommerce'),
'3' => __('Custom Option 3', 'woocommerce')
)
)
);
// Textarea
woocommerce_wp_textarea_input(
array(
'id' => '_textarea',
'label' => __('Description', 'woocommerce'),
'placeholder' => '',
'description' => __('Enter the custom value here.', 'woocommerce')
)
);
}
// Hook to save the data value from the custom fields
add_action('woocommerce_process_product_meta', 'woocom_save_general_proddata_custom_field');
add_action('woocommerce_single_product_summary', 'woocommerce_template_top_category_desc', 1);
function woocommerce_template_top_category_desc(){
$terms = get_the_terms($post->ID, 'wc-attibute-class');
if (!empty($terms)) {
$term = array_pop($terms);
$text= get_field('txt-field', $term);
if (!empty($text)) {
echo $text;
}
}
}
/** Hook callback function to save custom fields information */
function woocom_save_general_proddata_custom_field($post_id) {
// Save Text Field
$text_field = $_POST['_text_field'];
if(! empty($text_field)) {
update_post_meta($post_id, '_text_field', esc_attr($text_field));
}
// Save Number Field
$number_field = $_POST['_number_field'];
if(! empty($number_field)) {
update_post_meta($post_id, '_number_field', esc_attr($number_field));
}
// Save Textarea
$textarea = $_POST['_textarea'];
if(! empty($textarea)) {
update_post_meta($post_id, '_textarea', esc_html($textarea));
}
// Save Select
$select = $_POST['_select'];
if(! empty($select)) {
update_post_meta($post_id, '_select', esc_attr($select));
}
// Save Checkbox
$checkbox = isset($_POST['_checkbox']) ? 'yes' : 'no';
update_post_meta($post_id, '_checkbox', $checkbox);
// Save Hidden field
$hidden = $_POST['_hidden_field'];
if(! empty($hidden)) {
update_post_meta($post_id, '_hidden_field', esc_attr($hidden));
}
}
私はいくつかのwoocommerceのカスタムプラグインを試してみましたが、私は作成することが提出されたカスタムおよびプラグイン上の25は私のために非常に時間のかかるプロセスであるように思わ持っているとして、それは私の要件を解決しませんでした仕事
私は私の要件としてではないをコードからもらった私の出力は画像2であるマイ出力
私は既に私がより多くの100の製品のための25のカスタムフィールドを作成しなければならないことを言及しているので、それは実り多いでしょう.... – syner