Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Creative Coding
Code

Usare Wordpress per lo sviluppo di applicazioni Web : Salvataggio Dati

by
Difficulty:IntermediateLength:MediumLanguages:
This post is part of a series called Using WordPress for Web Application Development.
WordPress for Web App Development: Email

Italian (Italiano) translation by Piergiorgio Sansone (you can also view the original English article)

Quando si parla di web, quasi tutte le applicazioni che vengono eseguite all'interno del browser sono supportate da un archivio dati di un certo tipo. Di solito, questi dati sono archiviati in database di un certo tipo.

Fino a poco tempo, la maggior parte delle applicazioni erano costruite su di un certo tipo di database SQL, ma con l'aumento di database basati su documenti come CouchDB, altre applicazioni hanno iniziato ad utilizzare anche altri backend.

Non solo, HTML5 ed i browser stanno sviluppando servizi per il localStorage, ma siamo effettivamente in grado di iniziare a memorizzare alcuni dati lato client. Ovviamente, questo non è qualcosa che si vorrebbe in modo permanente, ma concede un livello di flessibilità e potenza che fino a poco tempo fa non avevamo.

In ogni caso, nella vena classica delle applicazioni web, WordPress è un'applicazione database-based che utilizza un database MySQL per memorizzare le informazioni.

Ma questa serie è incentrata su come costruire applicazioni su di WordPress. A tal fine, è importante capire non solo come salvare le informazioni, ma  anche come recuperarle.

Naturalmente, quando si lavora con la serializzazione dei dati, è importante tener conto anche del fatto che gli utenti potrebbero inserire nel data base, dati in modo errato. in quanto tali , siamo responsabili della correttezza dei dati inseriti, cosi come della corretta estrazione quando sono recuperati dal database.

In questo articolo, daremo uno sguardo alle API di WordPress disponibili per la serializzazione delle informazioni e dei servizi disponibili per la loro pulizia. Poi concluderemo l'articolo, dando un occhiata a come recuperare le informazioni dal database in modo sicuro.


Archivio Dati:

Ovviamente, una della prinicipali differenze tra i normali siti web e le applicazioni web risiede nella loro abilità di gestire i dati archiviati in diversi tipi di databese. In genere, questo significa anche che le informazioni sono memorizzate su una base per utente (ma non sempre).

Comunque, out-of-the-box, WordPress offre una varietà di API che lo rendono facile per immagazzinare e recuperare dati. E forse la cosa carina circa il salvataggio dei dati nel database di WordPress è che una volta capito come funzionano le API, sarà facile intuire come funzionano il resto di loro.

Dunque, detto questo, iniziamo a vedere come salvare le informazioni nel database di WordPress.

Capiamo il Database:

Per quelli di voi che non hanno ancora familiarità con WordPress consiste solo in una manciata di tabelle. Ai fini della nostra discussione, siamo interessati principalmente a conoscere le seguenti tabelle :

  • wp_options. La tabella Opzioni è responsabile dell'archiviazione di alcuni pezzi dell'informazione che sono legate alle preferenze, la configurazione e tutto ciò che è legato alle impostazioni che sono applicabili sul sito .
  • wp_posts. Questa tabella erchivia i dati legati ai posts. Anche se , non lavoriamo direttamente con questa tabella, è importante capire che esiste, cosi possiamo lavorare con le meta informazioni relative ai post.
  • wp_postmeta. Come accennato in precedenza, questa tabella è responsabile della detenzione delle meta informazioni relative ai singoli messaggi. E dal momento che i messaggi possono rappresentare pagine, post, e tipi di messaggi personalizzati, allora questo è dove si memorizzano le informazioni relative a ciascuno dei vostri tipi di messaggi. È estremamente flessibile nel tipo di dati memorizzati, così davvero si può avere un sacco di potenza in termini di come si riferiscono informazioni ai post (indipendentemente dal tipo che vengano definiti come).
  • wp_comments. Questa tabella dovrebbe andare da sé, ma è qui che tutti i commenti per entrambi i posts, pagine e tipi di messaggi personalizzati vengono memorizzati. Come per wp_posts, questa non è la tabella dove scriveremo direttamente i dati, ma è importante capire che questa tabella esiste e che c'è una tabella di meta-dati commento a cui possiamo accedere quando scriviamo le informazioni sulla tabella.
  • wp_commentmeta. Come accennato, come wp_postmeta, qui è dove vengono presi i meta dati relativi i commenti. E' concesso, anche se non necessariamente , lavorare a tutto campo con i commenti nell'applicazione web, si può finire per avere una componente di blog per la vostra applicazione. E in questo caso, è d'aiuto sapere come potete leggere e scrivere i dati da e per la tabella.

