2009-11-24 12 views

risposta

83

Prima di tutto si dovrebbe essere chiaro con voi stessi su ciò che si sta cercando di imparare:

  • Tematizzazione?
  • Edificio sito?
  • Sviluppo di nuovi moduli/funzionalità?

Naturalmente i confini di ciascuna di queste aree poco nitide, ma i modelli che si seguirà per conoscere Drupal sarà molto diverso. Ecco il mio parere:

trabocchetto generale (vale per tutti i settori)

I singoli principianti errore più ricorrenti fanno è quello di avere fretta. In un mondo di libri con titoli come "imparare a padroneggiare C++ in 24 ore o meno" la gente si avvicina Drupal credendo di poter farla franca con un paio di giorni di giocare con il codice altro qualcuno. Se non capiscono a prima vista come funzionano le cose in Drupal si passa a modalità sproloquio e cominciano a postare su blog e forum su quanto Drupal è stupidamente complicato.

Quindi: essere disposti a investire tempo ed energie per abbracciare l'alto livello di complessità (che è qualcosa di diverso rispetto complicazione) di Drupal. Siate pronti a realtà studio come funzionano le cose, piuttosto che sfiorano le richieste di assistenza su forum e mailing list. Se non sei ancora convinto. Ecco che arriva some good reading.

se si sta imparando sulla tematizzazione

  • Pitfall: apprendimento, cercando di incidere un tema preesistente.
  • Un modo migliore: per prima cosa, dai uno sguardo approfondito alla Drupal theming guide. È asciutto e noioso, ma offre una buona panoramica del flusso del motore tematico.Quindi scarica e installa lo zen theme e inizia il tema utilizzando il kit di avvio incluso. Raccomando, se usi Drupal 6, di utilizzare la versione 2 del tema, anche se in versione beta, poiché ha un'organizzazione molto più logica dei suoi file interni, almeno IMO.

Se stai imparando a costruire siti

  • Pitfall: sempre sopraffatti dalla quantità di moduli disponibili e rinunciare a quelle più grandi.
  • Un modo migliore: leggi alcuni degli case studies che sono stati presentati nel corso degli anni su drupal.org. Avrai un'idea abbastanza precisa di quali sono i modelli comuni nell'implementazione della funzionalità per mezzo di moduli contribuiti. Esplora e comprendi bene i componenti principali del drupal. Sono la base di tutto il resto, quindi avrete sicuramente bisogno di sapere come funziona il meccanismo dei nodi e della revisione, qual è il funzionamento della tassonomia, come funziona il sistema di permessi/ruoli, quali sono le differenze tra nodi e blocchi, ecc. .. Da non perdere CCK e Views, che - anche se sono (fino ad ora) hanno contribuito ai moduli, sono un componente del 99% dei siti drupal "là fuori".

Se stai imparando a scrivere i propri moduli

  • Pitfall: cercando di mettere insieme una funzionalità per mezzo di assemblaggio PHP e jQuery frammenti di codice recuperati qua e là sul web .
  • Una migliore modo di fare: se si vuole essere bravi a Drupal non può permettersi di andare dal appena in tempo paradigma di apprendimento, si deve andare per la vecchia scuola nel caso in cui uno. È davvero necessario avere una comprensione generale generale di tutti i componenti del sistema (tra gli altri: API form, sistema menu, logica hook, js in Drupal, elaborazione nodo, motore tematico, localizzazione, memorizzazione nella cache ...). Drupal è in qualche modo un framework, e se non conosci bene l'ecosistema in cui stai pianificando il tuo codice, è probabile che avrai passato molto tempo a produrre un codice orribile che presto o tardi fallirà nel fare ciò che è previsto. Soprattutto ci vorrà molto tempo per codificare qualcosa che forse avrebbe richiesto una frazione del tempo per essere realizzato "il modo drupal".

