- Home
- Categorie
- Coding e Sistemistica
- WordPress
- Associare un logo alle categorie
-
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...
-
Forse questo plugin può fare al caso tuo. Non l'ho provato, ma dalla descrizione dovrebbe andare.
Category Images II
-
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ì viain 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.pngIl 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.
-
Manetta, utilissimo tutorial, lo proverò senz'altro!!!
-
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?
-
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
-
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