7 trucchi e suggerimenti per aiutarti a diventare un master di ProcessWire

Da trucchi amministrativi a moduli, API e modelli, ecco un elenco di suggerimenti e trucchi per aiutarti a diventare un master di ProcessWire!

1. Bulk Elimina immagini nell'amministratore

Mentre crei il contenuto del tuo sito, potresti aver caricato da pochi, a centinaia di immagini a una pagina particolare che potresti non volere più. Se hai bisogno di liberartene, invece di eliminare ogni immagine singolarmente, puoi eliminare le immagini in massa da qualsiasi campo immagine facendo doppio clic sul bidone icona. Questo cancellerà tutte le immagini all'interno del campo dopo il salvataggio.

Elimina collettivamente le immagini all'interno dell'amministratore di PrcoessWire

2. Ripristina l'accesso al back-end

Ogni tanto potresti trovarti bloccato dall'amministratore di ProcessWire; forse hai perso la password, sei a metà della migrazione del sito o hai dimenticato di installare il modulo della password dimenticata (disabilitato di default per motivi di sicurezza). Aggiungendo questo script PHP a "site / templates / admin.php" e navigando verso la pagina di login imposterai una nuova password per l'utente admin.

Ricordati di cancellare lo script e salva "admin.php" non appena sei in.

$ admin = $ users-> get ('admin'); $ Admin-> setOutputFormatting (false); $ admin-> pass = 'yourNewPassword'; // inserisci la tua nuova password $ admin-> save ();

3. Migrazione da WordPress a ProcessWire

ProcessWire è estremamente flessibile; può gestire diverse migrazioni di dati e importazioni da altri sistemi o feed (xml, csv e altro). Uno dei casi di utilizzo più comuni è la migrazione dei dati del sito di WordPress a ProcessWire, che può essere fatto utilizzando un paio di moduli molto utili.

  1. In primo luogo, esporta tutti i dati dall'installazione di WordPress andando su (WordPress) Strumenti> Esporta.
  2. Installa il modulo ProcessWire ProcessMigrate e il "submodule" MigrateWordpress.
  3. Vai a (ProcessWire) Setup> Migrator e selezionare Importare.
  4. Scegli il tuo file XML WordPress esportato in precedenza e lascia che i moduli facciano il resto!

4. Aggiorna ProcessWire

L'aggiornamento è un compito ingrato per la maggior parte dei CMS. In ProcessWire, tuttavia, è generalmente un caso indolore di sostituire alcuni file e cartelle e controllare che i moduli funzionino ancora. La logica per l'aggiornamento dell'installazione di ProcessWire è in genere volta a migliorare la velocità e la funzionalità, al contrario dei problemi di sicurezza (devo ancora conoscere gli hack di ProcessWire).

La procedura di aggiornamento è una questione di sostituzione della cartella "wire /", "index.php" e ".htaccess"file del tuo sito alla versione che stai aggiornando. Tuttavia, effettua sempre un backup prima di apportare modifiche e assicurati di controllare le note di aggiornamento per la tua versione specifica sul repository GitHub.

5. Grazioso "Stop Markup Output" in Modelli

All'interno dei modelli del tuo sito potresti voler interrompere l'output dopo qualche logica di pagina; ad esempio, arrestando ulteriori risultati dopo aver rilevato una richiesta AJAX e servendo invece altri dati. Normalmente in PHP useresti il morire() o Uscita() metodi, tuttavia ciò interrompe l'esecuzione di PHP e impedisce a ProcessWire di eseguire i processi di rendering dei modelli successivi (a cui è possibile aggiungere funzioni se necessario, vedere di seguito). Invece, dovresti usare restituire $ this-> halt (); all'interno dei modelli (utilizzare al di fuori di qualsiasi funzione o ambito di classe) per arrestare il rendering del modello, ma continuare fino allo spegnimento normale di ProcessWire.

ajax) // AJAX content echo 'il mio contenuto'; // Calling halt () impedisce l'ulteriore rendering di file di template inclusi i file aggiunti. restituire $ this-> halt ();  // contenuto non AJAX di seguito

6. Aggiungi funzionalità globale

È possibile aggiungere funzionalità a ProcessWire in diversi modi:

  • Aggiungi funzionalità globali includendo il tuo file di funzioni nel "sito / config.php. Questo sarà quindi richiamabile ovunque all'interno di ProcessWire, inclusi i modelli: include_once (dirname (__ FILE__). "/myPath/myFunctions.php");Grazie a Horst per questo suggerimento!
  • Creando i tuoi moduli puoi aggiungere funzionalità ovunque all'interno di ProcessWire. I tuoi moduli saranno anche portabili ad altre installazioni di ProcessWire e, auspicabilmente, verranno aperti per la community di ProcessWire!
  • Infine, puoi aggiungere ganci alle funzioni ProcessWire all'interno del tuo modello utilizzando i file "init.php", "ready.php" e "finished.php" che vengono chiamati, in questo ordine, quando i tuoi modelli sono renderizzati prima di "finire". php”. Scopri di più su questo sul blog di ProcessWire.

7. Sanitizza tutto!

Mi auguro che tutto ciò che viene inserito nel tuo sito o nella tua app subisca una certa quantità di sterilizzazione; che quando il tuo sito memorizza i dati non è aperto a rischi per la sicurezza come le iniezioni SQL o Script.

L'API di ProcessWire viene fornita con alcuni metodi comuni per disinfettare testo, email, url, numeri e così via. Ad esempio, il $ Sanitizer-> Data () il metodo disinfetterà una data o una stringa data / ora, verificherà che sia valida e la restituisca:

// utilizzo di base $ string = $ sanitizer-> date ($ value);

Usali! Troverai l'elenco completo nella documentazione di ProcessWire.

Infine, chiedi alla community

Come consiglio finale, non posso raccomandare abbastanza la community di ProcessWire. ProcessWire gode di una vivace comunità di sviluppatori in tutto il mondo che comprende alcune delle persone più utili che si possano immaginare; chiedi tutto ciò che ti piace sul forum ProcessWire. 

Inoltre, non dimenticare di controllare ProcessWire Weekly, il luogo in cui trovare argomenti caldi sui forum, una vetrina di siti Web realizzati con ProcessWire, nuovi moduli e aggiornamenti di sistema dal core team di ProcessWire. E, naturalmente, tieni d'occhio Envato Tuts + per altri tutorial su ProcessWire in futuro!