Come aggiungere modelli di modifica personalizzati del prodotto

Se i tuoi venditori vendono più di un tipo di prodotto, un singolo modulo prodotto raramente si adatta a tutti. Un'inserzione d'asta necessita di campi diversi da una prenotazione. Questo articolo ti mostra come aggiungere i tuoi moduli di modifica prodotto alla dashboard del venditore di WC Vendors Pro, in modo che ogni tipo di prodotto ottenga il modulo di cui ha bisogno. I modelli si trovano nei componenti sostitutivi del modello del tuo tema e WC Vendors Pro aggiunge automaticamente un pulsante per ciascuno alla schermata dei prodotti del venditore.

Prerequisiti

  • WC Vendors Pro 1.4.0 o versioni successive.
  • Un tema che puoi modificare. Usa un tema figlio in modo che i tuoi modelli sopravvivano agli aggiornamenti del tema.

Aggiungi un modello di prodotto personalizzato

  1. Crea una cartella wc-vendors/dashboard/ nel tuo tema se non esiste già.
  2. Copia il modulo prodotto predefinito al suo interno e nomina il file product-{nomepersonalizzato}.php, sostituendo {nomepersonalizzato} con il tuo nome.
  3. Aggiungi un tag Etichetta: nell'intestazione del file per impostare il testo del pulsante. Senza di esso, l'etichetta del pulsante viene generata dal nome personalizzato.

In questo esempio è stato aggiunto un nuovo file ai componenti sostitutivi del modello personalizzato del tema

  • product-mynewtemplate.php

Dove appaiono i pulsanti

Questo produrrà i seguenti pulsanti di aggiunta prodotto.

Il risultato segue questo formato di URL – /product/nomedipersonalizzato/edit. In questo caso, risulterebbe in questo – /product/mionuovomodello/edit.

Schermata prodotti della dashboard del venditore con pulsanti di aggiunta per ogni modello di prodotto personalizzato
Aggiungi pulsanti generati per ogni modello di prodotto personalizzato

Esempio di origine del modello

Questo è l'esempio del codice sorgente di questo modello.

<?php
/**
 * Use the label template tag to change the display label for your custom template
 *
 * Label: My New Template
 *
 * The template for displaying the Product edit form
 *
 * Override this template by copying it to yourtheme/wc-vendors/dashboard/
 *
 * @package    WCVendors_Pro
 * @version    1.6.2
 */
/**
 *   DO NOT EDIT ANY OF THE LINES BELOW UNLESS YOU KNOW WHAT YOU'RE DOING
 */
$title      = ( is_numeric( $object_id ) ) ? __( 'Save Changes', 'wcvendors-pro' ) : __( 'Add Product', 'wcvendors-pro' );
$page_title = ( is_numeric( $object_id ) ) ? __( 'Edit Product', 'wcvendors-pro' ) : __( 'Add Product', 'wcvendors-pro' );
$product    = ( is_numeric( $object_id ) ) ? wc_get_product( $object_id ) : null;
$post       = ( is_numeric( $object_id ) ) ? get_post( $object_id ) : null;
// Get basic information for the product
$product_title             = ( isset( $product ) && null !== $product ) ? $product->get_title() : '';
$product_description       = ( isset( $product ) && null !== $product ) ? $post->post_content : '';
$product_short_description = ( isset( $product ) && null !== $product ) ? $post->post_excerpt : '';
$post_status               = ( isset( $product ) && null !== $product ) ? $post->post_status : '';
/**
 *  Ok, You can edit the template below but be careful!
 */
