Докан Плагин Настройка - PullRequest
0 голосов
/ 06 июня 2018

Я использую плагин Dokan для веб-сайта мультивендора.Я хочу добавить дополнительное поле на странице настроек продавца dokan.Я использую это

add_filter( 'dokan_settings_form_bottom', 'extra_fields', 10, 2);


function extra_fields( $current_user, $profile_info ){


$seller_url= isset( $profile_info['seller_url'] ) ? 
$profile_info['seller_url'] : '';?>

    <label class="dokan-w3 dokan-control-label" for="setting_address">

        <?php _e( 'Website', 'dokan' ); ?>

    </label>

    <div class="dokan-w5">

        <input type="text" class="dokan-form-control input-md valid" name="seller_url" id="reg_seller_url" value="<?php echo $seller_url; ?>" />

    </div>

</div>



<?php }
//save the field value


add_action( 'dokan_store_profile_saved', 'save_extra_fields', 15 );

function save_extra_fields( $store_id ) {

if ( isset( $_POST['seller_url'] ) ) {

    $dokan_settings = dokan_get_store_info($store_id);

    $dokan_settings['seller_url'] = $_POST['seller_url'];

}

update_user_meta( $store_id, 'dokan_profile_settings', $dokan_settings 
 );

  }

Но когда я использую это, я не могу обновить способ оплаты. Пожалуйста, помогите мне

Спасибо

Ответы [ 2 ]

0 голосов
/ 21 июня 2018

Вы можете попробовать этот способ сохранить значение поля, и это должно решить вашу проблему -

add_action( 'dokan_store_profile_saved', 'save_extra_fields', 15 );

function save_extra_fields( $store_id ) {
    $dokan_settings = dokan_get_store_info($store_id);
    if ( isset( $_POST['seller_url'] ) ) {
    $dokan_settings['seller_url'] = $_POST['seller_url'];
}
 update_user_meta( $store_id, 'dokan_profile_settings', $dokan_settings );

}

Если кодработает то надеюсь вы пометите эту тему как разрешенную!

0 голосов
/ 20 июня 2018

Я попробовал этот код - https://gist.github.com/nayemDevs/b629d4b1c27c794bdfb729ce6927069e#file-extra-field-php, и он работает для меня.Однако я проверил темы Dokan и Hestia pro.Вы проверили, есть ли конфликт темы или нет?

...