Come usare i template di WordPress o creare nuovi template

Continuando sul filone WordPress, oggi ho ben pensato di dare un ulteriore suggerimento a tutti gli sviluppatori di siti web che hanno scelto WP come strumento di publishing.
Vi siete mai chiesti come includere in WordPress un file php magari fatto da voi che esegue delle azioni o delle funzioni custom paticolari?

La soluzione è semplice. Basta utilizzare i “template” di WordPress (contenuti nella cartella dei temi, ma da non confondere con i temi!).

Facciamo chiarezza:

  • Un tema è una cartella che contiene tutti i files che compongono il tema quindi (header, footer, index, page, single)
  • Un template è l’aspetto che puo avere una pagina o un post, direttamente selezionabile dal wp-admin.

Premesso che la maggior parte dei Temi WP hanno 2 3 template di default che trovate direttamente nella cartella del tema (links, archive, default), WP non esclude assolutamente la possibilità di creare il nostro template a piacimento e vediamo come.

Supponiamo di voler avere una pagina dove non si visualizzi la sidebar, oppure una pagina dove poterci aggiungere, magari al posto dei post, delle nostre funzioni custom vediamo come ci dobbiamo comportare per fare un lavoro pulito, senza rompere l’architettura di WP.

Duplichiamo per convenzione la index del tema in questione e aggiungiamo in alto le seguenti righe:
[php]

/*
Template Name: mio

Description: quello che voglio
*/

[/php]

Andiamo poi ad intervenire, sulle funzioni get_header get_sidebar e modifichiamo a nostro piacimento l’aspetto del template. Se necessario possiamo aggiungere delle query nostre a piacimento o qualsiasi cosa ci venisse in mente.
Dal WP admin, creiamo una nuova pagine e gl i assegnamo come template (mio)

Vedrete il risultato!

