聊聊 WordPress 佈景主題與 Starter Theme 的設計

近日準備要把我原來從空白佈景所建構的 WordPress 部落格來個大幅度的版面變更。

起碼花了一兩個星期時間來了解關於 WordPress 佈景主題 (Theme)這個領域的相關資訊。老實說,還挺有趣的,我才知道原來有諸多國內外的工作室專門在開發佈景主題並當成產品販售的。尤其若上架到 ThemeForest 這個平台,比較熱門的產品可以賣到多達上萬套以上,而每套價錢大約從 US$30~99 美金的都有,而且大都還是只有提供一年的免費服務更新與諮詢。難怪乎這市場已經可以大到養活許多專事開發 Web 端佈景主題開發的設計公司了。

我現在輔導的客戶單位其中有一家就是花了上百美金購買了一套可以應用在企業網站建構的佈景主題,所以可以就近觀摩。不過我發現到,似乎不太適合我,因為用了某一家的 Theme 後,雖然可以快速的建構網站與內容,但會被「綁架」,因為網站的基礎建設/工具幾乎都依賴這套佈景主題,極難抽換掉。

原來這些佈景主題的對象比較偏向是完全不用 Coding,連 HTML/CSS 等都不用了解 (但其實我發現還是需要有些基礎知識),只要專注利用其工具與所提供的元件,快速的「兜」起來頁面,組成豐富的內容就可。

所以光是所謂的「Page Builder」就相當講究,而且真的很容易短短幾分鐘內就可以組出排版相當豐富的頁面出來。我自己也安裝了一套免費且相當簡潔許多的「SiteOrigin」,真的比從無到有自行排版的方式簡單太多太多了。

閱讀全文 »

[架站日誌] 讓 WordPress 留言機制更具彈性-改用 DISQUS

使用 WordPress 內建的留言系統已經好幾年了。因為近幾年社群包括 Facebook, Google+, Twitter, Yahoo 等用戶相當普及,而直接使用該社群的帳號登入討論區/部落格系統等已是常態性了。這種也算可稱之為另類的「Single Sign On」,可以讓「登入」這種驗證的動作更為簡便。

不過 WordPress 的內建留言系統要能支援多類社群帳戶的登入,那就必須要安裝外掛,相當麻煩,管理也不便。

這幾年快速竄起的國外新興留言系統服務網站-DISQUS,其用戶量已高達上千萬,它的普及程度,不僅支援絕大部分的部落格系統,甚至連 Sphinx 文檔管理系統,也可以直接掛上 DISQUS 評論機制,如此就可以很便利的為每一篇文章加上留言評論機制。

DISQUS 對 WordPress 系統的支持最為積極,不是只有取代掉原來的留言功能而已,還可以將原已所有的留言全給匯出 (export)至 DISQUS 的雲端資料庫內,而且安裝好 DISQUS for WordPress 外掛 (plugin)後,經由簡單的設定,連版型都不用更改,就可以直接上線使用,而這也正是讓 WordPress 站長可以放心置換掉的主要原因。

晚上花了兩個小時左右,研究並開始安裝設定,的確很容易就把內建的 WordPress 留言系統置換為 DISQUS 了。

不過現在有個問題,Sidbar (側邊攔) 上的「Disqus Recent Comment Widget」卻無法正常顯示,即使我已經按照說明申請 API Key 並填入外掛的 Widget 設定欄內,也正常填入了網站的 short name (unique name),但還是沒有任何留言的顯示。

再觀察個兩天看看,這問題遲早是要解決的。

※ 其它參考資訊
 o DISQUS 整合性留言管理系統 (支援 WordPress、Blogger)。
 o Disqus 取代內建的迴響系統,功能更多更強大 (內有詳細的安裝步驟說明)。
 o DISQUS:部落格留言版新選擇,支援Google, Twitter, Facebook, Yahoo, OpenID帳號登入。
 o DISQUS 的應用思考-網站留言回覆管理工具。
 o 實時評論系統Disqus獲1000萬投資,國外火熱國內無抄襲者。

[WordPress] 幾個主要版面功能的設定備忘註記