?>
<h2><?php echo $page_title; ?></h2>
<?php do_action( 'wcvendors_before_product_form' ); ?>
<!-- Product Edit Form -->
<form method="post" action="" id="wcv-product-edit" class="wcv-form">
	<!-- Basic Product Details -->
	<div class="wcv-product-basic wcv-product">
		<?php do_action( 'wcv_before_product_details', $object_id ); ?>
		<!-- Product Title -->
		<?php WCVendors_Pro_Product_Form::title( $object_id, $product_title ); ?>
		<!-- Product Description -->
		<?php WCVendors_Pro_Product_Form::description( $object_id, $product_description ); ?>
		<!-- Product Short Description -->
		<?php WCVendors_Pro_Product_Form::short_description( $object_id, $product_short_description ); ?>
		<!-- Product Categories -->
		<?php WCVendors_Pro_Product_Form::categories( $object_id ); ?>
		<!-- Product Tags -->
		<?php WCVendors_Pro_Product_Form::tags( $object_id, true ); ?>
		<?php do_action( 'wcv_after_product_details', $object_id ); ?>
	</div>
	<div class="all-100">
		<?php do_action( 'wcv_before_product_media', $object_id ); ?>
		<!-- Media uploader -->
		<div class="wcv-product-media">
			<?php do_action( 'wcv_before_media', $object_id ); ?>
			<?php WCVendors_Pro_Form_helper::product_media_uploader( $object_id ); ?>
			<?php do_action( 'wcv_after_media', $object_id ); ?>
		</div>
		<?php do_action( 'wcv_after_product_media', $object_id ); ?>
	</div>
	<hr/>
	<div class="all-100">
		<?php do_action( 'wcv_before_product_type', $object_id ); ?>
		<!-- Product Type -->
		<div class="wcv-product-type">
			<?php WCVendors_Pro_Product_Form::product_type( $object_id ); ?>
		</div>
		<?php do_action( 'wcv_after_product_type', $object_id ); ?>
	</div>
	<div class="all-100">
		<div class="wcv-tabs top" data-prevent-url-change="true">
			<?php do_action( 'wcv_before_product_meta_tabs', $object_id ); ?>
			<?php WCVendors_Pro_Product_Form::product_meta_tabs(); ?>
			<?php do_action( 'wcv_before_general_tab', $object_id ); ?>
			<!-- General Product Options -->
			<div class="wcv-product-general tabs-content" id="general">
				<div class="hide_if_grouped">
					<!-- SKU  -->
					<?php WCVendors_Pro_Product_Form::sku( $object_id ); ?>
					<!-- Private listing  -->
					<?php WCVendors_Pro_Product_Form::private_listing( $object_id ); ?>
				</div>
				<div class="options_group show_if_external">
					<?php WCVendors_Pro_Product_Form::external_url( $object_id ); ?>
					<?php WCVendors_Pro_Product_Form::button_text( $object_id ); ?>
				</div>
				<div class="show_if_simple show_if_external">
					<!-- Price and Sale Price -->
					<?php WCVendors_Pro_Product_Form::prices( $object_id ); ?>
				</div>
				<div class="show_if_simple show_if_external show_if_variable">
					<!-- Tax -->
					<?php WCVendors_Pro_Product_Form::tax( $object_id ); ?>
				</div>
				<div class="show_if_downloadable" id="files_download">
					<!-- Downloadable files -->
					<?php WCVendors_Pro_Product_Form::download_files( $object_id ); ?>
					<!-- Download Limit -->
					<?php WCVendors_Pro_Product_Form::download_limit( $object_id ); ?>
					<!-- Download Expiry -->
					<?php WCVendors_Pro_Product_Form::download_expiry( $object_id ); ?>
					<!-- Download Type -->
					<?php WCVendors_Pro_Product_Form::download_type( $object_id ); ?>
				</div>
				<?php do_action( 'wcv_product_options_general_product_data', $object_id ); ?>
			</div>
			<?php do_action( 'wcv_after_general_tab', $object_id ); ?>
			<?php do_action( 'wcv_before_inventory_tab', $object_id ); ?>
			<!-- Inventory -->
			<div class="wcv-product-inventory inventory_product_data tabs-content" id="inventory">
				<?php WCVendors_Pro_Product_Form::manage_stock( $object_id ); ?>
				<?php do_action( 'wcv_product_options_stock', $object_id ); ?>
				<div class="stock_fields show_if_simple show_if_variable">
					<?php WCVendors_Pro_Product_Form::stock_qty( $object_id ); ?>
					<?php WCVendors_Pro_Product_Form::backorders( $object_id ); ?>
					<?php WCVendors_Pro_Product_Form::low_stock_threshold( $object_id ); ?>
				</div>
				<?php WCVendors_Pro_Product_Form::stock_status( $object_id ); ?>
				<div class="options_group show_if_simple show_if_variable">
					<?php WCVendors_Pro_Product_Form::sold_individually( $object_id ); ?>
				</div>
				<?php do_action( 'wcv_product_options_sold_individually', $object_id ); ?>
				<?php do_action( 'wcv_product_options_inventory_product_data', $object_id ); ?>
			</div>
			<?php do_action( 'wcv_after_inventory_tab', $object_id ); ?>
			<?php do_action( 'wcv_before_shipping_tab', $object_id ); ?>
			<!-- Shipping  -->
			<div class="wcv-product-shipping shipping_product_data tabs-content" id="shipping">
				<div class="hide_if_grouped hide_if_external">
					<!-- Shipping rates  -->
					<?php WCVendors_Pro_Product_Form::shipping_rates( $object_id ); ?>
					<!-- weight  -->
					<?php WCVendors_Pro_Product_Form::weight( $object_id ); ?>
					<!-- Dimensions -->
					<?php WCVendors_Pro_Product_Form::dimensions( $object_id ); ?>
					<?php do_action( 'wcv_product_options_dimensions', $object_id ); ?>
					<!-- shipping class -->
					<?php WCVendors_Pro_Product_Form::shipping_class( $object_id ); ?>
					<?php do_action( 'wcv_product_options_shipping', $object_id ); ?>
					<?php do_action( 'wcv_product_options_shipping_data_panel', $object_id ); ?>
				</div>
			</div>
			<?php do_action( 'wcv_after_shipping_tab', $object_id ); ?>
			<?php do_action( 'wcv_before_linked_tab', $object_id ); ?>
			<!-- Upsells and grouping -->
			<div class="wcv-product-upsells tabs-content" id="linked_product">
				<div class="show_if_grouped hide_if_external">
					<?php WCVendors_Pro_Product_Form::grouped_products( $object_id, $product ); ?>
				</div>
				<?php WCVendors_Pro_Product_Form::up_sells( $object_id ); ?>
				<div class="hide_if_grouped hide_if_external">
					<?php WCVendors_Pro_Product_Form::crosssells( $object_id ); ?>
				</div>
				<?php do_action( 'wcv_product_options_upsells_product_data' ); ?>
			</div>
			<?php do_action( 'wcv_after_linked_tab', $object_id ); ?>
			<!-- Attributes -->
			<?php do_action( 'wcv_before_attributes_tab', $object_id ); ?>
			<div class="wcv_product_attributes tabs-content" id="attributes">
				<?php WCVendors_Pro_Product_Form::product_attributes( $object_id ); ?>
				<?php do_action( 'wcv_product_options_attributes_product_data', $object_id ); ?>
			</div>
			<?php do_action( 'wcv_after_attributes_tab', $object_id ); ?>
			<!-- Variations -->
			<?php do_action( 'wcv_before_variations_tab', $object_id ); ?>
			<div class="wcv_product_variations tabs-content" id="variations">
				<?php WCVendors_Pro_Product_Form::product_variations( $object_id ); ?>
				<?php do_action( 'wcv_product_options_variations_product_data', $object_id ); ?>
			</div>
			<?php do_action( 'wcv_after_variations_tab', $object_id ); ?>
			<!-- Product SEO -->
			<?php do_action( 'wcv_before_seo_tab', $object_id ); ?>
			<div class="wcv_product_seo tabs-content" id="seo">
				<?php WCVendors_Pro_Product_Form::product_seo( $object_id ); ?>
				<?php do_action( 'wcv_product_seo_data' ); ?>
			</div>
			<?php do_action( 'wcv-after_seo_tab', $object_id ); ?>
			<?php WCVendors_Pro_Product_Form::form_data( $object_id, $post_status ); ?>
			<?php WCVendors_Pro_Product_Form::save_button( $title ); ?>
			<?php WCVendors_Pro_Product_Form::draft_button( __( 'Save Draft', 'wcvendors-pro' ) ); ?>
			<?php do_action( 'wcv_after_product_meta_tabs', $object_id ); ?>
		</div>
	</div>
</form>
<?php do_action( 'wcvendors_after_product_form' ); ?>

Serve aiuto?

Se hai una domanda o riscontri problemi, siamo qui per aiutarti.

Questo articolo è stato utile?

Articoli Correlati

Completa il tuo acquisto