2017-06-04 2 views
0

Ich versuche, benutzerdefinierte Feld in woo-Commerce (nicht in Plugins) in einzelnen Produkt und variable Produkt (benutzerdefinierte Feldpreis sollte sich entsprechend der ausgewählten variablen Option ändern) als dieser Client in der Lage sein sollte zu erstellen Geben Sie den Preis ein, wie in 1 gezeigt st Bild und Kunde könnte in der Lage sein, die Option zu überprüfen.Wordpress Woocommerce benutzerdefiniertes Feld

Meine Anforderung

// 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)); 
    } 
} 

ich einige WooCommerce benutzerdefinierte Plugin versucht, aber es hat meine Forderung nicht zu lösen, wie ich 25 über benutzerdefinierte haben eingereicht scheint erstellt und Plugin zu meinem sehr langwieriger Prozess zu sein, arbeiten

Meine Ausgabe in Bild 2, die ich von Codierung für nicht als meine Anforderung bekam

Mein Ausgang

Antwort

0

Ich weiß, dass Sie in Plugins nicht interessiert sind, aber ich ACF Plugin für benutzerdefinierte Felder sehr empfehlen. Überprüfen Sie es, es spart Ihnen viel Zeit.

+0

wie ich bereits erwähnt habe ich über 25 benutzerdefinierte Feld für mehr als 100 Produkte erstellen, so wird es fruchtbar sein .... – syner

Verwandte Themen