Come mostrare lo SKU del prodotto nella pagina prodotto

1 mar 2016, 18:02:33
Visualizzazioni: 56.7K
Voti: 6

Sto creando un sito web e sembra che lo SKU del prodotto sia nascosto nella pagina prodotto. Ho trovato come aggiungerlo alla pagina del catalogo (negozio) ma ho bisogno di mostrarlo all'interno della pagina prodotto.

Finora, modificando il file single-product.php, sono riuscito ad aggiungerlo alla fine della pagina (cosa che non vogliamo) o prima del titolo in alto a sinistra della pagina (cosa che non vogliamo nemmeno).

Non ho trovato modo di aggiungerlo prima del prezzo e sotto il titolo del prodotto.

Il codice del file single-product.php del tema:

<?php
/**
 * Titolo Prodotto Singolo
 *
 * Questo template può essere sovrascritto copiandolo in yourtheme/woocommerce/single-product/title.php.
 *
 * TUTTAVIA, occasionalmente WooCommerce dovrà aggiornare i file del template e tu (lo sviluppatore del tema)
 * dovrai copiare i nuovi file nel tuo tema per mantenere la compatibilità. Cerchiamo di farlo
 * il meno possibile, ma succede. Quando questo accade la versione del file template verrà
 * incrementata e il readme elencherà tutti i cambiamenti importanti.
 *
 * @see         http://docs.woothemes.com/document/template-structure/
 * @author  WooThemes
 * @package WooCommerce/Templates
 * @version 1.6.4
 */

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Uscita se acceduto direttamente
}

?>
<?php echo '<div class="sku">' . $product->sku . '</div>'; ?>

Ho aggiunto l'ultima riga.

Tuttavia, nel file theme/woocommerce/single-product/meta.php posso vedere che lo SKU dovrebbe essere visualizzato, cosa che non avviene:

<?php
/**
 * Meta Prodotto Singolo
 *
 * @author      WooThemes
 * @package     WooCommerce/Templates
 * @version     1.6.4
 */

if ( ! defined( 'ABSPATH' ) ) exit; // Uscita se acceduto direttamente

global $post, $product;
?>
<div class="product_meta">

    <?php if ( $product->is_type( array( 'simple', 'variable' ) ) && get_option('woocommerce_enable_sku') == 'yes' && $product->get_sku() ) : ?>
        <span itemprop="productID" class="sku"><?php _e('SKU:','qns' ); ?> <?php echo $product->get_sku(); ?>.</span>
    <?php endif; ?>

    <?php echo $product->get_categories( ', ', ' <span class="posted_in">'.__('Categoria:','qns' ).' ', '.</span>'); ?>

    <?php echo $product->get_tags( ', ', ' <span class="tagged_as">'.__('Tags:','qns' ).' ', '.</span>'); ?>

</div>

Avete idee su come posso mostrare il numero SKU del prodotto all'interno della pagina prodotto?

Grazie in anticipo.

0
Tutte le risposte alla domanda 3
3

Aggiungi questo al tuo functions.php

add_action( 'woocommerce_single_product_summary', 'dev_designs_show_sku', 5 );
function dev_designs_show_sku(){
    global $product;
    echo 'SKU: ' . $product->get_sku();
}

Questo mostrerà lo SKU del prodotto sotto il titolo del prodotto. Vedi l'immagine qui sotto. Lo SKU del prodotto è VERTEX-SLVR.

Visualizzazione SKU prodotto WooCommerce

1 mar 2016 20:46:11
Commenti

FINALMENTE!!! GRAZIE!!!!

Qualche idea su come aggiungere la parola "SKU:" davanti al numero SKU?

CreationP CreationP
1 mar 2016 22:47:59

Nessun problema, ho aggiornato il codice originale per aggiungere 'SKU:' prima del Product SKU. Potresti segnare la mia risposta come accettata? Grazie!

Joe Dooley Joe Dooley
1 mar 2016 22:52:55

Certo. Grazie mille!!! Mi hai risparmiato ore di problemi!!

CreationP CreationP
1 mar 2016 23:28:00
0

Aggiungi a functions.php, mostra solo se il prodotto ha un SKU

    add_action( 'woocommerce_single_product_summary', 'dev_designs_show_sku', 5 );
    function dev_designs_show_sku(){
        global $product;
        $sku = $product->get_sku();
        if ($sku != null) {
            echo 'SKU: ' . $product->get_sku();
        }
    }
1 dic 2020 13:34:44
1

Aggiungi il seguente codice nel file functions.php del tuo tema (o child theme):

function visupporti_get_product_quantity( $atts ) {

global $product;

$atts = shortcode_atts( array(
'id' => ”,
), $atts );

// Se non c'è un ID, probabilmente siamo già su una pagina prodotto
if ( empty( $atts['id'] ) ) {

$sku = $product->get_stock_quantity( );

} else {

// Ottieni il prodotto dall'ID per visualizzare lo SKU
$product = wc_get_product( $atts['id'] );
$sku = $product->get_stock_quantity( );

}

ob_start();

// Visualizza solo se c'è uno SKU
if ( !empty( $sku ) ) {
echo $sku;
}

return ob_get_clean();

}
add_shortcode( 'wc_sku', 'visupporti_get_product_quantity' );

Scopri maggiori dettagli su come visualizzare lo SKU sul sito.

24 ago 2016 22:53:23
Commenti

Che tipo di editor hai usato per inserire quelle citazioni? Devono essere sostituite con veri apici singoli '

Svetoslav Marinov Svetoslav Marinov
13 feb 2019 11:05:24