drupal7 培訓大綱

此大綱針對已經有HTML CSS Javascript與少許的PHP程序經驗的人羣php

系統操做基礎

解說順序 (1.5hrs)

  • drupal介紹html

  • 數據結構介紹 - node, user, block, menu, term前端

  • module安裝node

  • cache介紹web

  • path介紹數據庫

參考資料

練習 (0.5 day)

  • 安裝pathauto,並設置一個content type(news),讓它的地址轉爲mynews/[title]

  • 安裝views,作一個news列表,列有:image, title(link), author, date

  • 安裝backup migrate並導出一個數據庫備份

  • 安裝i18n,讓一個NODE能夠有中英文內容

  • 安裝bootstrap3 theme或者zen theme並開一個sub theme,按照官方的作法

練習目的

  • 讓成員瞭解drupal的基本操做

  • 考評成員的學習能力

前端

解說順序 (3hrs)

  • page是什麼?通常page是front, views, node

  • block是什麼?

  • content type,數據結構, 理解fields(widget, format), display models(full page, teaser)

  • views與DS的各自用法

  • views與ds結合用法

  • image縮略圖處理

  • 日期格式處理

  • context的做用與用法

  • 安裝menu block,添加一個新的menu,把它放在首頁的某個位置

  • theme結構 - .info, *.tpl.php, region, block

  • template命名及suggestions(在如下「參考資料」中)

  • theme開發(基於blank theme, basic,clean或者zen)

參考資料

練習 (2 week)

模仿一個簡單的內容類型網站,須要充分使用如下module進行開發

  • views slideshow開發幻燈片效果

  • nice menu實現下拉式菜單效果

  • 開發產品列表、產品內頁(兩列或三列結構)

  • 用context在某頁加載一個JS

  • 內頁用context高亮它的父級菜單

而且熟練如下技巧

  • theme開發(基於basic/clean theme或者zen theme)

  • position的設計與block的使用(例如block的可見性設置)

  • module template重寫 (例如node.tpl.php, block.tpl.php)

  • 前端模塊的運用(views, ds, context)

  • CSS

練習目的

  • 熟識theme原理

  • 熟練使用drupal進行簡單項目開發

  • 考評HTML和CSS能力

  • 考評網站結構分析能力

  • 考評處理問題的能力與效率

後端

解說順序 (2hrs)

  • devel介紹(調試方法,dpm函數調試,對象結構講解)

  • theme結構 - template.php

  1. module結構(其文件命名的意義,目錄的意義)

  2. hook system的介紹(深刻講解)

  3. 程序參考 (安裝example,並講解每個例子的概念)

  4. form開發(看參考資料)

  5. 經常使用HOOK介紹 (hook_menu, hook_form_alter)

  6. 一個頁面的建立(建一個module,利用hook_menu實現一個普通頁面)

  7. query API介紹(看參考資料)

  8. 經常使用函數介紹(如arg, l, url, node_load, user_load, drupal_set_message, date)

  9. 介紹官方API查詢方法:api.drupal.org

  10. features的運用

參考資料

練習 (1 week)

開發contact us form模塊,能指定發送郵箱,後臺能查詢發送記錄,主要實現以下效果:

  • 創建兩個管理員role(admin_1, admin_2),兩個role均可以訪問後臺,admin_1能夠修改contact us的郵件模板,而admin_2沒有這個權限(必須經過permissions實現)

  • 創建一個node type:Submissions來接收form獲得的結果

  • 使用features包裝相關內容,例如role, node

  • 用form API製做一個form,能夠填寫:Name(text),E-mail(email),Message(textarea)

  • 使用#markup元素輸出一段文字

  • form提交後能夠發出郵件,而且有後臺能查詢記錄(能夠參考webform)

  • 可使用template來給form定製更復雜的佈局(例如分左右列)

  • 後臺能夠編輯郵件模板,能夠經過標識符調出動態數據,例如:hi [name], you message is [message], email is [email]

練習目的

  • 熟識module創建過程

  • 熟識form API

  • 熟識建立模板

  • 熟識permissions

規範

  • content type命名

  • field命名

  • file目錄設置

  • module文件命名

  • views使用規範

  • 代碼編寫規範

相關文章
相關標籤/搜索