Aspetti tecnici da valutare quando si progettano plugin

Sicurezza

E’ importante tenere presente che WordPress non è stato fatto per contenere dati personali delicati come nel caso (ad esempio) di un plugin per gestire il workflow di acquisto di un immobile. Quindi quando si decide di estendere con una funzionalità che raccoglie dati personali o che riguarda informazioni strategiche che di solito vengono gestite in software gestionali dedicati, bisogna:

  • mantenere WordPress sempre aggiornato alle ultime versioni;
  • evitare di installare plugin commerciali per i quali non c’è alcuna garanzia di sicurezza;
  • attivare un procedimento che crei backup continui;
  • utilizzare soluzioni per la cifratura dei dati più sensibili:

Velocità/Ottimizzazione

  • utilizzare la classe $wpdb con competenza riguardo i database relazionali;
  • approfondire i concetti di ottimizzazioni sia nella fase di progettazione dei dati, che riguardo la scrittura delle query;
  • il numero delle righe del database non è importante (WordPress insiste su MySql cje è in grado di gestire milioni di righe in una tabella) ma quando il numero dei dati aumenta, bisogna evitare di utilizzare le funzioni add_post_meta()/update_post_meta()/get_post_meta() perchè in questo caso WordPress utilizzerà una singola tabella per inserire tutti i dati e diventerà complicato sia scrivere query per tirare fuori le informazioni, sia per il server riuscire ad eseguirle. Piuttosto è sensato progettare tabelle personalizzate per realizzare la struttura dati adeguata al nuovo compito che si sta sviluppando;

Disaccoppiamento

Una tipica tecnica di progettazione utilizzata nello sviluppo di software gestionali per aumentare la portabilità e la possibilità di estensione su più server, è quella del disaccoppiamento delle parti server e client, e delle parti di amministrazione/backup e frontend che purtroppo in WordPress sono poco distinte. E’ comunque possibile fare qualcosa per migliorare il grado di stabilità del sistema, ad esempio portando le funzionalità server su dei Webservice; a questo proposito, WordPress offre un’interfaccia JSON per gestire le REST API, descritta benissimo nella documentazione ufficiale https://developer.wordpress.org/rest-api e che io ho utilizzato in diverse occasioni per estendere le funzioni di WordPress.

Posso consigliare alcuni libri per chi vuole o è già nella carriera developer.


Questo sito web non offre alcun cookie perchè non ho interesse a tracciare le attività di nessun utente attraverso i cookie e quindi non ne ho inseriti.
Il tema e i plugin sono realizzati da me e quindi nessun altro è autorizzato ad inserire cookie su questo sito web.
Se qualcuno dovesse individuare un cookie da qualche parte su questo sito web, non ce l'ho messo io,
ed è pregato di farmelo sapere, così potrò cercare e distruggere il cookie eventualmente individuato.
I software e i pezzi di codice condivisi su questo sito web sono da considerarsi a scopo educativo e senza alcuna garanzia
© 2021