Ovviamente, questo è solo un sondaggio ad alto livello su alcune delle tabelle alimentate da WordPress. se volete acquisire maggiore familiarità con il resto delle informazioni, se non altro per propria cultura, quindi assicuratevi di rivedere la descrizione del databese.

Tuttavia, questo dovrebbe essere sufficiente per raggiungere gli standard per leggere e scrivere le informazioni nel database.

Scrivere i dati nel database.

A questo punto , abbiamo abbastanza informazioni sul livello database per incominciare a sondare le API di WordPress disponibili a livello applicativo che ci consentano di prendere le informazioni forniteci sia da noi stessi che da input dell'utente.

La Tabella Opzioni

Ora, la scrittura di informazioni su ciascuna delle tabelle di cui sopra è davvero facile.

  1. È una questione di comprensione delle API disponibili
  2. è importante sapere come pulire i dati.

Prima di tutto, daremo uno sguardo alle funzionalità disponibili per la lettura , scrittura e l'aggiornamento delle informazioni nella tabelle delle opzioni di WordPress.

Opzioni di Inserimento ed aggiornamento

WordPress offre due funzioni API, specifiche per la scrittura dei dati nel database. Una si presenta sotto forma di aggiunta di informazioni, l' altra sotto forma di aggiornamento delle informazioni.

Per aggiungere informazioni nella tabella Opzioni di WordPress, userete le seguenti Funzioni API :

add_option accetta tre parametri :

  1. una chiave o un identificativo univoco per l'informazione
  2. Il valore del dato da archiviare

Per esempio, se vogliamo archiviare informazioni , come il mio nome, allora avremo fatto qualcosa di simile a questo.

Se, dall'altra mano, vogliamo prendere qualcosa che arriva dalla raccolta $_POST, allora dovremo fare qualcosa del genere:

Aggiornare le opzioni è molto differente. Si segue lo stesso schema e può effettivamente essere utilizzato al posto di add_options perchè se l'opzione non dovesse essere già esistente , verrebe creata.

Per non ostinarsi su questo punto, non mi soffermerò oltre su questa informazione e questa funzione in particolare. Essenzialmente, update_option :

  • Aggiungerà l'opzione se non ancora esistente
  • Sovrascriverà il valore esistente se esiste

Niente male, giusto?

Una parola su Theme Mod

Per coloro che hanno avuto a che fare con il tema WordPress - specialmente quando utilizzano il tema Customizer - allora avrete familiarità della funzione set_theme_mod.

Questa particolare funzione API non è esattamente rilevante per costruire applicazioni web con WordPress; tuttavia, per completezza, volevo mostrarvi tutte le API che sono responsabili della scrittura dei dati nel database.

Nota specifica dal Codex :

Crea o aggiorna un ambiente di modifica per il tema corrente. Insieme con get_theme_mod () questa funzione a volte offre agli sviluppatori del tema un'alternativa più semplice alle impostazioni API quando vi è la necessità di gestire le impostazioni di base specifiche per il tema.

Questo è chiaramente relegato al lavoro con i temi.

Le tabelle Post Meta e Commet Meta

