Cómo personalizar un formulario de registro de proveedores en Dokan
Publicado: 2022-03-10Necesita un formulario de registro de proveedor para su mercado de comercio electrónico. Con un proceso de registro sin inconvenientes, se espera que más proveedores se registren en su sitio y le permite hacer más negocios. Afortunadamente, Dokan tiene un formulario de registro de proveedores optimizado de aspecto inteligente para que los proveedores puedan registrarse fácilmente en su mercado y comenzar a vender.
Sin embargo, todos los mercados no funcionan de la misma manera. Para mantener las normas y reglamentos de su región, algunos mercados desean registrar a los proveedores con su número de IMPUESTOS y GST, así como otra información. Con Dokan, puede personalizar fácilmente el formulario de registro de proveedor predeterminado de acuerdo con sus necesidades.
Hoy repasaremos el proceso de agregar campos adicionales a su formulario de registro de proveedor .
Como beneficio adicional, también conocerá:
- Cómo crear un formulario de registro separado para proveedores
- Cómo mostrar el nombre del proveedor en la página de un solo producto.
Vamos a hacerlo, ¿de acuerdo?
Cómo agregar campos adicionales a su formulario de registro de proveedor
Para agregar campos adicionales al complemento de registro de WordPress, debe seguir los pasos a continuación. Vamos a repasarlos y asegurarnos de que los sigas al pie de la letra.
- Paso 1: Crea un tema hijo
- Paso 2: cree una carpeta llamada "global" en el tema secundario
- Paso 3: use el código de personalización para agregar un campo adicional
- Paso 4: guarde el valor del campo agregado en el backend.
Entremos en los detalles.
Paso 1: crea un tema secundario
Cuando busca hacer ajustes a los archivos de su tema, necesita crear un tema secundario. Le ayuda a mantener el diseño y los códigos del tema principal mientras modifica los archivos. Para realizar cambios en el formulario de registro que forma parte del tema, primero debe crear un tema secundario.
Crear un tema hijo es muy fácil. Puedes seguir este artículo para crear un tema hijo. También encontrará complementos en el repositorio de WordPress para crear un tema secundario.
Paso 2: cree una carpeta llamada "Global" en el tema secundario
A continuación, debe crear una carpeta llamada Dokan en su tema secundario. Luego, debe crear otra carpeta en la carpeta Dokan con el nombre " global ". Ahora, copie el archivo seller-registration-form.php de su carpeta wp-content/plugins/dokan-lite/templates/global y péguelo en el tema de su hijo como se muestra a continuación:
Paso 3: use el código de personalización para crear campos adicionales
Debe agregar el código de personalización en el archivo de registro. Abra el archivo seller-registration-form.php de la carpeta del tema secundario y copie el código de abajo-
<p class="form-row form-group form-row-wide"> <label for="shop-phone"><?php esc_html_e( 'GST Number', 'dokan-custom-codes' ); ?><span class="required">*</span></label> <input type="text" class="input-text form-control" name="gst_id" value="<?php if ( ! empty( $postdata['gst_id'] ) ) echo esc_attr($postdata['gst_id']); ?>" required="required" /> </p>
El código anterior agregará un campo de número GST en el formulario de registro del proveedor. Puede ver el campo recién agregado a continuación:
Paso 4: guarde el valor del campo agregado en el backend
Ha agregado un nuevo campo, pero para usar esos datos, debe guardar el contenido de ese campo. Para guardar los datos en el backend y mostrarlos en el perfil de usuario del backend, abra su archivo functions.php y copie el código a continuación:
function dokan_custom_seller_registration_required_fields( $required_fields ) { $required_fields['gst_id'] = __( 'Please enter your GST number', 'dokan-custom' ); return $required_fields; }; add_filter( 'dokan_seller_registration_required_fields', 'dokan_custom_seller_registration_required_fields' ); function dokan_custom_new_seller_created( $vendor_id, $dokan_settings ) { $post_data = wp_unslash( $_POST ); $gst_id = $post_data['gst_id']; update_user_meta( $vendor_id, 'dokan_custom_gst_id', $gst_id ); } add_action( 'dokan_new_seller_created', 'dokan_custom_new_seller_created', 10, 2 ); /* Add custom profile fields (call in theme : echo $curauth->fieldname;) */ add_action( 'dokan_seller_meta_fields', 'my_show_extra_profile_fields' ); function my_show_extra_profile_fields( $user ) { ?> <?php if ( ! current_user_can( 'manage_woocommerce' ) ) { return; } if ( ! user_can( $user, 'dokandar' ) ) { return; } $gst = get_user_meta( $user->ID, 'dokan_custom_gst_id', true ); ?> <tr> <th><?php esc_html_e( 'Gst Number', 'dokan-lite' ); ?></th> <td> <input type="text" name="gst_id" class="regular-text" value="<?php echo esc_attr($gst); ?>"/> </td> </tr> <?php } add_action( 'personal_options_update', 'my_save_extra_profile_fields' ); add_action( 'edit_user_profile_update', 'my_save_extra_profile_fields' ); function my_save_extra_profile_fields( $user_id ) { if ( ! current_user_can( 'manage_woocommerce' ) ) { return; } update_usermeta( $user_id, 'dokan_custom_gst_id', $_POST['gst_id'] ); }
Si desea cambiar el nombre del campo o la clave meta, debe cambiar la clave meta o el nombre del campo en consecuencia en cada lugar. En este código, hemos usado la clave meta para el campo como dokan_custom_gst_id y usamos la identificación del campo como gst_id
Después de guardar el código anterior, podrá usar el número GST del proveedor en su perfil de usuario:
Así es como puede agregar campos adicionales al formulario de registro de proveedor predeterminado.
Leer más: Cree asombrosos formularios de registro personalizables para Dokan.
Ahora, veamos cómo puede crear un formulario de registro de proveedor independiente en el mercado.
Crear un formulario de registro de proveedor separado para proveedores
Los propietarios del mercado utilizan la página "Mi cuenta de WooCommerce" para registrar tanto a clientes como a proveedores. Sin embargo, hemos recibido solicitudes de algunos de los propietarios del mercado de que quieren un registro separado para los proveedores en lugar de mostrarlo en una sola página.
Porque no quieren cargar al cliente con la carga de los campos del formulario de registro de proveedores mientras no se está registrando como proveedor.
Para crear un formulario de registro separado en Dokan, no necesita usar ningún código. Puede usar el código abreviado del formulario de registro de Dokan y colocar ese código abreviado en una nueva página para crear una página de registro individual.
Veamos los pasos para obtener una imagen más clara.
- Cree una nueva página y asigne un título "Registro de proveedor"
- Use Dokan Shortcode para crear un formulario de registro
- Publica tu página.
Paso 1: Crear una nueva página
Como está buscando crear una página separada para el registro, necesita crear una nueva página. Para crear una página, vaya a WP-Admin-> Páginas–> Agregar nuevo . Asigne un título de página "Registro de proveedores".
Paso 2: agregue el código abreviado de Dokan
Dokan proporciona un conjunto de códigos abreviados que puede usar para crear paneles de proveedores, listas de tiendas, productos más vendidos, etc. Haga clic en el ícono "+" y escriba "Dokan Shortcode". Luego encontrará todos los códigos cortos de Dokan enumerados maravillosamente.
Elija el código abreviado " Formulario de registro de proveedor " y agréguelo a su página.
Paso 3: publique su nueva página de registro de proveedor
Después de agregar el código abreviado, guarde su página. ¡Estás listo! Ahora todo lo que necesita hacer es publicar su página y verá la página de registro de proveedores en el menú.
Por lo tanto, se crea su página de registro individual.
Nota : Para deshabilitar el registro de proveedores desde la página de mi cuenta , asegúrese de desmarcar la opción "Cualquiera puede registrarse" en WP-Admin–> Configuración–> General .
Entonces, así es como puede personalizar el formulario de registro para su mercado de múltiples proveedores. Pero espera, el artículo no ha terminado. Tenemos otro truco para mostrarte.
Puedes ver este video,
Bonificación: cómo mostrar el nombre de los proveedores en la página de un solo producto
Hay varias formas de promocionar a un proveedor en su mercado para aumentar la popularidad de su sitio web. Uno de ellos muestra el nombre del proveedor en la página de un solo producto. Hay una pestaña llamada "Información del proveedor" para mostrar la dirección del proveedor, el correo electrónico, etc. en la página del producto único.
Puede agregar el nombre del proveedor en esa pestaña para que los clientes puedan conocer el nombre del propietario original. Abra sus funciones de tema infantil. php y agregue el siguiente código:
add_action( 'woocommerce_single_product_summary', 'seller_name_on_single', 11 ); function seller_name_on_single(){ global $product; $seller = get_post_field( 'post_author', $product->get_id()); $author = get_user_by( 'id', $seller ); $store_info = dokan_get_store_info( $author->ID ); if ( !empty( $store_info['store_name'] ) ) { ?> <span class="details"> <?php printf( 'Sold by: <a href="%s">%s</a>', dokan_get_store_url( $author->ID ), $author->display_name ); ?> </span> <?php }
Mostrará la etiqueta Vendido por en la página de un solo producto como la imagen a continuación:
Sin embargo, si desea mostrar el nombre de la tienda en lugar del nombre del proveedor, use el siguiente código,
/*Show store name on single product*/ add_action( 'woocommerce_single_product_summary', 'seller_name_on_single', 12 ); function seller_name_on_single(){ global $product; $seller = get_post_field( 'post_author', $product->get_id()); $author = get_user_by( 'id', $seller ); $vendor = dokan()->vendor->get( $seller ); $store_info = dokan_get_store_info( $author->ID ); if ( !empty( $store_info['store_name'] ) ) { ?> <span class="details"> <?php printf( 'Sold by: <a href="%s">%s</a>', $vendor->get_shop_url(), $vendor->get_shop_name() ); ?> </span> <?php }
Si ha creado su página de producto único con Elementor, entonces necesita usar el siguiente código,
/** * Show sold by on single product page made with Elementor * Add the shortcode [dokan_vendor_name] through a short-code widget on single product page */ add_shortcode( 'dokan_vendor_name', 'dokan_store_name_shortcode' ); function dokan_store_name_shortcode() { $seller = get_post_field( 'post_author' ); $author = get_user_by( 'id', $seller ); $vendor = dokan()->vendor->get( $seller ); $store_info = dokan_get_store_info( $author->ID ); if ( !empty( $store_info['store_name'] ) ) { ?> <span class="details"> <?php printf( 'Sold by: <a href="%s">%s</a>', $vendor->get_shop_url(), $vendor->get_shop_name() ); ?> </span> <?php
Simplemente agregue el código en su tema secundario functions.php y use el código corto [dokan_vendor_name] a través del widget de código corto en una sola página de producto.
Así es como puede mostrar el nombre del proveedor o de la tienda en la página de un solo producto. Ahora tiene una idea clara de cómo agregar campos adicionales al complemento de registro de WordPress.
Personalice el formulario de registro de proveedores de Dokan e invite a más proveedores a su mercado
Entonces, estamos al final de nuestra publicación de tutorial y, con suerte, ahora sabe cómo:
- Agregue campos adicionales al formulario de registro de proveedores
- Cree una página de registro separada para proveedores
- Muestre el nombre del proveedor original en la página del producto individual.
Como WordPress es un software de código abierto, hay muchas posibilidades de personalización. Si juega sus cartas correctamente, puede obtener el resultado deseado de su sitio web. Y si usted es propietario de un mercado, las personalizaciones anteriores ayudarán a su causa.
¿Tiene más consultas para agregar campos adicionales al complemento de registro de WordPress? Si tiene algún problema, no olvide comunicarse con nosotros en la sección de comentarios.