graficajam
Porzioni di template ritutilizzabili con WordPress

Porzioni di template ritutilizzabili con WordPress

Giamp11/06/2024

Ciao! La funzione get_template_part() di WordPress ci permette di creare porzioni di template facilmente riutilizzabili. Vediamo come sfruttarla al meglio, passando anche parametri personalizzati.

Creiamo il nostro componente

In questo esempio creiamo un piccolo componente che recupera e stampa tutti i tag dell’articolo corrente.

// componenti/tags.php
<?php
$class = $args['class'] ?? 'tag';
$icon  = $args['icon'] ?? '';

$posttags = get_the_tags();

if ($posttags):
    foreach ($posttags as $tag): ?>
        <a class="<?php echo esc_attr($class); ?>" href="<?php echo esc_url(get_term_link($tag)); ?>">
            <?php if ($icon): ?>
                <i class="<?php echo esc_attr($icon); ?>"></i>
            <?php endif; ?>
            <?php echo esc_html($tag->name); ?>
        </a>
    <?php endforeach;
else: ?>
    <div class="message">Nessun tag trovato</div>
<?php endif; ?>

Includere il componente nel template

Ora possiamo includere questa porzione di template dove preferiamo, ad esempio nel file index.php.

<div class="buttons">
    <?php get_template_part('componenti/tags'); ?>
</div>

In questo modo i tag verranno stampati con lo stile di default.

Passare parametri personalizzati

Se vogliamo rendere il componente più flessibile, possiamo passargli dei parametri sfruttando il terzo argomento di get_template_part() (disponibile da WordPress 5.5).

<div class="buttons">
    <?php
    get_template_part('componenti/tags', null, array(
        'class' => 'button is-grey is-light is-rounded mb-4',
        'icon'  => 'bi-arrow-right'
    ));
    ?>
</div>

Come vedi, stiamo passando un array chiave/valore con una classe CSS e un’icona.
In questo modo possiamo riutilizzare sempre lo stesso componente, cambiando semplicemente l’aspetto grafico in base al contesto.

Conclusioni

Questo approccio rende i template:

  • più ordinati
  • più riutilizzabili
  • più facili da gestire

get_template_part() con $args è una soluzione semplice ma molto potente per strutturare temi WordPress moderni.

Qui trovi la documentazione ufficiale.
Grazie per aver letto questo articoletto, alla prossima!

Hai qualcosa da dire?

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

leggi anche...