部落格改版,以 Laravel 改寫

部落格改版,以 Laravel 改寫

Image by Kev from Pixabay

我有一個夢:要用程式語言打造自己的部落格

  唸書的時候接觸到網際網路,很好奇網頁是怎麼製作出來的,後來購買書籍自學後用 HTML 語法做了自己的部落格。當兵回來之後買了 PHP 書籍想將部落格用程式語言改版成動態網站,結果因為學習不夠專注,遇到問題不曉得怎麼找答案…等等大大小小事情而中斷學習。

  之後接觸到更名前為 plog 的 LifeType,讓網站能透過 PHP 及 MySQL 的運作呈現(當然不要忘了 Apache 運作 Web 服務),然後我認識了 Joomla! 這個知名的 CMS,用其發方便的功能建立部落格以及分享 Joomla! 相關資訊的《華燈初上》。

  因為職涯的關係我重新學習 PHP 程式設計,也認識了 Laravel 這個著名的 PHP 運作框架,接著透過製作 side project 的方式磨練自己的 Laravel 認知:ffxitoolbox(ffxitoolbox.aboluo.com)是 Final Fantasy 合成資料整理網站;larablog(larablog.abokuo.com)則是說明用 Laravel 建立部落格系統的專題網站。

  larablog 專案的完成讓我嚐到用 Laravel 建置網站的甜頭,所以回歸到最初:我想完成二十幾年前沒完成的心願,用 PHP(Laravel)建置自己的部落格。

共通方案與量身打造的區別

  用 Joomla! 建置網站可以讓你在短時間內就完成具備完整前後台機制的內容管理平台,加上眾多擴充套件及佈景主題的支援,常見類型的網站都能透過 Joomla! 完成。

  也因為上述需求的關係 Joomla! 在規格設計上就趨向「多人多用途」,像是部落格這類重視內容發佈,但是卻不一定需要完整會員權限架構的應用來說,就像是殺雞用牛刀:不是不行,而是大材小用。

  用 Laravel 打造自己的部落格系統的用意,除了可以依自己需求建構網站運作架構之外,也藉此檢視自己對 Laravel 的瞭解到哪裡,從而累積自己在 Laravel 的知識與經驗。

  larablog 的建置概念是:驗證自己是否能打造部落格系統,建置的過程記錄就是 larablog 的網站文章。自己的部落格建置時以 larablog 的架構加以擴充,大部分的設計都和 larablog 一樣,一邊觀看過去在 larablog 發表的文章一邊製作,心情是愉快的。

網站文章移轉過程是個甜蜜的負擔

  文章的轉移過程並不是透過 SQL 指令匯入匯出,而是一篇一篇複製貼上。會這樣做的原因有兩個:兩個系統間的欄位定義有很大差別,如果文章數量達到數百篇以上應會考慮用程式機制轉換,而這次作業估計會轉移的文章不會超過百篇。

  另一個逐篇轉移的原因是部落格較早的文章在 HTML 標籤使用上,像是標題或是引用格式上較為隨意,圖片路徑也和新系統定義的位置不同,所以得一篇篇改。結婚成家又有了小孩之後,只能透過零碎時間一點一點進行作業,整理文章原始碼的標籤雖然很麻煩,不過看著過去的生活及活動文章也慶幸自己有做記錄。

部落格是自己的知識平台

  看到某個電腦硬體,或是對某個網路技術感興趣,加上自認對文字表達有一定水準,就會想把接觸、把玩的過程以圖文或是影片的方式記錄下來,然後就成為部落格的一篇篇文章。

  因為是自己管理的網站,呈現的內容及方式都可以自己決定,再依照 SEO 的基本要求建置網站及內容架構就能讓搜尋引擎製作索引,進而讓有興趣的人找到你的部落格,藉此認識更多同好。

  在社群網站我可以認識很多人,但是要分享自身心得還是習慣透過部落格文章的方式,在社群網站的訊息串流中看到有興趣的項目,也是導向某個網站的某篇文章,不是嗎?

  部落格是很老派的網路應用,依舊好用。

文章作者:A-Bo Lee
作者大頭照

居住在臺灣的 Joomler,期望以程式設計、開放原碼推廣活動收入養活一家老小。
35 歲後改姓李,id 作為曾為郭姓的證明。
FFXI:Abokuo@Sylph鯖、よろしくです。

1 篇回應

  1. Image
    cuadro personalizado2024-03-24 14:28:38

    Your means of describing the whole thing in this
    article is actually fastidious, all be able to easily
    understand it, Thanks a lot.

看完文章有什麼想法嗎?利用下面表單告訴作者吧

請先閱讀服務條款隱私權政策,送出回應意即同意前述文件。標記 * 欄位請務必填寫,電子郵件信箱僅作驗證使用,不會顯示在回應中。