Onestamente , lavorano con i meta post e non differisce molto dal lavorare con le opzioni. In realtà, si può anche considerare che le funzioni API per la serializzazione di post meta dati e i dati di meta commento quasi identico a come opzioni vengono memorizzate nel database wp_options.

In breve, le funzioni API prendono in tre pezzi di informazioni:

  1. L'elemento ID
  2. Il dato chiave
  3. Il valore del dato

Dunque nel caso salvassi le informazioni di un post, l'elemento ID dovrebbe corrispondere al post ID; mentre nel caso dei commento corrisponderebbe all' ID dei commento.

E proprio come nel caso del salvataggio dei dati per la tabella delle opzioni, è importante notare che l'aggiunta di un'opzione introdurrà l'opzione nel database, e l'aggiornamento dell'opzione la creerà, se non fosse già presente, e quindi sovrascriverà il valore se esistesse nel database.

Caso in questione, salvataggio delle informazioni nella tabella posta meta:

E, per esempio, l'aggiornamento delle informazioni nella tabella commento meta sarà simile:

In alternativa, potrebbe essere necessario utilizzare la variabile $post globale se il metodo non viene chiamato all'interno del ciclo. Per esempio:

E per scrivere i dati nella tabelle di meta commento, si segue esattamente lo stesso formato, tranne se utilizzi add_comment_meta e update_comment_meta.

Ma ora che abbiamo trattato come salvare le informazioni nella tabella delle opzioni, la tabella posta meta, e la meta tavolo commento, come possiamo effettivamente fare in modo che nessuna informazione pericolosa venga salvata nel database?

Facile :  La Pulizia dei Dati


Purlire i Dati

Quando si tratta di salvare i dati nel database, una delle cose più importanti che gli sviluppatori devono fare è di sterilizzare tutte le informazioni che sta arrivando da parte dell'utente e l'inserimento del database.

Ora la pulizia dei dati , dipende dai dati che stai per salvare. Per esempio, ci sono pochissime volte in cui ci vorremmo salvare markup, SQL, o altri tipi di codice sorgente nel database.

Per prevenirlo, è probabile che si voglia utilizzare le funzioni PHP come strip_tags e striplahes per pulire le informazioni.

Per esempio :

Naturalmente, per essere assolutamente chiaro, questo non è che un esempio di come per disinfettare informazioni. L'implementazione può variare in base al tipo di applicazione che si sta costruendo. Il punto di condivisione di queste informazioni sta mostrando una delle tante idee su come pulire le informazioni per il salvataggio nel database di WordPress.

Poi di nuovo, questi non sono gli unici modi che abbiamo per disinfettare valori. Ricordatevi si seguire i servizi che WordPress mette a disposizione a scatola chiusa.

  1. sanitize_email
  2. sanitaze_file_name
  3. sanitize_html_class
  4. sanitize_key
  5. sanitize_meta
  6. sanitize_mime_type
  7. sanitize_option
  8. sanitize_sql_orderby
  9. sanitize_text_field
  10. sanitize_title
  11. sanitize_title_for_query
  12. sanitize_title_with_dashes
  13. sanitize_user

A questo punto non dimenticate le utilities come le espressioni regolari. Sono incredibilmente potenti con la corrispondenza solo di alcune stringhe e di certi schemi da un insieme di dati che possono essere estratti per salvare i dati.


Questo è solo la metà di esso

Certo, abbiamo parlato solo a come salvare le informazioni nel database di WordPress.

dobbiamo in realtà  ancora capire come recuperare le informazioni, per non parlare di come convalidare in realtà le informazioni provenienti dal database.

Quindi, nel prossimo articolo, andremo a dare un'occhiata al rovescio della medaglia di questo articolo - in particolare, vedremo come ottenere informazioni dal database, la fuga i caratteri potenziali che sono potenzialmente problematico con rendendoli al browser, e come gestire questo.       

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.