一、側邊欄列出 RSS 訂閱方式 :

跟隨潮流與為了網站訂閱功能的可攜性,所以也申請了 "Google FeedBurner",讓自己的網站有一個唯一 (unique)的訂閱網址。

透過 FeedBurner 訂閱的方式有兩種: 以 Email 訂閱,或直接以 RSS 閱讀器訂閱。

另外我仍提供了 wordpress 預設的 RSS 訂閱方式。兩者的差別好像 (我也不清楚)是後者在遇到 {閱讀全文} 的標籤前,都可以列出本文的內容,而不像 feedburner 需事先設定本文的長度。

我的 RSS 訂閱網址為:
 o FeedBurner: http://feeds.feedburner.com/kenming
 o WordPress: http://www.kenming.idv.tw/feed

實現的效果參考下圖:
Sidebar RSS 訂閱提供

閱讀全文 »

重新設計本站 WordPress Theme 版面

我在約一年半前從 b2evolution 轉移到 wordpress 平台時,採用的版面是屬於「三欄式」,左邊為內容區 (content)、右邊兩側為 sidebar 側邊欄。而且,左邊的內容區寬度可以隨 browser 水平寬度的調整而變動。

當時頗以為這樣很富有彈性,尤其在 20" 以上的螢幕上觀看瀏覽內容區的視覺效果覺得不錯。但是沒想到當我在外教課從外連回 Blog,透過筆電連接投影機投射出來時的效果才發現到甚差,因為投機影一般最多僅到 1024x768,還有一些是 800x600 的尺寸,結果導致內容區的寬度變得極為狹窄,甚至貼在其內的影像圖片無法完全顯示出來。

這次就不想變甚麼花樣了,乖乖地採用固定式的版面,以 1024x768 為基準,並將其置中。側邊攔 (sidebar)改回一個置於右側,儘量不要放上太過花俏的側邊資訊;左側則是主要內容,構成比較常見的兩欄式版面。

CSS 樣式完全自己來、重新再寫過。不過在整個版面設計的期間,我起碼參考過 10數個以 wordpress 架站的部落格的版面設計。然後又委請 Cathy 的專任美工幫我設計了一個網站 Banner,除了表達出綠意清新的感覺之外,還特別放上一隻以前我網站名字 (矇矇的秘密基地)的黃金鼠卡通主角。

這次整個版面的色調期能表達以 "禪 (Zen)" 的意境為主,背景色以乳白色為底、框線則以土金黃色為線條。儘量能表達出整個網站的簡單、素雅為主。在此也貼個 screenshot 作為紀念。

kenming_wordpress_blog_screenshot_20100727

※ 延伸參考
 o Kenming's 三欄式版面 css template

[系統升級] WordPress to 2.8 and MySQL to 5.0

昨晚靜悄悄地把 WordPress 系統給升級了 (from 2.71 to 2.8) ……

其實,只要在後台單鍵點個選項,Wordpress 就全傻瓜式的自動幫你完成升級。 期間所有的模組 (plugins) 也完全正常運作,沒有相容性的問題;而且許多模組也似乎順應 2.8 的升級,很快地同時釋放出更新版本,所以也是單鍵傻瓜升級即可。 當初選擇轉移到 WordPress 平台是對的,平台的管理與升級,實在輕鬆簡單太多了。 🙂

另外,ISP 這邊,Why3s 前兩個月主動徵詢我的意見,看要不要轉移主機,因新主機效能更佳,MySQL 版本也是較新的 5.0。 這當然好啊,唯一稍稍擔心的是原來是使用 MySQL 4,不知道是否會有資料庫相容性的問題。 不過從 MySQL 4,透過 phpmyadmin Dump Blog 資料,再倒入 MySQL 5,一切完全正常! 不過我的資料檔 (純文字檔) 有 70餘 MB 之大,而 Why3s 這邊的 phpmyadmin 上載 dump 檔最大限制為 50 MB,所以從下載到上傳,改用 phpmyadmin 預設 .gzip 壓縮,整個過程也是相當順利。 (不過注意的是,改用 .zip 卻是不行倒入。)

