Этот вопрос уже задавался здесь Как добавить пользовательские мета-поля в Dokan в новом продукте
Но никто не ответил на этот вопрос. Я пытаюсь достичь следующего:
Необходимо отобразить настраиваемое поле в Dokan Vendor Dashboard, у автора плагина есть ответ с этим «Вам нужно настроить плагин Dokan, чтобы добавить дополнительное поле в форму загрузки продукта. Пожалуйста, откройте dokan-lite / templates / products / new-product.php, и в этом файле вы должны добавить дополнительное поле. оказывать поддержку по настройке нашего плагина по этой причине, я не могу предоставить более конкретные инструкции 🙂 «
Я создал настраиваемое поле, уже используя плагин Fields Factory, и оно прекрасно отображается на странице «Добавить отдельный продукт».
Но я не могу добавить это поле на скриншоте Dokan Plugin ниже для местоположения.
У него была такая же проблема, и он решил ее следующим образом.
В wp-content/plugins/dokan-pro/templates/products/product-edit.php
:
<div class="dokan-form-group">
<div class="dokan-input-group">
<span class="dokan-input-group-addon">Precio por: <?php echo get_post_meta( $post->ID, "wccaf_precio_por_", true ); ?></span>
<div class="dokan-w4">
<select class="wccaf-field " name="wccaf_precio_por_" wccaf-type="select" wccaf-pattern="mandatory" wccaf-mandatory="yes">
<option value="wccpf_none">Precio corresponde a :</option>
<option value="Caja">Caja</option>
<option value="mt2">mt2</option>
<option value="c/u">c/u</option>
<option value="Galón">Galón</option>
</select>
</div>
</div>
</div>
Затем в wp-content/themes/you-template/funtions.php
Добавь это:
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_wccaf_precio_por_ = $_POST['wccaf_precio_por_'];
if( !empty( $woocommerce_wccaf_precio_por_) )
update_post_meta( $post_id, 'wccaf_precio_por_', esc_attr( $woocommerce_wccaf_precio_por_ ) );
}
Я использую другой плагин для управления полями, который является фабрикой полей wc https://wordpress.org/plugins/wc-fields-factory/ вот почему я беру аббревиатуру wccaf_
если вы хотите настроить выбор, чтобы не использовать другой плагин, это еще одно решение, которое я основываю
https://wedevs.com/support/topic/adding-metadata-to-product-form/
Вам необходимо переопределить шаблоны плагинов DoKAN. Во-первых, вам нужно создать папку «dokan» в корне вашей активной темы, после чего вам нужно найти файл шаблона dokan в / plugins / dokan / templates /, воссоздать его в папке вашей темы и добавить дополнительное поле. После этого вам нужно сохранить новую переменную с помощью функции update_user_meta в functions.php