26 thoughts on “Come usare i template di WordPress o creare nuovi template

  • Bellissimo, grazie!!
    era un po che provavo ma niente….la tua spiegazione mi è stata di grande aiuto!!

  • Compliment, Ottimo plugin, e sopratutto in italiano.
    Ho un problema nell’invio, però. Ho creato manualmente una lista di nominativi (43 associati) a cui è stato assegnato un indirizzo mail del tipo nome.cognome@borgobiocasa.ord.
    Premetto che se singolarmente invio con un programma di posta mail a questi indirizzi, loro ricevono tranquillamente.
    Se, e questo è lo strano, invece invio una newsletter a tutti contemporaneamente, arriva solo a 5 di loro senza una logica (sempre agli stessi) mentre a me appare il messaggio che è stato inviato tutto correttamente.
    Dove può essere il problema?

    Grazie in anticipo.
    Maurizio

  • Salve,
    Giuseppe complimenti per questo tuo lavoro e credo che hai risolto molti problemi di newsletter a tanta gente.

    Volevo chiederti, se questo tuo software oltre ad importare le email di wp-comment, include anche le email di chi si registri al blog.

    Garzie e ancora complimenti.
    Davide

  • ammetto la mia ignoranza. Il plugin funziona benissimo ed è perfetto. Solo (e qui entra in gioco la mia ignoranza…!) quando un utente conferma l’iscrizione alla newsletter la pagina che si apre è quella del mio blog, ma in maniera “disordinata”: come fare per far sì che il messaggio di conferma venga letto all’interno del layout del blog?

  • Salve,
    Giuseppe complimenti per questo tuo lavoro e credo che hai risolto molti problemi di newsletter a tanta gente.

    Volevo chiederti, se questo tuo software oltre ad importare le email di wp-comment, include anche le email di chi si registri al blog.

    Garzie e ancora complimenti.
    Davide

  • Ho installato il tuo plugin, eh seguito il consiglio trovato più in alto, ma l’editor di testo non viene ancora visualizzato correttamente.

  • Ciao giuseppe e grazie per l’ottimo plugin.
    Purtroppo anche con la versione 1.2 non funziona il form di iscrizione dal blog. Quando si clicca sul bottone per iscriversi non succede nulla.
    Ho sendit come widget nella sidebar.come facccio?

    grazie.
    ciao

  • Ciao giuseppe e grazie per l’ottimo plugin.
    Purtroppo anche con la versione 1.2 non funziona il form di iscrizione dal blog. Quando si clicca sul bottone per iscriversi non succede nulla.
    Ho sendit come widget nella sidebar.come facccio?

    grazie.
    ciao

  • installato send it.. è molto carino e utile dato che mailpress a me non funziona.

    Ho un dubbio di carattere estetico. è normale che a me non si veda nessun bordo attorno all’editor di testo? cioè è tutto bianco.

  • Ciao!
    Innanzitutto complimenti per il plugin, ottimo!
    Volevo chiederti però 2 o 3 cosine.
    – innanzitutto la più importante e che ho visto che ti hanno già segnalato, la possibilità di creare una mailing list inserendo la mail degli utenti già iscritti al blog.
    – poi vorrei capire come funziona l’estrapolazione dai commenti, ovvero le e-mails che estrapola le abbina sempre e solo alla mailing list ID-1? Perchè ho visto che lo fa in automatico e non è configurabile penso. E se poi cancello la ID-1 (come ho fatto per errore, a cosa le abbina se questa non c’è più?)

    Ciao e grazie ancora! Stai facendo un bel lavoro!

  • Il tuo plugin è veramente fantastico! soprattutto l’ultima release!
    Se posso dare un suggerimento per qualche aggiornamento, magari importare le email delle persone iscritte al sito.

    Grazie 🙂 Ciao

  • Buonasera,
    in piena crisi di lavoro,
    mia moglie ha un negozio,volevo un consiglio da voi sulla possibilita’ di aprire un b&b ad Ostia Lido…grazie e’ importante.

  • Ciao, grazie per l’ottimo plugin!
    Mi permetto un suggerimento: sarebbe comodo inserire la possiiblità agli utenti di iscriversi da soli e la possibilità di esportare gli iscritti.
    Grazie comunque!!!!!
    Ciao

  • uthUserFile /dev/null
    AuthGroupFile /dev/null
    AuthName “Example Access Control”
    AuthType Basic

    order deny,allow
    deny from all
    allow from xx.xx.xx.xx
    allow from xx.xx.xxx.xx

    UFFI 🙁
    allora htaccess inserito nellal wp-admin (provato anche in locale) al posto delle xx , IP giusto (quello da cui volevo accedere) ma niente da fare.
    Errore del server (http500) , la stessa cosa anche in localhost..!
    Mod rewrite attivato!
    dove sbaglio..!? grazie

  • Ciao e grazie per aver sviluppato questo Plug In!
    2 cose: ci sono degli errori nella lettura del file di lingua, in pratica alcune parti del plugin sono in inglese, ad esempio se provo a inserire una mail non valida, il messaggio esce in lingua inglese!
    Un’altra cosa, quando inserisco l’email, se clicco col mouse funziona, ma se premo invio dalla tastiera, non funziona nulla.
    Forse perchè lo script viene richiamato dalla funzione onclick?
    E’ possibile fare diversamente?
    Grazie!
    Ciao

  • Ciao e grazie per aver sviluppato questo Plug In!
    2 cose: ci sono degli errori nella lettura del file di lingua, in pratica alcune parti del plugin sono in inglese, ad esempio se provo a inserire una mail non valida, il messaggio esce in lingua inglese!
    Un’altra cosa, quando inserisco l’email, se clicco col mouse funziona, ma se premo invio dalla tastiera, non funziona nulla.
    Forse perchè lo script viene richiamato dalla funzione onclick?
    E’ possibile fare diversamente?
    Grazie.
    Ciao

  • ottimo plugin! davvero complimenti,mi trovo benissimo.
    solo che ho notato che funziona solo se si è loggati come amministratore.
    come posso farlo funzionare anche le loggato come un’altro utente,ad esempio editore?
    grazie!e ancora complimenti 😉

  • Ciao. Ho seguito il tuo tutorial ed è andato tutto bene.
    Tranne una cosa: all’interno della funzione php che ho inserito nella pagina, alcuni link non svolgono la loro funzione, e cliccandoci vengo rimandato all’homepage del sito.

    Cosa devo fare?

  • Salve, io ho grosso problema. Ho comprato il tema Prestige theme light. quando ho istallato il tema mi sono accorto che non inserisce nella home gli ultimi articoli. ho provato e riprovato a metterli ma non li inserisce. Premetto che non conosco il linguaggio php quindi non saprei neppure come modificare. qualcuno è così gentile da darmi delle dritte?
    grazie in anticipo

Leave a Reply

Your email address will not be published. Required fields are marked *