2010-05-13 114 views
5

我想寫出一個關鍵的Drupal能力列表,主要是我可以證實我知道的,不知道,不知道我不知道。 (感謝拉姆斯菲爾德的報價!)Drupal開發人員需要什麼技能?

我認爲其中的一些非常廣泛,例如製作功能性主題和創建具有良好的SEO,加載時間等主題的差異很大,但我希望你可以假設一半體面的網絡開發人員會照顧到這一點。

只是有興趣看看這裏的人感受到什麼也很重要。我已將這些建議編輯到此列表中。

語言

  • PHP
  • MYSQL
  • 查詢

Drupal能力

  • 回覆搜索並安裝模塊,以滿足項目要求
  • 配置基本模塊和核心設置,以獲得運行
  • Drush命令行工具
  • 從頭開始創建一個自定義的主題,其具有良好的HTML/CSS驗證一個網站。
  • 能夠自定義表單,核心,主題而不改變核心文件,但通過使用template.php或自定義模塊。
  • 可以使用API​​從頭開始創建表單 - 驗證並回發到數據庫/電子郵件
  • 可以使用核心掛鉤和模塊掛鉤從頭創建自定義模塊。
  • 參與社區,瞭解命名約定,CVS系統並理想地提交了一些代碼或修訂。

模塊 這並不容易做出一定知道模塊列表,不僅使用非常依賴網站上的模塊,而且你如何使用它們。

查看

  • 知道如何使基本觀點和塊:但是被廣泛應用於以下。
  • 知道如何用關係和術語製作更復雜的視圖。
  • 瞭解如何使用hook_views_query_alter進行復雜的查詢。
  • 瞭解如何使用hook_views_default_views創建特定的視圖。

CCK

  • 知道如何設置的內容 - 用什麼字段類型。
  • 知道如何創建自己的field_formatters - 主題CCK字段的基礎。

魚鉤 最重要的鉤子去學習,去創建一個基本的模塊可能是:

  • hook_form_alter() - 在不改變代碼的變化形式。
  • hook_menu()
  • hook_theme()
  • hook_nodeapi() - 有關節點幾乎所有的東西
  • hook_schema() - 創建表
  • hook_install()/ hook_uninstall() - 創建表和清理。
  • hook_perm() - 當你需要特殊的訪問控制。
  • hook_init() - 總想要發生的事情。
  • hook_user() - 如果您需要點擊用戶操作或修改用戶對象。

回答

3

我很好地理解客戶端 - 服務器體系結構以及服務器和瀏覽器的工作原理。熟悉php和mysql,模板引擎。當然,你也應該閱讀Drupal文檔。

2

能夠從頭開始創建自定義主題,該主題使用良好的HTML/CSS進行驗證,並關注可用性和可訪問性。 (雖然仍在尋找屁股)。

您通常不想從頭開始創建主題,而是從像Zen這樣的初學者主題創建主題。

爲Drupal你將需要:

  • PHP,這是一個PHP框架,所以要真正瞭解並使用它,你需要了解PHP。
  • SQL,Drupal可以使用的SQL服務列表越來越多,但您需要了解* SQL,關係數據庫以及如何設置一些基本體系結構。
  • Javascript(和jQuery)。 Drupal使用jQuery js庫,因此,如果你不僅僅知道如何使用javascript,並且瞭解如何使用jQuery及其中的一些概念,它會容易得多。
  • 鉤子系統以及如何修改Drupal核心和模塊實現鉤子。
  • 的命名約定掛鉤,主題等多種功能

模塊
這並不容易做出一定知道模塊列表,不僅使用非常依賴網站上的模塊,但還有你如何使用它們。 Drupal中的兩個頂級模塊是。

  • 查看
    • 知道如何使基本觀點和塊。
    • 知道如何用關係和術語製作更復雜的視圖。
    • 知道如何使用hook_views_query_alter來進行復雜的查詢。
    • 瞭解如何使用hook_views_default_views創建特定視圖。
  • CCK
    • 知道如何設置的內容 - 用什麼字段類型。
    • 知道如何創建自己的field_formatters - 主題CCK領域的基礎。

