Докан Добавить новый продукт без сохранения настраиваемого поля в бэкэнде - PullRequest
0 голосов
/ 29 мая 2020

Моя задача - добавить поле покупателя в опцию «Добавить нового продавца». Я успешно добавил это поле во внешний интерфейс tmpl-add-product-popup. php с кодом:

<!-- Novo polje: Kolicina jednog pakovanja*/ -->
                        <div class="dokan-form-group">
                            <div> Količina jednog pakovanja (neobavezno)</div>
                            <div style = "color:gray;font-size:10px;"> L - litar, ml - Mililitar, Kg - Kilogram, g - Gram</div>
                            <div class="dokan-input-group">
                                <input class="dokan-form-control" name="_new_field" id="_new_field" type="text" placeholder="Primjer: 1L ili 500g" value="<?php echo dokan_posted_input( '_new_field' ); ?>">
                            </div>
                        </div>

и измененными функциями. php:

add_action( ‘woocommerce_product_options_general_product_data’, ‘x_add_fields’ );
function x_add_fields() {

global $woocommerce, $post;

echo ‘<div class=”options_group”>’;

// Number Field
woocommerce_wp_text_input(
array(
‘id’ => ‘_new_field’,
‘label’ => __( ‘New Field’, ‘woocommerce’ ),
‘placeholder’ => ”,
‘description’ => __( ‘Primjer= 1L, 500ml, 1Kg’, ‘woocommerce’ ),
‘type’ => ‘number’,
‘custom_attributes’ => array(
‘step’ => ‘any’,
‘min’ => ‘0’
)
)
);

echo ‘</div>’;

}

// Save Fields
add_action( ‘woocommerce_process_product_meta’, ‘x_add_fields_save’ );
add_action( ‘dokan_process_product_meta’, ‘x_add_fields_save’ );
add_action( ‘dokan_new_product_added’, ‘x_add_fields_save’ );

function x_add_fields_save( $post_id ){

// Number Field
$woocommerce_new_field = $_POST[‘_new_field’];
if( !empty( $woocommerce_new_field) )
update_post_meta( $post_id, ‘_new_field’, esc_attr( $woocommerce_new_field ) );

}

Когда я попробую для публикации нового продукта это новое поле не сохраняется для продукта. Что мне здесь не хватает?

Спасибо, Деян

1 Ответ

0 голосов
/ 29 мая 2020

И почему-то это происходит только в tmpl-add-product-popup. php. Если я использую тот же logi c для нового продукта. php, он работает нормально.

...