• Super User

    Associare un logo alle categorie

    Ciao gente, mi pareva di aver visto qualcosa di simile in giro, ma non lo trovo più: mi servirebbe un PlugIn che associa in automatico, ad ogni post, un'immagine all'inizio di esso derivante dalla categoria a cui appartiene.

    Tutti i post della categoria XYZ avranno sempre l'immagine xyz.jpg e così via...


  • User Attivo

    Forse questo plugin può fare al caso tuo. Non l'ho provato, ma dalla descrizione dovrebbe andare.
    Category Images II


  • User Attivo

    Posto questo mio breve tutorial a riguardo sperando ti sia d'aiuto.

    Nell'esempio che segue useremo Kubrik, di default su WP, come template di riferimento e andremo a modificare il file index.php contenuto nella directory del tema.

    Passo 1
    Inanzitutto andremo a creare una cartella che conterrà le nostre icone. Personalmente l'ho creata dentro alla cartella images del tema in uso, naturalmente
    potrete decidere come meglio credete basta che il percorso alle immagini sia corretto.

    Passo 2
    Fatto ciò aprite con il vostro editor o con l'editor dei temi di WP il file index.php e cercate la riga di codice:

    <div class="entry">

    quindi inserite immediatamente sotto questo codice (togliete pure la parte commentata se volete):

    <!-- inizio icona categoria -->
    <?php
    foreach((get_the_category()) as $category) {
    echo '<img class="alignleft" src="wp-content/themes/default/images/categorie/' . $category->cat_name . '.png" alt="' . $category->cat_name . '" />';
    }
    ?>
    <!-- fine icona categoria -->

    Come potete vedere analizzando il codice è stata associata all'immagine una classe (alignleft), già esistente nel CSS del tema, che rende la formattazione più gradevole allineando l'icona alla sinistra del post e permettendo al testo di flottare alla sua destra. Per capirci in mancanza di questa classe si avrebbe l'effetto non troppo gradevole dell'icona sopra e del testo subito sotto.
    Per quanto riguarda il percorso delle immagini, come già decritto in precedenza, in questo esempio si è tenuto conto del loro inserimento in una sottocartella "images" del tema in uso ma volendo si può benissimo inserirle in altra destinazione.
    La variabile $category->cat_name . '.png richiama l'immagine ed è di fondamentale importanza, per la visualizzazione corretta l'icona deve avere lo stesso nome della
    categoria ad essa associata, per esempio:

    nome categoria "pippo" > immagine pippo.png
    nome categoria "pluto" > immagine pluto.png e così via

    in alternativa è possibile associare alla variabile $category invece del nome l'ID della categoria in questo modo $category->cat_ID . '.png. In questo caso le icone dovranno avere lo stesso numero dell'ID di categoria:

    ID categoria "1" > immagine 1.png
    ID categoria "2" > immagine 2.png

    Il formato delle icone di questo esempio è .png ma volendo si possono inserire anche altri tipi di immagini, l'importante è cambiarne l'estensione nel codice dell'esempio precedente:

    $category->cat_name . '.png per immagini Png
    $category->cat_name . '.jpg per immagini Jpg etc.


  • User Attivo

    Manetta, utilissimo tutorial, lo proverò senz'altro!!! :ciauz:


  • User

    Ciao Manetta...volevo complicarmi un pò la vita...
    Questo vale per il generale. Se però volessi inserire delle opzioni in maniera tale che per alcune determinate categorie dovessi avere una e una sola immagine...es: "immaginefissa.png" come dovrei integrare il codice?


  • User

    Un'alternativa potrebbe essere questa:

    [PHP]
    <?php
    foreach((get_the_category()) as $category) {
    echo '<img src="tuosito.it/wp-content/themes/default/images/category/' . $category->slug . '.jpg" alt="' . $category->cat_name . '" />';
    }
    ?>
    [/PHP]

    In questo modo va a prendere lo slug associato alla categoria. Quindi se ad esempio hai come nome categoria "Posizionamento Google", il tuo url potrebbe diventare "tuosito.it/category/posizionamento-google/"; l'indirizzo della tua immagine sarà invece "tuosito.it/wp-content/themes/default/images/category/posizionamento-google.jpg" e come alt prenderà il nome associato alla categoria che nel nostro caso è "Posizionamento Google".

    Ciao a tutti e spero di essere stato d'aiuto a qualcuno!

    Davide


  • Super User

    Tred vecchio, comunque avevo risolto anch'io con la (get_the_category()) in alcuni casi e prendendo il campo descrizione categoria in altri! ^_^

    Ciao a tutti
    Teju