,我覺得非常強大,一旦掌握了另一個模塊板。它允許你用很少和簡單的代碼來完成很多複雜和困難的事情。有很多你需要學習的鉤子,並沒有太多的文檔。但是,一旦你瞭解面板,你會發現你的時間已經用得很好。

魚鉤
最重要的鉤子去學習,去創建一個基本模塊大概是:

  • hook_form_alter() - 在不改變代碼的變化形式。
  • hook_menu()
  • hook_theme()
  • hook_nodeapi() - 有關節點幾乎所有的東西
  • hook_schema() - 創建表
  • hook_install()/ hook_uninstall() - 創建表和清理。
  • hook_perm() - 當你需要特殊的訪問控制。
  • hook_init() - 總想要發生的事情。
  • hook_user() - 如果您需要點擊用戶操作或修改用戶對象。

你不需要一直使用所有這些鉤子,但它們是一些最常用的鉤子。

+0

一些好點!你能想到更多與CMS相關的東西,比如你認爲需要掌握的特定鉤子或模塊嗎? – MrFidge 2010-05-13 11:51:35

1

迄今爲止的最好名單!有些人考慮:

  • 能夠使用Drush更新或建立一個網站
  • 了Drupal站點的性能,安全性和SEO好的最佳實踐配置的深刻理解(認爲推出清單)
  • 周亞夫一個模塊Drupal.org(但是簡單)或提交了一個補丁(得到一個CVS賬號,並讓你的第一個代碼的過程中是有啓發性的社會和標準)
+0

還沒有遇到Drush - 只是使用它,它看起來很有趣!我傾向於通過前端,但有命令行訪問將非常方便。 我想知道CVS系統如何與所有的術語和最佳實踐文件命名的東西一起工作可能是許多Drupal開發者永遠無法逾越的障礙。 – MrFidge 2010-05-14 08:15:12

1

你不需要SEO技巧的模板,Drupal通常可以幫助SEO很多。當然,一個開發人員必須知道所有標題必須用h1,h2,h3,h4標籤完成。這真的很基礎。一切都取決於drupal。

至於我認爲是一個Drupal「開發人員」,你需要一些非常基本的PHP技能。因爲drupal實際上沒有面向對象的編程而沒有設計模式,所以這些是兩件事情真的讓你成爲程序員..沒有它們,只是[抱歉]這個詞]廢話不是編程。

我想任何人都可以安裝drupal或wordpress或cms-made-simple系統,如果您至少有一次連接到您的生活中的ftp ...爲他們開發插件是一個需要php的基本技能。當然,如果你會找到技術嫺熟的開發人員,那麼他會知道oop basic,並且會使用OOP編寫插件,並且該代碼將會是NiCE! =)

1

能夠在不接觸核心或模塊的情況下編輯現有功能(核心或模塊),並知道是否將其放入模板或自定義模塊中。

1

因爲我們這些日子都與網絡有關,所以您確實必須對HTTP協議有一個很好的理解。您還需要很好地理解JavaScript,DOM,CSS和HTML5。瞭解一點jQuery對於開發人員來說是不夠的,您需要了解您在使用DOM,HTML5 API和CSS時所做的工作,以便在瀏覽器中構建功能和行爲。您還需要了解的Drupal的JavaScript API,無論是在服務器端(hook_library()#attached等)和客戶端(Drupal.behaviors等)

您還需要知道的Drupal的各種API。表單API不是唯一的。您需要了解菜單系統(頁面,訪問權限,標題和傳遞迴調,如何向其傳遞參數等),用於異步操作的Queue API,用於長時間運行的操作的批處理API,用戶可編輯結構的實體和字段API數據,主題API和渲染陣列以用於任何演示,緩存API,架構和數據庫API,文件API,緩存API和本地化API。

相關問題