目前新系統的主要應用伺服器版本為:

  • Apache 2.2.11
  • PHP 5.2.6
  • MySQL 5.0.77 -community

{Blog 系統轉移} b2evolution migrate to wordpress import script.

從某一個應用系統 (或資料庫系統)要把資料轉移到另一個應用系統 (或資料庫系統),這個轉移的過程稱之為 “Migration” (相對地,若是同一系統的版本更新,則稱之為 Upgrade)。

上一個月,要從原來 b2evolution Blog 系統轉移 (migrate)到 wordpress 系統時,就如同當初我從 MT 轉移到 b2evolution 一樣,官方的系統均有提供 import (載入) 的 script 檔。 只是, MT 轉 b2evolution 時,當時因為資料結構比較單純,所以完全不用作任何修正,透過 import 工具程式一下子就轉好了;但是,這兩三年來, b2evolution 系統相當積極,版本更新極快,而每一次大版本的更新,必然會變動到 DB Schema,這使得 wordpress 所提供可以 import from b2evolution 的 script 檔,不可能不作修改就可以順利完成轉移作業。

wordpress 官方所提供對各大 Blog 系統的 import script 檔在此:Importing Content。 不過,我真的挺懶,想說若能找到無痛地可以從我現在 b2 1.10.3 版本 → wordpress 2.71 的網友加持修改版,那就更省事了。 結果呢,花了大半天的時間,是有找到啦,像這篇: Import From B2evolution(2.4.6) to WordPress (2.7)。 只是,要收費耶!! 含售後客服要價 50 USD。 其實啊,這價錢是算便宜的啦,當初我擔任某家公司的 Oracle DBA 時,幫企業客戶作轉檔的話,起碼是 10 數倍以上收費起跳的呢。

不過,想想還是乾脆又自己來動手 DIY 好了。 其實轉檔的原理相當簡單,就是把 Source Schema 對應 (mapping) 到 Target Schema 就對了。 b2evolution 有 31 個表格;wordpress 則只有 10 個 (非常欣賞它的結構簡潔)! 怎麼會差這麼多? 主因就是前者是被設計來服務多個部落格用戶的,而後者僅設定單一的部落格,所以前者儲存了非常多的統計數據,而這些,其實是不用轉移的。

轉移的核心會是什麼? 當然就是本文內容了。 本文就是包含 Post 內文 (content)與迴響 (comment),一篇內文會包含 0 到 多篇迴響,非常典型的 “Master-Detail” 表格結構,一般就是會有兩個表格個別儲存並以 Key (primary-key to foreign key)來關聯了。 所以只要找出含有 “_post” 字串的表格,大部份就是儲存 Post 內文的主表了。 再以此為中心,把一些如類別 (category)、帳號等額外資訊,給一一的加進來即可。

轉檔的寫法百百種,可以利用 stored-procedure、利用 C#/VB.NET、PHP、Perl 等機制來轉寫轉檔程序。 事實上,對資料結構與 SQL 語法精通的真正高手來說,只要寫個 SQL 陳述 (statement)甚至就可以轉移了。 嗯,我那個 partner Ringle 就是精通此道,他對資料庫的掌握度,我仍是沒有看到一個比他更強悍的。 可惜,他可不幫我作這種小事,而他收費可更是不便宜。 所以呢,我還是又繞回來,下載回來 wordpress 官方的 import script 程式,當然是利用 php 撰寫的,再以此作為轉移程式的 “骨架 (skeleton)”,然後慢慢地調整 SQL 陳述,修改表格與欄位、資料型態等。 呵呵,比想像得簡單,我採用漸進調整的方式作業,大概反覆轉移了有四、五次之多,至最終轉到我滿意正確的結果,大約也才耗上半天的時間而已。

閱讀全文 »

軟體思維顧問

專職軟體輔導與教育訓練的獨立顧問。輔導企業資訊單位如何有效組織系統開發與維護;輔導開發人員達成有效的專業分工。傳授如何把軟體作軟 (Keeping Software Soft)的技能,得以提昇系統的彈性/延展,並進而創造系統的再利用價值。

Personal