內容介紹
《drupal 實戰》是中文drupal社區極力推薦的實力之作,由國內頂尖drupal技術專家(在全球drupal社區有一定影響力)老葛撰寫。以實戰為導向,用一個商業性的綜合案例貫穿全書,通過重現整個案例的開發過程,不僅循序漸進地講解了drupal的各項功能和技術,而且系統地講解了drupal套用的開發方法和步驟,能讓讀者迅速具備實戰能力。全書一共13章:第1章全面介紹了drupal的安裝和配置,為後面各章的學習做了準備;第2~5章分別講解了如何為圖書添加各種欄位,如何設定路徑別名、圖片樣式和列表,如何製作主題和首頁;第6~10章分別講解了ubercart的詳細配置,如何實現站內搜尋,如何添加社區互動功能,如何做panels控制項和定製個人主頁;第11~13章探討了drupal的seo和性能最佳化,以及商品數據的導入與導出。
作者介紹
葛紅儒,(又稱“老葛”)thinkindrupal.com站長,專職從事drupal的開發和研究工作已近6年。2013年5月美國波特蘭drupalcon獎學金獲得者。為drupal在國內外的發展都做出了貢獻:為drupal.org貢獻過多個模組,比如field validation、image url formatter等;在drupal 6下,先後漢化了ubercart、views、og、cck、ctools、panels等模組,在drupal 7下漢化了ubercart;先後翻譯和編寫過《drupal主題製作指南》、《drupal專業開發指南》(第1版和第2版)、《drupal菜鳥20問》,以及在國內廣為流傳的《think in drupal》系列中文資料。作品目錄
《drupal 實戰》前言
第1章 初識drupal /1
1.1 安裝drupal /2
1.1.1 安裝xampp /2
1.1.2 下載drupal /2
1.1.3 創建資料庫 /3
1.1.4 安裝drupal /4
1.2 訪問drupal後台 /6
1.3 讓drupal支持中文 /7
1.3.1 把中文設為默認語言 /7
1.3.2 安裝中文語言包 /8
1.4 常見配置 /10
1.4.1 設定默認時區 /10
1.4.2 設定默認的日期格式 /11
1.4.3 設定檔案系統 /12
1.5 添加內容 /13
1.5.1 覆蓋層 /13
1.5.2 article和basic page /14
1.5.3 添加一篇basic page /14
.1.5.4 添加一篇article /17
1.5.5 為article添加評論 /18
1.6 實現頁腳區域 /19
1.6.1 添加“版權資訊”區塊 /20
1.6.2 創建選單並添加選單連結 /23
1.7 添加一個用戶角色“編輯” /32
1.8 安裝所見即所得編輯器 /34
1.8.1 ckeditor模組 /35
1.8.2 安裝模組 /35
1.8.3 設定ckeditor /38
1.8.4 設定檔案上傳 /40
1.9 小結 /42
第2章 為圖書添加各種欄位 /43
2.1 下載並安裝常用模組 /44
2.1.1 模組之間的依賴關係 /44
2.1.2 啟用相關模組 /45
2.2 添加圖書內容類型 /45
2.3 為圖書添加對應的欄位 /46
2.3.1 把“標題”重命名為“書名” /47
2.3.2 把正文標籤改為“內容簡介” /48
2.3.3 設定圖書封面欄位 /48
2.3.4 添加作者欄位 /48
2.3.5 添加isbn、包裝、紙張、開本等欄位 /53
2.3.6 添加版次、印次、頁數、字數等欄位 /54
2.3.7 添加出版時間、印刷時間欄位 /55
2.3.8 添加作者簡介、編輯推薦、目錄、書摘等欄位 /57
2.3.9 添加出版社欄位 /57
2.3.10 添加中圖法分類欄位 /60
2.3.11 添加圖書分類欄位 /63
2.3.12 使用field group將欄位歸類 /66
2.3.13 用field collection處理作者欄位 /68
2.4 管理作者欄位的顯示 /70
2.5 使用node clone快速添加測試數據 /73
2.6 小結 /74
第3章 設定路徑別名、圖片樣式、列表 /75
3.1 使用pathauto模組設定路徑別名 /76
3.1.1 pathauto的管理界面 /76
3.1.2 手動添加路徑別名 /77
3.1.3 別名模式 /78
3.1.4 配置 /81
3.1.5 批量更新路徑別名 /82
3.2 設定圖片樣式 /83
3.2.1 添加樣式50_50 /84
3.2.2 圖片效果 /84
3.2.3 圖片樣式的用途 /86
3.2.4 imagecache actions模組 /87
3.3 使用views創建列表 /89
3.3.1 添加內容類型“站內公告” /89
3.3.2 views的管理界面 /89
3.3.3 創建視圖“站內公告” /90
3.3.4 views的全局配置 /101
3.3.5 views全局高級配置 /102
3.3.6 使用views創建圖書列表 /103
3.4 小結 /109
第4章 製作主題 /110
4.1 主題系統的管理界面 /111
4.1.1 主題設定 /112
4.1.2 bartik主題的設定 /113
4.2 主題zen /114
4.2.1 zen的目錄結構 /115
4.2.2 基於zen製作子主題 /116
4.2.3 調整頁腳的css /117
4.3 定製圖書節點模板 /121
4.3.1 確定大致的目標輸出 /121
4.3.2 創建node--book.tpl.php模板檔案 /123
4.3.3 預處理函式 /124
4.3.4 把靜態html放到node--book.tpl.php中 /125
4.3.5 嵌入動態的php變數 /126
4.3.6 最終的模板檔案 /127
4.3.7 欄位的其他輸出方式 /130
4.3.8 定製圖書欄位模板 /130
4.3.9 設定人民幣符號 /131
4.3.10 為日期欄位選擇輸出格式 /132
4.3.11 調整css /133
4.4 views覆寫實例一 /136
4.4.1 field collection views的模板覆寫 /136
4.4.2 主題信息對話框 /137
4.4.3 定製views模板 /138
4.4.4 views-view.tpl.php覆寫 /139
4.4.5 通過配置去除html /140
4.4.6 views-view-unformatted.tpl.php覆寫 /141
4.5 views覆寫實例二 /142
4.5.1 創建views-view--books.tpl.php檔案 /143
4.5.2 創建views-view-unformatted--books.tpl.php檔案 /144
4.5.3 創建views-view-fields--books.tpl.php檔案 /144
4.5.4 去除欄位的默認wrapper輸出 /146
4.5.5 views中作者欄位的設定 /146
4.5.6 調整css /146
4.6 小結 /149
第5章 製作首頁 /150
5.1 待做的任務 /151
5.2 首頁幻燈 /152
5.2.1 添加首頁幻燈內容類型 /152
5.2.2 使用field validation驗證url的有效性 /152
5.2.3 添加測試內容 /154
5.2.4 創建視圖frontbanner /154
5.2.5 設定views slideshow /155
5.2.6 為首頁幻燈內容類型添加分頁欄位 /158
5.2.7 使用views自帶的計數器 /159
5.3 使用flag實現推薦、收藏功能 /159
5.3.1 flag的創建表單 /159
5.3.2 flag的具體設定 /160
5.3.3 添加“推薦”功能 /161
5.3.4 導出flag /162
5.3.5 在模板裡面輸出flag連結 /163
5.4 首頁圖書區塊視圖 /163
5.4.1 創建視圖front books /163
5.4.2 設定“熱門圖書” /165
5.4.3 設定“編輯推薦” /166
5.4.4 設定更多連結 /168
5.5 首頁分類導航 /168
5.5.1 添加圖書分類導航 /170
5.5.2 覆寫連結的路徑 /173
5.5.3 去除多餘的html /174
5.6 使用panels搭建首頁 /174
5.6.1 手工創建panels布局 /175
5.6.2 用panels定義自己的首頁 /177
5.6.3 調整首頁幻燈的樣式 /182
5.6.4 調整首頁的css /184
5.6.5 調整主導航選單的樣式 /186
5.6.6 製作自己的logo /187
5.7 小結 /188
第6章 ubercart基本配置 /189
6.1 “購買”連結 /190
6.1.1 cart links模組 /190
6.1.2 購物車連結的設定 /192
6.2 設定支付寶 /193
6.3 結算頁面 /195
6.4 禁用沒用的結算窗格 /197
6.5 支持中國的地址格式 /199
6.6 設定運送方法 /203
6.6.1 中國化的uc_customquote模組 /203
6.6.2 使用rules控制運費方法的顯示條件 /204
6.6.3 添加其他快遞運送方法 /208
6.6.4 設定默認的度量單位 /210
6.6.5 運費計算效果 /211
6.7 設定財付通 /213
6.8 設定網匯通 /214
6.9 線下銀行匯款/銀聯卡轉賬 /215
6.10 訂單管理 /217
6.10.1 查看訂單 /217
6.10.2 編輯訂單 /219
6.10.3 訂單配置 /221
6.11 產品配置 /224
6.12 購物車配置 /225
6.13 小結 /225
第7章 實現站內搜尋 /226
7.1 核心自帶的搜尋 /227
7.2 通過views實現搜尋 /232
7.3 實現圖書高級搜尋 /235
7.4 集成apachesolr /241
7.4.1 配置solr伺服器 /242
7.4.2 修改solr配置檔案 /245
7.4.3 支持中文分詞 /249
7.4.4 只搜尋圖書 /252
7.4.5 搜尋關鍵字為空時顯示所有 /254
7.4.6 實現分面功能 /255
7.4.7 改進搜尋條目的顯示 /257
7.4.8 把apachesolr設為默認搜尋 /263
7.4.9 改進搜尋框的樣式 /263
7.4.10 使用apachesolr_stats實現熱門搜尋 /265
7.5 小結 /266
第8章 添加社區互動功能 /267
8.1 實現書評功能 /268
8.1.1 創建內容類型書評 /268
8.1.2 設定普通用戶的許可權 /271
8.1.3 五星投票 /272
8.1.4 書評的顯示 /273
8.1.5 圖書平均評分的實現 /276
8.1.6 控制html輸出 /279
8.2 實現商品問答功能 /285
8.2.1 創建內容類型“商品問答” /285
8.2.2 創建商品問答列表視圖 /286
8.3 積分 /287
8.3.1 寫書評掙積分 /288
8.3.2 發評論送積分 /292
8.3.3 刪除書評、評論時減積分 /293
8.3.4 訂單完成送積分 /294
8.3.5 把積分和角色關聯起來 /297
8.3.6 為不同角色設定不同的價格 /300
8.4 小結 /305
第9章 做個panels控 /306
9.1 使用panels解決許可權控制問題 /307
9.1.1 創建內容類型“資源” /307
9.1.2 使用transliteration模組轉換檔案名稱字 /309
9.1.3 使用panels控制匿名用戶查看下載資源 /311
9.2 panels與views content panes /314
9.3 使用panels控制區塊的顯示 /318
9.3.1 使用panels覆寫圖書詳細 頁面 /321
9.3.2 使用panels覆寫幫助中心詳細頁面 /323
9.3.3 使用panels覆寫站內公告詳細頁面 /324
9.3.4 使用panels覆寫頁腳導航詳細頁面 /325
9.3.5 使用panels覆寫站內公告列表頁面 /325
9.3.6 使用panels覆寫圖書列表頁面 /331
9.4 書評和問答 /333
9.4.1 新增一個panels布局 /334
9.4.2 準備要顯示的內容 /336
9.4.3 創建書評/問答的panels頁面 /337
9.4.4 使用panels覆寫書評/問答的節點詳細頁面 /342
9.4.5 覆寫書評/問答頁面的外觀 /345
9.5 小結 /352
第10章 定製個人主頁 /354
10.1 個人資料 /355
10.1.1 為profile添加欄位 /357
10.1.2 創建顯示profile的視圖和panel頁面 /360
10.1.3 把用戶頭像放到profile裡面管理 /364
10.2 導入省市縣數據 /365
10.2.1 創建導入器 /366
10.2.2 csv數據加工 /373
10.2.3 導入數據 /375
10.3 賬戶管理 /379
10.3.1 編輯個人資料 /379
10.3.2 我的積分 /383
10.3.3 收貨地址簿 /387
10.3.4 我的預付款 /391
10.3.5 編輯賬戶信息 /394
10.3.6 我的賬戶 /395
10.4 訂單管理 /396
10.4.1 我的訂單 /396
10.4.2 已購圖書 /397
10.5 我的社區 /400
10.5.1 我的評論 /401
10.5.2 我的書評 /402
10.5.3 我的收藏 /403
10.5.4 讀過的書 /406
10.5.5 想讀的書 /407
10.5.6 個人首頁 /408
10.5.7 去掉標籤欄 /411
10.6 小結 /412
第11章 drupal seo /413
11.1 seo checklist模組 /414
11.1.1 seo checklist介紹 /415
11.1.2 工具 /415
11.1.3 page title /416
11.1.4 url 路徑 /420
11.1.5 創建搜尋引擎賬號 /425
11.1.6 追蹤你的訪客 /426
11.1.7 頁面內容 /430
11.1.8 清潔html代碼 /434
11.1.9 將站點提交到搜尋引擎 /436
11.1.10 社會化媒體 /441
11.1.11 使用mollom反垃圾 /443
11.1.12 地理 /451
11.1.13 性能 /451
11.1.14 附加任務 /458
11.2 小結 /458
第12章 seo與性能最佳化 /459
12.1 麵包屑導航 /460
12.1.1 drupal麵包屑的解決方案 /461
12.1.2 自定義麵包屑 /462
12.1.3 設定麵包屑 /467
12.1.4 舉一反三 /474
12.2 連結、圖片的最佳化 /477
12.2.1 在views中為連結圖片設定屬性 /478
12.2.2 menu attributes模組 /482
12.3 相關推薦(基於solr) /483
12.4 性能最佳化 /485
12.4.1 views的快取 /485
12.4.2 panels的快取 /487
12.4.3 entity cache /488
12.4.4 性能監測 /489
12.4.5 opcode快取 /491
12.4.6 控制模組的數量 /493
12.4.7 memcache /494
12.5 小結 /497
第13章 商品數據的導入導出 /498
13.1 使用feeds導入圖書信息 /499
13.1.1 ubercart的庫存系統 /499
13.1.2 添加圖書唯一編號欄位 /501
13.1.3 “庫存”和“收藏人氣”動態化 /503
13.1.4 添加擴展欄位 /504
13.1.5 建立feeds的導入器 /507
13.1.6 feeds與field collection模組的整合 /510
13.1.7 ubercart feed mappers /511
13.1.8 設定unique target /511
13.1.9 使用feeds tamper進行預處理 /512
13.1.10 使用feeds導入圖片 /516
13.1.11 準備導入的數據 /517
13.1.12 導入 /517
13.1.13 使用vbo批量更新數據 /519
13.1.14 庫存的更新與同步 /524
13.2 商品數據的導出 /526
13.2.1 google購物搜尋 /526
13.2.2 使用views data export導出csv數據 /529
13.2.3 使用views data export導出xml數據 /532
13.3 小結 /535