Pagina template e custom template automatico

Recentemente durante la costruzione di un plugin WordPress Advent calender realizzato per Sara Michieli mi sono imbattuto nel problema di come inserire una pagina all’interno di WordPress, e successivamente dare a questa pagina un Custom Template, il tutto ovviamente automatizzato all’attivazione del plugin.

Per maggiori dettagli su cosa è un Custom Template vi rimando a questo articolo: Creare una pagina template in WordPress

Poi il plugin Adven calendar aveva altre esigenze più avanti scriverò anche di quelle.
Ho pensato che sarebbe stato molto comodo per qualcuno avere queste istruzioni, così ho pensato di riportare la mia esperienza.

Bene creo la una cartella che chiamo am-custom-page.
Creo il file del plugin am-custom-page.php, al suo interno scrivo questo:

Ora questo codice crea all’attivazione del nostro plugin una pagina “Template Page” e al suo interno inserisce questo contenuto “Contenuto della pagina”.
In questo script c’è anche la l’eventualità di creare un post a me non interessava ma l’ho lasciato e commentato poiché magari in futuro potrò servirmene e magari non ricorderò come si fa 🙂

Ma non è tutto lo script infatti crea la pagina ma se noi non vogliamo più avere quella pagina dovremmo semplicemente disattivare il plugin.

Ora dovremmo inserire il custom template in maniera automatica all’interno della pagina creata autonomamente

Andiamo quindi ad aggiungere questo codice allo script:

In questo modo abbiamo creato una funzione che va ad associare alla pagina appena creata “template-page” il custom template attraverso il file template-page.php
Ovviamente ora dovremo creare il file template-page.php andiamo nella cartella am-custom-page e creiamo il file, e all’interno mettiamo il codice che vogliamo che appaia come per esempio un custom loop che prenda i lavori del portfolio

Spero che l’articolo sia stato d’aiuto.

Se volete scaricare il plugin [ddownload id=697]