Molti anni fa, scrivevo manuali tecnici per i clienti. Questi di solito assumono la forma di documenti cartacei, con centinaia di pagine di informazioni tecniche stampate e probabilmente usate come un posto a portata di mano per riposare una tazza da caffè dalla maggior parte delle persone per le quali sono state prodotte. Se il client era eccezionalmente avanzato, potrebbe esserci stata una versione PDF, ma è stata usata raramente.
I tempi sono passati e la maggior parte dei manuali, o basi di conoscenza come sono spesso conosciuti, sono in una forma digitale. Possono assumere la forma di un'app o di un sito Web o di una sorta di simulazione, ma avranno sempre dati al loro interno. Le basi di conoscenza devono essere facili per gli utenti per cercare e navigare, e devono essere facili per gli scrittori per aggiungere contenuto o modificare il contenuto, senza dover lavorare su qualsiasi pezzo di dati più di una volta.
Questo è il motivo per cui qualsiasi sistema guidato da un database sarà il più appropriato. Ho usato WordPress per guidare questo tipo di sito Web interno per un po 'di tempo e trovo la flessibilità che WordPress offre su come visualizzare e interrogare i dati, combinata con l'interfaccia di amministrazione che è familiare a molte persone, ne fanno un ideale strumento.
In questa serie, ti mostrerò sapere come creare una base di conoscenza usando WordPress. Ti guiderò attraverso i seguenti passaggi:
La prima parte di questo è la pianificazione, che tratterò qui. In questa serie ho intenzione di lavorare su una base di conoscenza immaginaria e fornirò qualsiasi codice in modo da poterlo utilizzare da solo.
Il primo passo è identificare quali tipi di contenuti la tua base di conoscenze conterrà. La mia base di conoscenze sarà una risorsa per utenti e sviluppatori di WordPress.
Conterrà i seguenti tipi di contenuti:
Questo contenuto verrà quindi ordinato in base al pubblico di destinazione e agli argomenti di alto livello. Farà anche uso di tag per l'ordinamento più dettagliato.
Il mio pubblico è diviso in due gruppi:
Per gli sviluppatori, gli argomenti di alto livello sono:
Per gli utenti, gli argomenti di alto livello sono:
Come già accennato, il sito utilizzerà anche i tag che verranno aggiunti dai contributori. Questi non saranno specifici per utenti o sviluppatori.
Il sito sarà gestito da un team immaginario di esperti di WordPress che sono tutti impegnati con altri lavori, quindi è necessario essere in grado di aggiungere rapidamente i contenuti. Alcuni di loro useranno l'app mobile WordPress per aggiungere contenuti.
Avendo identificato ciò che il mio contenuto dovrà essere, ho bisogno di abbinarlo ai tipi di contenuti di WordPress.
Come con tanti aspetti dello sviluppo con WordPress, non c'è necessariamente un solo modo per abbinare i tuoi contenuti al modo in cui è organizzato WordPress. Quindi, per identificare quello più adatto a te, devi iniziare a capire come WordPress organizza i contenuti.
Fuori dalla scatola, WordPress viene fornito con tre tipi di contenuto:
Nota che ci sono altri tipi di contenuti in WordPress come link, commenti e voci del menu di navigazione, ma i tre sopra sono quelli più rilevanti qui.
Puoi anche aggiungere i tuoi tipi di contenuto, creando tutti quelli che ti servono, utilizzando tipi di post personalizzati. Questi possono comportarsi come post o pagine, la differenza principale è che le pagine sono gerarchiche e i post non lo sono. In questo caso, la gerarchia non è un problema per i miei principali tipi di contenuto.
WordPress ha due tassonomie integrate, che puoi utilizzare con i tuoi post, pagine e tipi di post personalizzati:
Inoltre, puoi registrare tassonomie aggiuntive per consentire una migliore selezione e interrogazione dei tuoi dati.
Se la tua knowledge base ha più tipi di contenuti, puoi gestirli in uno dei tre modi seguenti:
La prima opzione è la più semplice per i principianti, dato che non devi scrivere alcun codice personalizzato e puoi lavorare con WordPress così com'è. La seconda opzione offre maggiore flessibilità ed è un approccio efficace se si desidera elencare tutti i tipi di contenuto insieme piuttosto che suddividerli sempre. È anche utile se una parte del contenuto potrebbe rientrare in più di un tipo di contenuto. La terza opzione ti dà la massima flessibilità finché i tuoi tipi di contenuti saranno sempre separati.
Nel caso della mia knowledge base, alcuni dei miei contenuti potrebbero essere di più di un tipo di contenuto (ad esempio un suggerimento rapido potrebbe assumere la forma di un video o includere un link), quindi non intendo registrare tipi di post separati . Invece, creerò una tassonomia personalizzata per i miei tipi di contenuto.
Oltre ai tipi di contenuto, ho bisogno di pensare a come i miei dati sono classificati. Ogni post sarà in uno o più argomenti con uno o più segmenti di pubblico. Poiché gli argomenti sono chiaramente abbinati ai due gruppi di pubblico, registrerò due tassonomie: una per gli argomenti degli utenti e una per gli argomenti degli sviluppatori. Ciò significa che posso elencare gli argomenti per ciascun pubblico nelle pagine pertinenti del sito.
Ciò significa che la mia knowledge base userà il seguente:
Quindi dovrò registrare queste tre tassonomie ma non sarà necessario registrare alcun tipo di post. Inoltre, poiché non userò le categorie integrate, le spegnerò in modo che i miei autori non assegnino accidentalmente gli articoli alle categorie.
Ora che so quali contenuti includerà la mia knowledge base e come verranno archiviati i dati, ho bisogno di pensare alla struttura delle pagine della mia knowledge base. Il sito utilizzerà una combinazione di archivi e pagine statiche, con una home page che include gli ultimi post di tutti gli argomenti.
Devo anche pensare alla mia navigazione, così come alla navigazione nel menu, includerò la navigazione per argomento nella barra laterale e anche una casella di ricerca.
Quindi, il mio sito includerà:
Includerò una barra laterale e un piè di pagina su tutte le pagine del mio sito, ma ho intenzione di variare leggermente in base all'area del sito in cui si trova l'utente.
Ecco cosa sarà nella barra laterale:
Tutto ciò sembra un po 'complicato, ma comincerà a dare un senso quando inizieremo a costruirlo. Creerò ognuno di questi elementi con una funzione e poi useremo i tag condizionali per collegare le funzioni a un hook di azione che aggiungerò al modello della barra laterale. Verrà anche aggiunta un'area widget alla barra laterale per ogni evenienza.
Il piè di pagina includerà gli elenchi dei termini di tassonomia per tutti e tre i miei argomenti più un elenco degli ultimi post.
Ciò significa che ho bisogno dei seguenti file modello:
index.php
page.php
archive.php
single.php
sidebar.php
Aggiungerò un hook di azione, che mi aiuterà a popolare le barre laterali: a tutsplus_sidebar
gancio di azione in sidebar.php
.
Creerò una funzione associata a questo hook, che conterrà i seguenti elenchi:
Ognuno di questi includerà i tag condizionali in modo che vengano aggiunti alla barra laterale nelle pagine di destra.
Ora ho un piano per il contenuto e la struttura della mia base di conoscenze e l'ho abbinato alle funzionalità di WordPress. Quindi ho identificato esattamente quello che ho bisogno di creare in WordPress per far funzionare questa base di conoscenza.
Mentre è allettante tentare di immergersi e iniziare a programmare, è una buona idea dedicare un po 'di tempo a pianificare la tua base di conoscenze in questo modo in modo da sapere esattamente quali file modello e funzioni avrai bisogno. In questo modo quando verrai a scrivere il codice, sarà molto più veloce.
Nella prossima parte di questa serie, ti mostrerò come registrare i tipi di post e le tassonomie per i dati della tua knowledge base e rimuovere quelli che non ti servono.