Toggle main menu visibility
下載輕鬆架
套件下載
使用手冊
發問討論
網站地圖
:::
登入
登入
帳號
密碼
登入
:::
所有書籍
「用AI學PHP8」目錄
MarkDown
3-2 建立前、後台樣板檔並套用之
1. 學好程式的幾個建議
1-1 安裝PHP運作環境
1-2 安裝 VSCode 開發工具
1-3 安裝 Composer
1-4 關於PHP8
1-5 上課範例及需求
1-6 研習時需要的學習心態
1-7 建立專案目錄
2. 開始動手做界面
2-1 請AI幫我們做前端界面
2-2 請AI幫我們做滑動圖輪播區
2-3 將首頁和滑動圖整併在一起
2-4 請AI製作文章發布界面
3. 精修完整界面樣板
3-1 安裝Smarty樣板引擎
3-2 建立前、後台樣板檔並套用之
3-3 將主樣板檔拆分成小樣板
3-3-1 美化頁首樣板檔 header.tpl
3-3-2 優化導覽列 nav.tpl
3-3-3 統一主內容樣式 main.tpl
3-3-4 微調一下側邊欄
3-3-5 修改頁尾
4. 讓表單開始有作用
4-1 傳入變數讓程式知道現在要做什麼
4-2 根據不同動作自動載入相對應樣板
4-3 修改編輯表單使之可以送出資料
4-4 製作共同頁首檔 header.php
5. 將資料存到資料庫
5-1 建立資料庫連線
5-2 用AI來產生表單儲存功能
5-2-1 接收表單的值
5-2-2 用PDO寫入資料庫
5-2-3 建立縮圖並產生json資料
5-2-4 檔案上傳與接收
5-3 完成整個新增流程
6. 製作顯示單一文章的功能
6-1 將資料庫取出的值帶入樣板
6-2 讓滑動圖可以真的運作
6-3 套用真實圖片到輪播圖中
7. 製作首頁列表功能
7-1 取得指定的新聞資料數
7-2 完成首頁輪播圖及新聞列表
7-3 製作文章摘要
7-4 加入文章分頁功能
7-5 完成側邊欄的近期新聞
8. 開始加入管理功能
8-1 讓系統記住是否為管理員
8-2 製作登入、登出功能
8-3 加入管理工具功能
8-4 製作編輯功能
8-5 初步完成更新功能
8-6 完成圖片管理
8-7 加入刪除功能
9. 完成各種小細節
9-1 完成點閱數功能
9-2 用影片替換輪播圖
9-3 加入搜尋功能
9-4 點擊學校可以列出該校文章
9-5 產生內嵌語法
3-3-1 美化頁首樣板檔 header.tpl
用AI學PHP8 ======== ### 一、為什麼要拆分? 1. 讓版面更清爽易懂 2. 可以更彈性的依照需求引用 3. 若是有多個主樣板,可以共用子樣板,而無須重複製作 4.
當然,不拆也是可以的
5. 接下來的動作先以 `index.tpl` 為主,`admin.tpl` 也比照辦理即可 ### 二、建立檔頭樣板檔 `meta.tpl` 1. 修改 `templates/index.tpl` 將整個檔頭都獨立成 `templates/meta.tpl`,並設定一個變數 `{$webTitle}`,以便傳入頁面標題: ```markup
{$webTitle}
``` 2. 然後在 `index.tpl `中,先用 `assign` 定義一個樣板變數` webTitle`,並用 `value `指定其值。原檔頭位置用 `{include file='樣板檔'} `的方式引入 `meta.tpl `樣板 ```markup {assign var="webTitle" value="龍崎國小校園藝文活動新聞"} {include file="meta.tpl"} ``` ### 三、建立頁首樣板檔 `header.tpl` 1.
修改 `templates/index.tpl` 將整個檔頭都獨立成 `templates/header.tpl`,並標題改為變數 `{$webTitle}`: ```markup
{$webTitle}
``` 2. 然後在 `index.tpl `中,原頁首位置用 `{include file='樣板檔'} `的方式引入 `header.tpl `樣板 ### 四、建立導覽列樣板檔 `nav.tpl` 1. 將導覽列部份獨立成 `templates/nav.tpl`,如: ```markup
首頁
校園地圖
產學合作網站
``` 2. 然後在 `index.tpl `中,原導覽列位置引入 `nav.tpl `樣板 ### 五、建立主內容區樣板檔` main.tpl` 1. 主內容區也存成` templates/main.tpl`,如: ```markup
...略...
...略...
...略...
``` 2. 然後在 `index.tpl` 中,原主內容區位置引入 `main.tpl` 樣板 ### 六、建立側邊欄樣板檔` aside.tpl` 1. 將側邊欄部份也存成` templates/aside.tpl`,如: ```markup
回上方神按鈕
快速登入
近期新聞
2024-07-31 【南市新聞】酷暑高溫...
2024-07-30 【臺南新聞】大臺南...
2024-07-20 【活動訊息】府城歸...
``` 2. 然後在 `index.tpl` 中,原來放置內容的位置引入 `aside.tpl` 樣板 ### 七、建立頁尾樣板檔` footer.tpl` 1. 將側邊欄部份也存成` templates/footer.tpl` 2. 自己載入的 js 檔的部份設成變數` {$my_js}`,因為前後台需載入不同的 js 檔,如: ```markup ``` 3. 然後在 `index.tpl` 中,原來放置內容的位置引入 `footer.tpl` 樣板 ### 八、建立發布新聞的樣板檔 `create.tpl
` 1. 編輯 `templates/admin.tpl `我們先將發布表單也拆分出來,將標題和表單的部份獨立存為 `templates/create.tpl` ```markup
文章編輯表單
新聞標題
新聞內容
相關連結
發布者
學校名稱
報導日期
上傳圖片
Youtube影片連結
上傳種類
上傳圖片 (僅限jpg及png)
Youtube影片網址
提交
``` ### 九、最後的主樣板檔` index.tpl` 1. 最後 `index.tpl` 整個看起來像這樣,是不是清爽多了? ```markup {assign var="webTitle" value="龍崎國小校園藝文活動新聞"} {include file="meta.tpl"} {include file="header.tpl"}
{include file="nav.tpl"}
{include file="main.tpl"}
{include file="footer.tpl" my_js="index.js"} ``` 2. `admin.tpl `大致一樣,只有主內容和自己載入的 js 檔的部份不一樣 ```markup {assign var="webTitle" value="龍崎國小校園藝文活動新聞"} {include file="meta.tpl"} {include file="header.tpl"}
{include file="nav.tpl"}
{include file="create.tpl"}
{include file="footer.tpl" my_js="admin.js"} ``` 3. 最後重新整理一下畫面,至此,只要畫面沒有變化就是正確的!