La mia opinione sui possibili strumenti per imparare a codificare bene in Drupal

  • http://drupal.org - è ricco di informazioni utili, ma è così disordinato e il rapporto segnale/rumore è così bassa che scoraggerebbe utilizzare il sito come principale fonte di informazione.
  • Libri - IMO se sei nuovo a Drupal potrebbe valere la pena investire su un paio di libri. I libri forniscono quella struttura logica e una sequenza di apprendimento che non puoi avere saltando da un sito all'altro, seguendo uno screencast qui e un how-to lì. I miei primi tre: Module development è un libro molto ben scritto, con una progressione intelligente di argomenti, in realtà ti guida alla scrittura di alcuni moduli con complessità crescente. È una buona lettura per avere un'idea di come funziona drupal.Pro Drupal Develpment è il libro per Drupal. È abbastanza secco e - sebbene abbia sempre esempi di codice - mi piace più come libro di testo/testo di riferimento. Assicurati di ottenere la seconda edizione, poiché la prima riguarda Drupal 5, che presto diventerà obsoleta. L'unico difetto evidente di Pro Drupal Development è javascript (introdotto in modo molto frettoloso). JS e Drupal sono un argomento ampio, ea tale scopo mi piace il Drupal 6 Javascript and jQuery better come il primo libro che ho menzionato, questo libro è anche basato sui progetti (cioè si imparano le cose in relazione alle esigenze di implementare un progetto).
  • Altri siti Web - Sono una fonte inestimabile di informazioni ed esempi. È il luogo ideale per cercare quando hai una comprensione generale su come realizzare le cose, ma troppo poca esperienza in un dominio specifico per essere autonomo (e tutti, indipendentemente da quanto esperti, hanno alcuni domini in cui non sono "pro"). Alcuni buoni siti Web sono già stati citati da altri. Il mio preferito di tutti i tempi è lullabot ma drupal dojo e learn by the drop sono anche molto buoni.
  • Comunità - Questo è un grande vantaggio di drupal. La comunità è molto grande e molto utile e probabilmente troverai sempre qualcuno che desideri aiutare. Il IRC channel è un buon punto di partenza.
  • Riunioni - Ogni 6 mesi la comunità di Drupal si riunisce per alcuni giorni (una volta in Nord America e una volta in Europa) per scambiare competenze e informazioni. Anche se viaggiare a DrupalCon può essere (troppo) costoso per farlo, dal momento che un paio di incontri organizzati dalla comunità per pubblicare tutti gli videos of all the sessions held. Sono anche un'ottima risorsa.

Spero che questo ti aiuti a farti andare e buona fortuna con il tuo apprendimento! :)

+5

Una vera risposta completa. +1! – GmonC

+0

Grazie mille! Prenderò in considerazione tutti questi punti! –

+0

@Kico Lobo - Nessun problema ... Vedrai ... non appena "entrerai" nella logica di Drupal, avrai molto divertimento e soddisfazione! Buona fortuna con il tuo studio! :) – mac

1
  • Impara a tema utilizzando il tema Zen o qualcosa di simile come base
  • campi a tema, non pagine
  • Visualizzazioni sono tuo amico
  • rocce imagecache
+0

Perché non posso iniziare con un tema vuoto? –

+1

Beh, è ​​possibile, ma lo Zen è un po 'come un tema vuoto per cominciare. La maggior parte del suo CSS sta semplicemente ripristinando gli stili del browser e alcuni dei CSS drupal, in più aggiunge alcune piacevoli classi di convenienza e sovrascrive alcuni modelli in modo da renderli meno fastidiosi. – Karl

1

Un errore comune non è fare una ricerca sufficiente sui diversi moduli disponibili per ogni attività o funzione che si sta tentando di realizzare. È molto semplice installare un modulo in Drupal e iniziare a lavorarci senza comprendere appieno le sfumature di quel modulo. Potrebbe sembrare che il modulo funzioni come previsto. Tuttavia, a metà strada del tuo progetto potresti scoprire che un particolare modulo ha una limitazione o un problema che non può essere superato senza un codice personalizzato principale. Un altro modulo potrebbe essere stato appropriato per il progetto, ma ha anche soddisfatto il tuo requisito aggiuntivo. Un buon esempio di questo è decidere come impostare le autorizzazioni dell'utente. Ci sono molti moduli che aiutano a migliorare il sistema di permessi di Drupal, ma ognuno funziona in modo diverso e ha un set di funzionalità specifico. Avete bisogno di schermate di accesso speciali per utenti diversi, requisiti di flusso di lavoro, ecc.? Inoltre, è inclusa una valutazione corretta sull'opportunità o meno di utilizzare un modulo che non soddisfi le tue esigenze o ne scriva le tue. Senza comprendere appieno i limiti del modulo in relazione alle specifiche esigenze, potresti percorrere un percorso in cui passeresti molto tempo cercando di adattare il modulo alle tue esigenze invece di crearlo rapidamente da zero che corrisponde esattamente alle tue esigenze.

2

Per i principianti di Drupal e "soprattutto" se, come me, si ha una solida conoscenza dei concetti MVC o MVP, consiglierei di acquistare o prendere in prestito "Sviluppo Pro Drupal 7", terza edizione.

Per quanto riguarda le insidie:

  • Imparare il menu di sistema (routing)
  • Embrace l'API Modulo
  • Mentre alcuni hanno abbracciato Zen, ho personalmente abbracciato Omega
  • Come uno affermato in precedenza, I panorami sono tuoi amici.Modella e crea tanti "tipi di contenuto" secondo necessità, quindi usa Views per visualizzarli.
  • CTools è fantastico, Views è la salsa migliore sul pianeta Drupal, ma calpesta leggermente i pannelli e l'interfaccia di Page Manager. :)

Spero che questo aiuti.

Problemi correlati