Aggiungere uno Span Intorno al Titolo del Prodotto in WooCommerce

21 feb 2013, 23:00:25
Visualizzazioni: 24K
Voti: 1

Sto personalizzando un tema custom per utilizzare WooCommerce. Uno dei problemi che ho incontrato è l'aggiunta di un tag span intorno al titolo del prodotto nella pagina del singolo prodotto. Ho scoperto come aggiungere un filtro al metodo the_title ma sfortunatamente questo metodo viene utilizzato anche in altri punti come nell'attributo alt dell'immagine del prodotto (che lo rende non funzionante).

Esiste un modo per specificare di modificare the_title solo quando viene stampato il titolo principale nella pagina invece che quando viene utilizzato altrove come attributo di un'immagine?

Ecco quello che ho finora:

function my_product_title($title, $id)
{
    if(in_the_loop() && is_product())
    {
        return '<span class="border">FooBar</span>';
    }
    return $title;
}
add_filter( 'the_title', 'my_product_title', 5, 2);

Non dovrebbe esserci un modo per agganciarsi al filtro woocommerce_product_title? Ho provato a farlo senza successo.

Nel frattempo so che posso modificare il file template single-product/title.php ma preferirei ottenere questo risultato con actions o filters.

0
Tutte le risposte alla domanda 1
0
13

Ecco come puoi farlo,

Per prima cosa rimuovi l'azione del titolo singolo di WooCommerce e crea la tua funzione personalizzata per gestire il titolo, poi riaggiungi l'azione utilizzando la tua nuova funzione.

<?php

remove_action('woocommerce_single_product_summary','woocommerce_template_single_title',5);
add_action('woocommerce_single_product_summary', 'woocommerce_my_single_title',5);

if ( ! function_exists( 'woocommerce_my_single_title' ) ) {
   function woocommerce_my_single_title() {
?>
            <h1 itemprop="name" class="product_title entry-title"><span><?php the_title(); ?></span></h1>
<?php
    }
}

?>
25 feb 2013 21:55:42