<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>J Solutions Blog</title>
	<atom:link href="http://www.jsolutions.biz/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jsolutions.biz/blog</link>
	<description>J Solutions 是一間香港網頁設計公司，是少數提倡遵照網頁標準，及把 SEO 原則運用在網頁設計上的公司。</description>
	<lastBuildDate>Thu, 11 Aug 2011 04:34:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>用開源系統是否只為了省錢？</title>
		<link>http://www.jsolutions.biz/blog/cms/%e7%94%a8%e9%96%8b%e6%ba%90%e7%b3%bb%e7%b5%b1%e6%98%af%e5%90%a6%e5%8f%aa%e7%82%ba%e4%ba%86%e7%9c%81%e9%8c%a2%ef%bc%9f/</link>
		<comments>http://www.jsolutions.biz/blog/cms/%e7%94%a8%e9%96%8b%e6%ba%90%e7%b3%bb%e7%b5%b1%e6%98%af%e5%90%a6%e5%8f%aa%e7%82%ba%e4%ba%86%e7%9c%81%e9%8c%a2%ef%bc%9f/#comments</comments>
		<pubDate>Thu, 11 Aug 2011 04:34:17 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[內容管理系統 CMS]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=539</guid>
		<description><![CDATA[最近 osCommerce 又爆發了大規模被駭事件，這系統問題不少，絕對是說服客戶不要用開源系統的經典教材！ 系統維護相當重要 筆者並非想替 osCommerce 開脫，然而很多時系統的漏洞是早已公布，可惜很多網站都欠缺維護，未能及時修補系統的弱點而成為入侵的對象。為什麼網站沒有維護？說穿了只為省錢。很多公司都有一個心態，既然網站做好了運作又正常，為什麼要花錢讓人維護呢？要知道，無論系統最初寫得怎好，總會有忽略的地方，或是經多人使用後，錯誤的操作破壞了系統的安全保護 (我懷疑 osCommerce 的用家不小心刪除了 / 轉網存時忘記了上載 .htaccess 檔的情況並非罕見)，因此系統維護是必須的，不論使用的是專人設計系統還是現成的系統，否則將來付出的代價更大。 謹慎揀選系統 在數年前，無可否認 osCommerce 是唯一免費、又可根據自己的需要而自由修改的購物網站系統，可惜此系統必須依靠第三方的 add-on 才可加強安全性，這令風險大增，畢竟第三方開發者未必能及時作出修補。因此在選擇合適的系統時，除了要注意功能上是否合用外，安全的對策、開發者的心態也是必須考慮的因素，基於後兩點，筆者不會推介客戶使用 osCommerce。其實以前已介紹過幾個發展得不錯的購物系統，以我所知在 WordPress 上亦大量出現新的購物車插件，都是值得考慮的。 開源真正的好處 免費並不是最重要，自由才是。自由的意思有兩面，首先是不受單一公司的限制，你可容易地找到其他公司來幫你維護系統，或再開發新功能。香港網站有一個現象，就是常會推倒再來，舊網站太爛便找人再製作。隨著網站系統發展得越來越成熟，系統的生命周期會較長，例如三大 CMS 系統，在未來幾年不會消失吧，因此推倒再來不是唯一的方法。 自由的另一個體現是用家可因應自己的需要而更改系統，事實上新的系統已越來越照顧到開發者的需要，提供 API 或本身就是一個 Framework ，令開發更容易。某些公司推說某功能只可能在自行設計的系統才做得到，這多數是騙人的，說穿了只是不願意在其他系統上開發而已。 免費以外的選擇 購物系統目前為止不像 CMS 般有 Big 3 ，如用家擔心對免費的系統信心不大，也有不少乎合上述兩項自由的條件的系統可供選擇，版權費用約是數千港幣，大部分公司也能負擔，而且通常系統包括的功能較多。例如產品、訂單資料的 import / export ，免費系統通常沒有，可能要付費購買額外插件。有些更設有 facebook inetgration，因此總成本分別未必真的很大。只可惜中文的介紹甚為缺乏，用家難以選擇。未來希望有機會推介一兩個適合香港網站使用的系統。 Permalinks:用開源系統是否只為了省錢？<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/cms/%e7%94%a8%e9%96%8b%e6%ba%90%e7%b3%bb%e7%b5%b1%e6%98%af%e5%90%a6%e5%8f%aa%e7%82%ba%e4%ba%86%e7%9c%81%e9%8c%a2%ef%bc%9f/">用開源系統是否只為了省錢？</a></p>
]]></description>
			<content:encoded><![CDATA[<p>最近 osCommerce 又爆發了大規模被駭事件，這系統問題不少，絕對是說服客戶不要用開源系統的經典教材！</p>
<p><span style="color: #800080;">系統維護相當重要</span></p>
<p>筆者並非想替 osCommerce 開脫，然而很多時系統的漏洞是早已公布，可惜很多網站都欠缺維護，未能及時修補系統的弱點而成為入侵的對象。為什麼網站沒有維護？說穿了只為省錢。很多公司都有一個心態，既然網站做好了運作又正常，為什麼要花錢讓人維護呢？要知道，無論系統最初寫得怎好，總會有忽略的地方，或是經多人使用後，錯誤的操作破壞了系統的安全保護 (我懷疑 osCommerce 的用家不小心刪除了 / 轉網存時忘記了上載 .htaccess 檔的情況並非罕見)，因此系統維護是必須的，不論使用的是專人設計系統還是現成的系統，否則將來付出的代價更大。</p>
<p><span style="color: #800080;">謹慎揀選系統</span></p>
<p>在數年前，無可否認 osCommerce 是唯一免費、又可根據自己的需要而自由修改的購物網站系統，可惜此系統必須依靠第三方的 add-on 才可加強安全性，這令風險大增，畢竟第三方開發者未必能及時作出修補。因此在選擇合適的系統時，除了要注意功能上是否合用外，安全的對策、開發者的心態也是必須考慮的因素，基於後兩點，筆者不會推介客戶使用 osCommerce。其實以前已介紹過幾個發展得不錯的購物系統，以我所知在 WordPress 上亦大量出現新的購物車插件，都是值得考慮的。</p>
<p><span style="color: #800080;">開源真正的好處</span></p>
<p>免費並不是最重要，自由才是。自由的意思有兩面，首先是不受單一公司的限制，你可容易地找到其他公司來幫你維護系統，或再開發新功能。香港網站有一個現象，就是常會推倒再來，舊網站太爛便找人再製作。隨著網站系統發展得越來越成熟，系統的生命周期會較長，例如三大 CMS 系統，在未來幾年不會消失吧，因此推倒再來不是唯一的方法。</p>
<p>自由的另一個體現是用家可因應自己的需要而更改系統，事實上新的系統已越來越照顧到開發者的需要，提供 API 或本身就是一個 Framework ，令開發更容易。某些公司推說某功能只可能在自行設計的系統才做得到，這多數是騙人的，說穿了只是不願意在其他系統上開發而已。</p>
<p><span style="color: #800080;">免費以外的選擇</span></p>
<p>購物系統目前為止不像 CMS 般有 Big 3 ，如用家擔心對免費的系統信心不大，也有不少乎合上述兩項自由的條件的系統可供選擇，版權費用約是數千港幣，大部分公司也能負擔，而且通常系統包括的功能較多。例如產品、訂單資料的 import / export ，免費系統通常沒有，可能要付費購買額外插件。有些更設有 facebook inetgration，因此總成本分別未必真的很大。只可惜中文的介紹甚為缺乏，用家難以選擇。未來希望有機會推介一兩個適合香港網站使用的系統。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/cms/%e7%94%a8%e9%96%8b%e6%ba%90%e7%b3%bb%e7%b5%b1%e6%98%af%e5%90%a6%e5%8f%aa%e7%82%ba%e4%ba%86%e7%9c%81%e9%8c%a2%ef%bc%9f/">用開源系統是否只為了省錢？</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/cms/%e7%94%a8%e9%96%8b%e6%ba%90%e7%b3%bb%e7%b5%b1%e6%98%af%e5%90%a6%e5%8f%aa%e7%82%ba%e4%ba%86%e7%9c%81%e9%8c%a2%ef%bc%9f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Apps 電郵方案</title>
		<link>http://www.jsolutions.biz/blog/internet/google-apps-%e9%9b%bb%e9%83%b5%e6%96%b9%e6%a1%88/</link>
		<comments>http://www.jsolutions.biz/blog/internet/google-apps-%e9%9b%bb%e9%83%b5%e6%96%b9%e6%a1%88/#comments</comments>
		<pubDate>Wed, 04 May 2011 09:08:05 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[互聯網]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=532</guid>
		<description><![CDATA[我們在年多前已開始免費替客戶設定 Google 提供的 Email 服務，最近才發現有公司視為一項收費的增值服務，做生意真不是我們的強項呢！ Google 這服務的正確名稱是 Google Apps，費用全免，另設兩類帳號供給商業 (功能上較多、空間較大) 及教育機構選擇。其核心服務是 Email，簡單說即是用 Gmail 系統來收發電郵，但卻可用自己的域名。除 Email 外，Google 已把大部分服務 (60多個) 加入，例如 Google Docs, Calendar, Picasa 等等的服務。免費版本的 Google Apps 最多可建立 10 個帳號。 Gmail 一直是多個免費電郵服務中公認最好的，而 Google Apps 基本上是和 Gmail 相同： 空間大：很多小公司都直接使用網站寄存提供的電郵服務，而香港網站寄存多數是網站和電郵 (及 FTP) 共同分用空間容量，多數網站寄存計劃的空間在 500M &#8211; 3G ，假如公司有數個員工需要使用電郵，每個帳號只可分到數百 MB 的空間，以現今使用電郵的習慣是嚴重不足的，這也是我們為什麼要提供多一個選擇給客戶的原因。時下很多人都用不同的設備收發電郵，大家都再不會把電郵下載，更突顯空間大的重要性。每個 Google Apps 帳號有超過 7G 容量，應能滿足大部分人的要求。 強大的 Webmail 功能：相信在電腦使用 Gmail [...]<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/google-apps-%e9%9b%bb%e9%83%b5%e6%96%b9%e6%a1%88/">Google Apps 電郵方案</a></p>
]]></description>
			<content:encoded><![CDATA[<p>我們在年多前已開始免費替客戶設定 Google 提供的 Email 服務，最近才發現有公司視為一項收費的增值服務，做生意真不是我們的強項呢！</p>
<p>Google 這服務的正確名稱是 <a href="http://www.google.com/apps/">Google Apps</a>，費用全免，另設兩類帳號供給商業 (功能上較多、空間較大) 及教育機構選擇。其核心服務是 Email，簡單說即是用 Gmail 系統來收發電郵，但卻可用自己的域名。除 Email 外，Google 已把大部分服務 (60多個) 加入，例如 Google Docs, Calendar, Picasa 等等的服務。免費版本的 Google Apps 最多可建立 10 個帳號。</p>
<p>Gmail 一直是多個免費電郵服務中公認最好的，而 Google Apps 基本上是和 Gmail 相同：</p>
<p><span style="color: #008000;"><span style="text-decoration: underline;">空間大</span></span>：很多小公司都直接使用網站寄存提供的電郵服務，而香港網站寄存多數是網站和電郵 (及 FTP) 共同分用空間容量，多數網站寄存計劃的空間在 500M &#8211; 3G ，假如公司有數個員工需要使用電郵，每個帳號只可分到數百 MB 的空間，以現今使用電郵的習慣是嚴重不足的，這也是我們為什麼要提供多一個選擇給客戶的原因。時下很多人都用不同的設備收發電郵，大家都再不會把電郵下載，更突顯空間大的重要性。每個 Google Apps 帳號有超過 7G 容量，應能滿足大部分人的要求。</p>
<p><span style="color: #008000;"><span style="text-decoration: underline;">強大的 Webmail 功能</span></span>：相信在電腦使用 Gmail 時大家也會用其 webmail 介面而不是其他電郵收發軟件，這不是因怕要設定 (事實上筆者 收發 Hotmail 及 Yahoo 時是使用電郵軟件的，因他們的 webmail 實在難用)，而是 Gmail 的 webmail 介面很好用，更提供大量設定方式和附加功能。</p>
<p><span style="color: #008000;"><span style="text-decoration: underline;">垃圾郵件過濾功能</span></span>：這點不用多說，Gmail 的 spam control 一直做得很不錯，公司電郵帳號多是公開的，更要一個效能極好的垃圾郵件過濾功能。</p>
<p><span style="color: #008000;"><span style="text-decoration: underline;">整合其他服務</span></span>：Google Docs 及 Calendar 對不少用家相當有用，特別是用手機之時，也可處理文件及約會。</p>
<p>Google Apps 的服務雖然吸引，但並非一定適合閣下使用的，其限制如下：</p>
<p><span style="color: #993300;"><span style="text-decoration: underline;">每天收件人數量限制</span></span>：這一點比較特別，Google 並非限制收發電郵的數目，而是限制發送郵件中外部收件人數量，同一封 email 發給3人就會計3個，而每天有 500 個收件人限制。假如你有需要發大量電郵，就很容易超出限制。</p>
<p><span style="color: #993300;"><span style="text-decoration: underline;">國內使用限制</span></span>：每隔一段時間，在國內使用 Google 的服務時會遇到不少困難，如果你經常需要在國內收發電郵，可能會感到很不便。</p>
<p><span style="color: #993300;"><span style="text-decoration: underline;">欠缺監察功能</span></span>：香港有些電郵服務可「偷偷地」把員工收發的電郵抄送到指定帳號作為監察之用，Google Apps 並沒有提供這服務。</p>
<p>比較可惜是執筆寫這篇文章時， Google 宣佈在5月10日起，新申請的免費帳號數量由50個減到10個，很多規模大一點的公司應該用不到了，而亦不可以部分帳號免費，部分帳號付費的形式使用。即是需要多於10個帳號的話，最少每年要支付 US$500 (留意是付費服務的帳號是有25G空間的，同類服務中仍是最平吧)。而願意付費使用的人也可留意 Microsoft 即將推出的 Office 365 服務，費用及功能和 Google Apps 相約，也是另一個可選擇的方案。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/google-apps-%e9%9b%bb%e9%83%b5%e6%96%b9%e6%a1%88/">Google Apps 電郵方案</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/internet/google-apps-%e9%9b%bb%e9%83%b5%e6%96%b9%e6%a1%88/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google +1 難以抗衡 Facebook Like</title>
		<link>http://www.jsolutions.biz/blog/internet/google-1-%e9%9b%a3%e4%bb%a5%e6%8a%97%e8%a1%a1-facebook-like/</link>
		<comments>http://www.jsolutions.biz/blog/internet/google-1-%e9%9b%a3%e4%bb%a5%e6%8a%97%e8%a1%a1-facebook-like/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 03:51:22 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[互聯網]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=528</guid>
		<description><![CDATA[據說 Google 來年的員工花紅，將和其在社交網絡上取得成績掛鈎。不論這傳言是否屬實，Google 急於在社交網絡上佔有一席的心願是眾所周知的。而最新一次嘗試是推出 「Google +1」，簡單來說，即是在搜索結果上加入一個類似 Facebook Like 的 Button，用戶可以按「+1」把有用 / 值得分享的網頁分享給「朋友」(Google Talk、 Gmail contacts、 Google Reader 及 Google Buzz 上的朋友 / 關注的人)，另外又會於稍後推出一個給網站使用的「+1」button，功能和 Facebook Like 一樣。 Google +1 自公布後各界的反應相當兩極，廣告用戶非常期待這功能，認為有望加強廣告的可信性，而數據亦可用來改善廣告的成效。亦有人預期在搜尋結果加入推薦功能，可改善搜尋結果的質素，要知道 Google 應付 content farm (低質素、甚至是抄襲的網站內容) 已感到很吃力，若 +1 真的成功，絕對是一石二鳥。 可是對這功能不看好或存疑的也大有人在，先說搜尋結果上的 +1 button，其天生的弊處難以改變。大家試想想，當 Google 提供了搜尋的結果後，用戶必會先進入其他網站，若覺得這搜尋結果有用，希望推薦給其他人時才會按 +1。然而在這一刻，用戶其實已離開了搜尋結果頁，換句話說必須要返回 Google 網站才能按到 +1。正當用戶急於找尋資料時 (通常找到資料只是完成某項工作的一部分吧)，究竟有多少有心人，願意返回搜尋網頁去按 +1 呢？ 此外，假如 +1 的數量真的會改變搜尋結果 (不論是排名或點擊數)，SEO 公司真的會什麼也不做嗎？說不定已有公司開始研究一些 package [...]<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/google-1-%e9%9b%a3%e4%bb%a5%e6%8a%97%e8%a1%a1-facebook-like/">Google +1 難以抗衡 Facebook Like</a></p>
]]></description>
			<content:encoded><![CDATA[<p>據說 Google 來年的員工花紅，將和其在社交網絡上取得成績掛鈎。不論這傳言是否屬實，Google 急於在社交網絡上佔有一席的心願是眾所周知的。而最新一次嘗試是推出 「Google +1」，簡單來說，即是在搜索結果上加入一個類似 Facebook Like 的 Button，用戶可以按「+1」把有用 / 值得分享的網頁分享給「朋友」(Google Talk、 Gmail contacts、 Google Reader 及 Google Buzz 上的朋友 / 關注的人)，另外又會於稍後推出一個給網站使用的「+1」button，功能和 Facebook Like 一樣。</p>
<p>Google +1 自公布後各界的反應相當兩極，廣告用戶非常期待這功能，認為有望加強廣告的可信性，而數據亦可用來改善廣告的成效。亦有人預期在搜尋結果加入推薦功能，可改善搜尋結果的質素，要知道 Google 應付 content farm (低質素、甚至是抄襲的網站內容) 已感到很吃力，若 +1 真的成功，絕對是一石二鳥。</p>
<p>可是對這功能不看好或存疑的也大有人在，先說搜尋結果上的 +1 button，其天生的弊處難以改變。大家試想想，當 Google 提供了搜尋的結果後，用戶必會先進入其他網站，若覺得這搜尋結果有用，希望推薦給其他人時才會按 +1。然而在這一刻，用戶其實已離開了搜尋結果頁，換句話說必須要返回 Google 網站才能按到 +1。正當用戶急於找尋資料時 (通常找到資料只是完成某項工作的一部分吧)，究竟有多少有心人，願意返回搜尋網頁去按 +1 呢？</p>
<p>此外，假如 +1 的數量真的會改變搜尋結果 (不論是排名或點擊數)，SEO 公司真的會什麼也不做嗎？說不定已有公司開始研究一些 package 發售 +1 點擊量，相信 Google 亦明白這點，不會把人為因素的比重加得很高，以免適得其反。</p>
<p>以上未必是 Google +1 的最大問題，其實 Google 有沒有認真想過究竟用戶為什麼會按分享 button 呢？Google 上的「朋友」和 Facebook / 微博上的有沒有分別，當 Buzz 強行推出時已引起很大量的討論，有時太真實的朋友圈子，而當中又可能混有工作上的伙伴、上司、客戶等等，你未必願意和他們分享。暫且放下這一疑問，用戶按鍵分享必有原因，按 Facebook Like 可把網頁立即分享給朋友，讓他們也可即時讀一讀，時效性是很重要的，過了氣的資訊毫無價值。而在微博和 Twitter 上的分享，則很時會加入自己的看法，某程度上是滿足了分享者的需要 / 私欲。反觀按 Google +1 的滿足感甚低，要對方搜尋同類資料時才發揮作用。Google +1 雖然可記錄用戶曾分享過的網頁，但一大堆無分類、不能加 Tag 的網頁，連 bookmarking 的功能也不如又有什麼用處呢？</p>
<p>至於提供給網站使用的 Google +1 按鈕，其用處應比放在搜尋結果大，起碼不需要返回上頁，而且不一定在搜尋資料這情景之下使用，更有機會讓用戶按下。從表面上看網站和 Google 是雙贏的，不過網站又是否願意加這按鈕呢？以香港網站為例，粗略觀察如網站有這類分享按鈕，首選必是加入 Facebook Like，其次就是 Sina 微博或 Twitter，即是 Google 會是老三或老四。要知道加一個按鈕，會攤薄了按下其他按鈕的機會，Google +1 的吸引力並不太大，正如 Google Buzz 一樣，沒有多少網站會加。 看來 Google 還要有更好的創意，更了解用戶的想法，才能在社交網絡上有其位置。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/google-1-%e9%9b%a3%e4%bb%a5%e6%8a%97%e8%a1%a1-facebook-like/">Google +1 難以抗衡 Facebook Like</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/internet/google-1-%e9%9b%a3%e4%bb%a5%e6%8a%97%e8%a1%a1-facebook-like/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 模版不能隨便安裝</title>
		<link>http://www.jsolutions.biz/blog/cms/beware-of-wordpress-theme-malware/</link>
		<comments>http://www.jsolutions.biz/blog/cms/beware-of-wordpress-theme-malware/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 04:52:36 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[內容管理系統 CMS]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=524</guid>
		<description><![CDATA[WordPress 受歡迎的原因，除了因為系統容易使用及有數量寵大的插件，眾多優質的模版亦功不可抹。有人說只要看看網站的佈局和設計，大致可以估到網站是使用什麼系統，但這應不包括 WordPress，因為只要模版作者有一定的編程能力，喜歡怎樣設計也可以。 為什麼 WordPress 模版的彈性有這樣大，原因是其模版可使用 PHP，而且可直接使用 WordPress 的 API  (原則上是供插件使用)，可說是全無限制。很多系統如 Joomla、Discuz、Prestashop 等的模版都不能用 PHP，而是使用一個 Template Engine。Template Engine 可提供基本的編程功能，如 control flow, looping, output filter 等，好處是令模版只負責網站的外觀，和功能完全分開。 但現實上很難做到設計和功能完全分開的，簡單如 Pagination 的設計，假如系統未能提供設計上需要的功能，如模版可用 PHP ，作者可輕易自行創建所需的功能，並在安裝模版時同時啟用，方便用家。而若果模版只能更改外觀，則過程會複雜得多。因此，一般的 Joomla 模版其實只能做到更改圖像，佈局不變，高質素的模版只有大公司才有能力製作，Joomla Magazine 的 top 10 template picks for 2010 真是最佳證明。事實上現時這些公司很多都同時製作插件，甚至把兩者合拼發售。 一把刀有兩面刃，模版上可以使用 PHP ，即是安裝模版的同時，亦可加入其他功能，一般用家對此認知不足，以為安裝模版只會改變網站的外觀，忽略了潛在的危險。Otto 詳細分析了一類模版上發現的惡意「軟件」，這些 malware 用上很高明的手法，嘗試在用家的網站上安裝一個後門，供製作者隨時可以在網站加入特定的連結。就算用家卸載該模版也不能剷除後門，因後門的位置不在模版的目錄，要頗花功夫才能找到其藏身之處！換句話說，就算用戶只是想看看後果短暫啟用模版，也會即時中招，而清除的難度很高。 要避免使用的模版上有惡意軟件，方法老生常談，只去可信賴的網站下載模版，個人認為 WordPress 應更高調提醒用戶安裝模版的風險。其實同樣問題也在手機程式上越見嚴重 (而手機上的malware更危險，除了可偷取用戶的個人資料，據說國內有手機程式可自動撥打來騙財)，解決方法也只有用戶自己小心不要胡亂下載程式。 Permalinks:WordPress 模版不能隨便安裝<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/cms/beware-of-wordpress-theme-malware/">WordPress 模版不能隨便安裝</a></p>
]]></description>
			<content:encoded><![CDATA[<p>WordPress 受歡迎的原因，除了因為系統容易使用及有數量寵大的插件，眾多優質的模版亦功不可抹。有人說只要看看網站的佈局和設計，大致可以估到網站是使用什麼系統，但這應不包括 WordPress，因為只要模版作者有一定的編程能力，喜歡怎樣設計也可以。</p>
<p>為什麼 WordPress 模版的彈性有這樣大，原因是其模版可使用 PHP，而且可直接使用 WordPress 的 API  (原則上是供插件使用)，可說是全無限制。很多系統如 Joomla、Discuz、Prestashop 等的模版都不能用 PHP，而是使用一個 Template Engine。Template Engine 可提供基本的編程功能，如 control flow, looping, output filter 等，好處是令模版只負責網站的外觀，和功能完全分開。</p>
<p>但現實上很難做到設計和功能完全分開的，簡單如 Pagination 的設計，假如系統未能提供設計上需要的功能，如模版可用 PHP ，作者可輕易自行創建所需的功能，並在安裝模版時同時啟用，方便用家。而若果模版只能更改外觀，則過程會複雜得多。因此，一般的 Joomla 模版其實只能做到更改圖像，佈局不變，高質素的模版只有大公司才有能力製作，Joomla Magazine 的 <a href="http://magazine.joomla.org/issues/Issue-Jan-2011/item/367">top 10 template picks for 2010</a> 真是最佳證明。事實上現時這些公司很多都同時製作插件，甚至把兩者合拼發售。</p>
<p>一把刀有兩面刃，模版上可以使用 PHP ，即是安裝模版的同時，亦可加入其他功能，一般用家對此認知不足，以為安裝模版只會改變網站的外觀，忽略了潛在的危險。Otto <a href="http://ottopress.com/2010/anatomy-of-a-theme-malware/ ">詳細分析了一類模版上發現的惡意「軟件」</a>，這些 malware 用上很高明的手法，嘗試在用家的網站上安裝一個後門，供製作者隨時可以在網站加入特定的連結。就算用家卸載該模版也不能剷除後門，因後門的位置不在模版的目錄，要頗花功夫才能找到其藏身之處！換句話說，就算用戶只是想看看後果短暫啟用模版，也會即時中招，而清除的難度很高。</p>
<p>要避免使用的模版上有惡意軟件，方法老生常談，只去可信賴的網站下載模版，個人認為 WordPress 應更高調提醒用戶安裝模版的風險。其實同樣問題也在手機程式上越見嚴重 (而手機上的malware更危險，除了可偷取用戶的個人資料，據說國內有手機程式可自動撥打來騙財)，解決方法也只有用戶自己小心不要胡亂下載程式。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/cms/beware-of-wordpress-theme-malware/">WordPress 模版不能隨便安裝</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/cms/beware-of-wordpress-theme-malware/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>開源購物系統的後起之秀</title>
		<link>http://www.jsolutions.biz/blog/internet/new-award-winning-shopping-cart-systems/</link>
		<comments>http://www.jsolutions.biz/blog/internet/new-award-winning-shopping-cart-systems/#comments</comments>
		<pubDate>Mon, 22 Nov 2010 01:42:53 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[互聯網]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=519</guid>
		<description><![CDATA[Packt Publishing 舉辦的 Open Source Awards 今年新增了購物系統的類別，結果奪冠的是 Prestashop，而獲得第二和第三名分別是 OpenCart 和 TomatoCart 。值得一提是 TomatoCart 由國內團隊建立，發展的潛力不俗。 相信最為一般人熟悉的購物系統非 osCommerce 和其衍生出來的 Zen Cart 莫屬，可惜兩者近幾年的開發極緩慢 (osCommerce 3.0 終於有 alpha 版，Zen Cart 2.0只聞樓梯響&#8230;)，而事實上就算兩系統在全盛期，亦未佔有很大優勢。筆者估計其中一個原因是客戶以往對第三方收費系統未太接受，而要開發及維護一個內置收費系統的網站成本高很多，對大公司有利，而這類公司多會自行開發系統 。近年 Paypal 的認受性大增，很多客戶明白到其優點，反而會主動要求使用。這轉變給採用開源購物系統的小型公司和獨立開發者更多機會，加上 osC 和 Zen Cart 提供了空檔，使新一代購物系統得以湧現。 Prestashop 和 OpenCart 等吸取了舊購物系統的經驗，令管理網站更易，並適當地選擇預設的功能。就算不憧寫程式的用家，只需安裝喜歡的 template 和功能插件，即能做出一個像樣的購物網。而另一方面，新一代系統減少了為增加某些功能，而修改系統核心的需要，令系統可持續地升級。介面和系統分離也做得更好，開發人員不難替網站改頭換面，時下不少購物網都想「升呢」品牌化，月費式和欠缺開發功能的系統沒可能做得到。 除了獲獎的三個系統外，3大CMS的購物插件：Joomla 的 Virtuemart、Drupal 的 Ubercart 和 WordPress 的多個插件也有不少網站採用，而純做單語言，特別是中文的購物網，EC Shop 是相當受歡迎的系統。大部分系統都做到非技術人員也能安裝使用，未來相信會以系統客製化的能力分勝負吧。 Permalinks:開源購物系統的後起之秀<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/new-award-winning-shopping-cart-systems/">開源購物系統的後起之秀</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Packt Publishing 舉辦的 Open Source Awards 今年新增了購物系統的類別，結果奪冠的是 <a href="http://www.prestashop.com/">Prestashop</a>，而獲得第二和第三名分別是 <a href="http://www.opencart.com/">OpenCart</a> 和 <a href="http://www.tomatocart.com/">TomatoCart</a> 。值得一提是 TomatoCart 由國內團隊建立，發展的潛力不俗。</p>
<p>相信最為一般人熟悉的購物系統非 osCommerce 和其衍生出來的 Zen Cart 莫屬，可惜兩者近幾年的開發極緩慢 (osCommerce 3.0 終於有 alpha 版，Zen Cart 2.0只聞樓梯響&#8230;)，而事實上就算兩系統在全盛期，亦未佔有很大優勢。筆者估計其中一個原因是客戶以往對第三方收費系統未太接受，而要開發及維護一個內置收費系統的網站成本高很多，對大公司有利，而這類公司多會自行開發系統 。近年 Paypal 的認受性大增，很多客戶明白到其優點，反而會主動要求使用。這轉變給採用開源購物系統的小型公司和獨立開發者更多機會，加上 osC 和 Zen Cart 提供了空檔，使新一代購物系統得以湧現。</p>
<p>Prestashop 和 OpenCart 等吸取了舊購物系統的經驗，令管理網站更易，並適當地選擇預設的功能。就算不憧寫程式的用家，只需安裝喜歡的 template 和功能插件，即能做出一個像樣的購物網。而另一方面，新一代系統減少了為增加某些功能，而修改系統核心的需要，令系統可持續地升級。介面和系統分離也做得更好，開發人員不難替網站改頭換面，時下不少購物網都想「升呢」品牌化，月費式和欠缺開發功能的系統沒可能做得到。</p>
<p>除了獲獎的三個系統外，3大CMS的購物插件：Joomla 的 Virtuemart、Drupal 的 Ubercart 和 WordPress 的多個插件也有不少網站採用，而純做單語言，特別是中文的購物網，EC Shop 是相當受歡迎的系統。大部分系統都做到非技術人員也能安裝使用，未來相信會以系統客製化的能力分勝負吧。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/new-award-winning-shopping-cart-systems/">開源購物系統的後起之秀</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/internet/new-award-winning-shopping-cart-systems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>做個精明的網頁設計客人</title>
		<link>http://www.jsolutions.biz/blog/web-design/be-a-smart-web-design-client/</link>
		<comments>http://www.jsolutions.biz/blog/web-design/be-a-smart-web-design-client/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 05:28:30 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[網頁設計]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=513</guid>
		<description><![CDATA[「我想要一個網站，10頁，中英文，要有Flash，請報價！」以上不是 Clients from Hell (專門收集網頁設計師千奇百怪遭遇) 的一則故事，而是我們時常收到的查詢。香港上網的普及率雖高，但對製作網站、善用互聯網的認識不算多。直到最近仍有雜誌教人 Flash CMS 製網站「提升公司形象」，在 iPhone 和 iPad 熱賣時亂用 Flash 和找死有什麼分別。亦有公司仍在發 spam e-mail，給你偷雞成功發送一次，下次就會自動落入垃圾郵件箱，或給醒目的系統管理員過濾掉。 很多中小企製作網站都視成本為重要的考慮因素，直接找網頁設計公司而非透過推廣和公關公司。而網頁設計公司多數強於製作和執行，在規劃網站和網上推廣策略方面都視乎客戶本身的要求，因此中小型公司和商店製作網站前，必須掌握更多相關知識和明白自己的需要。 Google 剛開了一個專為小企業而設的 Google Small Business Blog ，並聯同 U.S. Small Business Administration 推出了一個 Tools for Online Success 指南，為小企業提供善用互聯網的貼士，內容包括： 利用 Google local listing 增加網上曝光機會，特別適合商店 製作成功網站的要素 利用 social media 加強和客戶的溝通 善用各項免費的渠道做宣傳 如何使用付費搜尋推廣 量度網站流量及如何解讀數據 以上章節可能會涉及一些技術性的操作，你未必會自行處理，卻可讓你更懂得向網頁設計公司提出要求，令網站有更大成效。最可惜這份指南由 Google 製作，難免欠缺了專門講及 Facebook 和微博的章節，否則更適用於香港的環境。另外，大家應會留意到，網站只是整個網上推廣的一個環節，現今製作網站更應包含更多 social media [...]<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/web-design/be-a-smart-web-design-client/">做個精明的網頁設計客人</a></p>
]]></description>
			<content:encoded><![CDATA[<p>「我想要一個網站，10頁，中英文，要有Flash，請報價！」以上不是 <a href="http://clientsfromhell.net/">Clients from Hell</a> (專門收集網頁設計師千奇百怪遭遇) 的一則故事，而是我們時常收到的查詢。香港上網的普及率雖高，但對製作網站、善用互聯網的認識不算多。直到最近仍有雜誌教人 Flash CMS 製網站「提升公司形象」，在 iPhone 和 iPad 熱賣時亂用 Flash 和找死有什麼分別。亦有公司仍在發 spam e-mail，給你偷雞成功發送一次，下次就會自動落入垃圾郵件箱，或給醒目的系統管理員過濾掉。</p>
<p>很多中小企製作網站都視成本為重要的考慮因素，直接找網頁設計公司而非透過推廣和公關公司。而網頁設計公司多數強於製作和執行，在規劃網站和網上推廣策略方面都視乎客戶本身的要求，因此中小型公司和商店製作網站前，必須掌握更多相關知識和明白自己的需要。</p>
<p>Google 剛開了一個專為小企業而設的 <a href="http://googlesmb.blogspot.com/">Google Small Business Blog</a> ，並聯同 U.S. Small Business Administration 推出了一個 <a href="http://www.google.com/help/places/partners/sba/index.html">Tools for Online Success</a> 指南，為小企業提供善用互聯網的貼士，內容包括：</p>
<ol>
<li>利用 Google local listing 增加網上曝光機會，特別適合商店</li>
<li>製作成功網站的要素</li>
<li>利用 social media 加強和客戶的溝通</li>
<li>善用各項免費的渠道做宣傳</li>
<li>如何使用付費搜尋推廣</li>
<li>量度網站流量及如何解讀數據</li>
</ol>
<p>以上章節可能會涉及一些技術性的操作，你未必會自行處理，卻可讓你更懂得向網頁設計公司提出要求，令網站有更大成效。最可惜這份指南由 Google 製作，難免欠缺了專門講及 Facebook 和微博的章節，否則更適用於香港的環境。另外，大家應會留意到，網站只是整個網上推廣的一個環節，現今製作網站更應包含更多 social media 的元素，並憧得利用其他網上服務。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/web-design/be-a-smart-web-design-client/">做個精明的網頁設計客人</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/web-design/be-a-smart-web-design-client/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 3.0 全面 CMS 化</title>
		<link>http://www.jsolutions.biz/blog/cms/wordpress-30-a-true-cms/</link>
		<comments>http://www.jsolutions.biz/blog/cms/wordpress-30-a-true-cms/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 03:34:53 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[內容管理系統 CMS]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=507</guid>
		<description><![CDATA[WordPress 3.0 發佈了，看點甚多！不過如果閣下只把 WordPress 作個人網誌之用，老實說今次、甚至日後 WordPress 的更新對你的意義未必很大，畢竟 blog 的功能已甚為成熟，難有大變。Wordpress 3.0 的新功能很大程度是適用於製作其他類型的網站。以前很多教學是關於如何將 WordPress 當作 CMS 使用，現在 WordPress 已確實是一個 CMS 了。關於新功能的詳細介紹，可參看官方網站或者 WordPress 3.0: Ultimate Guide to New Features ，筆者分享一下幾個重點新功能對網站製作的用處。 1. 自定義用戶名稱和密碼 個人認為系統安裝時自動創建或一的管理員帳號名稱並非可取，尤其是 WordPress 這類很多非技術用家的系統，不少用戶也很大意地用很簡單的密碼，令系統增加了被入侵的風險。當然有經驗的用戶都知道安裝後應該再建一個管理員帳號及把系統自創帳號的權限降到最低。現在安裝 WordPress 3.0 時用戶需要自行填寫管理員帳號名稱，可省略了這步驟，同時亦保障了不懂得這方法的用戶。 2. Menu 管理 簡單說即是 Menu Maker，用戶可自行設定一個或多個 menu ，這一直是 Joomla 比 WordPress 強的地方，亦可說是一個 CMS 必須具備的功能。Wordpress 原有的 menu 設定是頗為死板的，只用程式根據一些規則創建，而且更改時需要更改 template。現實生活當然是更為複雜，例如想在2個連結中間加入一個外連就極為困難，Wordpress 3.0 終於內建了 [...]<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/cms/wordpress-30-a-true-cms/">WordPress 3.0 全面 CMS 化</a></p>
]]></description>
			<content:encoded><![CDATA[<p>WordPress 3.0 發佈了，看點甚多！不過如果閣下只把 WordPress 作個人網誌之用，老實說今次、甚至日後 WordPress 的更新對你的意義未必很大，畢竟 blog 的功能已甚為成熟，難有大變。Wordpress 3.0 的新功能很大程度是適用於製作其他類型的網站。以前很多教學是關於如何將 WordPress  當作 CMS 使用，現在 WordPress 已確實是一個 CMS 了。關於新功能的詳細介紹，可參看<a href="http://codex.wordpress.org/Version_3.0">官方網站</a>或者 <a href="http://sixrevisions.com/wordpress/wordpress-3-0-guide">WordPress 3.0: Ultimate Guide to New Features</a> ，筆者分享一下幾個重點新功能對網站製作的用處。</p>
<p><span style="color: #008000;">1. 自定義用戶名稱和密碼</span></p>
<p>個人認為系統安裝時自動創建或一的管理員帳號名稱並非可取，尤其是 WordPress 這類很多非技術用家的系統，不少用戶也很大意地用很簡單的密碼，令系統增加了被入侵的風險。當然有經驗的用戶都知道安裝後應該再建一個管理員帳號及把系統自創帳號的權限降到最低。現在安裝 WordPress 3.0 時用戶需要自行填寫管理員帳號名稱，可省略了這步驟，同時亦保障了不懂得這方法的用戶。</p>
<p><span style="color: #008000;">2. Menu 管理</span></p>
<p>簡單說即是 Menu Maker，用戶可自行設定一個或多個 menu ，這一直是 Joomla 比 WordPress 強的地方，亦可說是一個 CMS 必須具備的功能。Wordpress 原有的 menu 設定是頗為死板的，只用程式根據一些規則創建，而且更改時需要更改 template。現實生活當然是更為複雜，例如想在2個連結中間加入一個外連就極為困難，Wordpress 3.0 終於內建了 menu maker，亦可讓用戶在 dashboard 內設定，方便得多。</p>
<p><span style="color: #008000;">3. 自定義文章類型及分類</span></p>
<p>以往 WordPress 只有 Page 及 Post 兩種文章類型，如果想用 WordPress 建立其他類型的網站，除了要有想像力，把兩個謹有的文章類型改造，用起上來亦較不便。現在用家可自行建立文章類型，例如你想建一個樓盤網站，可自行創建一個「樓盤」類型，以「區域」、「租售方式」、「房間數目」等 (即是可用來作篩選的條件) 作為其分類，方便管理、資料輸入及建立網頁。自定義文章類型是進階的 CMS 必備，就算早在 WordPress 未內建此功能時已有 plugins 實現，成為內置功能後，更多相關功能會陸續開發，令 WordPress 的用途大增。</p>
<p><span style="color: #008000;">4. 和 WordPress MU 整合</span></p>
<p>WordPress 有一個 Multi User (其實是 multisite，因 WordPress 根本就是multiuser的) 的分支，由另一批開發者負責，MU 版本可說是在普通版本上外加一個框框，令其達到安裝一個系統，就可支援多個不同的 blog / 網站。雖然兩者的兼容性已很高，大部分插件都可共用，但畢竟參與維護的人員較少，支援也較少。現在 WordPress 3.0 把 multisite 功能加入成為系統的一部分，完全解決兼容問題，令用戶可更安心使用。Multisite 有什麼用呢？最直接的用法是自己擔當 BSP，讓網友來你的網站申請開 blog，或者加入 <a href="http://buddypress.org">Buddypress</a> 使網站變成 SNS。</p>
<p>很多機構的網站由多組人員打理，可用 multisite 功能可把網站分成 minisite 獨立管理，並保留主站統籌管理升級備份等工作，而主站上亦可顯示 mimistie 部分內容。另一方面，如果想製作一個多語言網站、但內容及架構分別頗大，也可用 mutisite 達成。</p>
<p>筆者也想藉此文章解答兩個問題，有客戶問：用 WordPress 是不是會被國內屏蔽？我想很些人混淆了 wordpress.com 和 WordPress 系統。Wordpress.com 是 WordPress 系統原創者的網站，是一個 BSP 讓人申請開 blog。wordpress.com 真的很多時被屏蔽。而我們用 WordPress 系統則是獨立安裝，決不會因為用了 WordPress 就會令國內的網民訪問不到。</p>
<p>另一個問題是，open source 系統是否都不適合建立流量高的大網站呢？不想扯得太遠，就以 WordPress 來說，只使用程式的技巧，可以用 cacheng 技術減少直接使用 database (一般來說是系統的樽頸)，還未計其他 server side 技術。</p>
<p>WordPress 3.0 新增幾個 CMS 相關的功能，一定會吸引更多網站採用。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/cms/wordpress-30-a-true-cms/">WordPress 3.0 全面 CMS 化</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/cms/wordpress-30-a-true-cms/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Migrating from Blinklist to Delicious using PHP</title>
		<link>http://www.jsolutions.biz/blog/internet/migrating-from-blinklist-to-delicious-using-php/</link>
		<comments>http://www.jsolutions.biz/blog/internet/migrating-from-blinklist-to-delicious-using-php/#comments</comments>
		<pubDate>Mon, 31 May 2010 03:18:16 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[互聯網]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=500</guid>
		<description><![CDATA[I&#8217;m done with Blinklist.  Before this I want to get back the bookmarks so that I can use them in my browser or other social bookmarking website.  There is no one-step solution.  I hope this article can help people who has this need too. Preparing the CSV file The first step is to export your [...]<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/migrating-from-blinklist-to-delicious-using-php/">Migrating from Blinklist to Delicious using PHP</a></p>
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m done with Blinklist.  Before this I want to get back the bookmarks so that I can use them in my browser or other social bookmarking website.  There is no one-step solution.  I hope this article can help people who has this need too.</p>
<p><span style="text-decoration: underline;">Preparing the CSV file</span></p>
<p>The first step is to export your bookmarks from Blinklist.  Although the website seems to allow you to choose from 3 export formats, you can only get a CSV file (in fact it is a TSV file).  Unfortunately you cannot import this file to your browser directly because the format is incompatible.  We need to convert the file to a normal bookmark file.  In this case, IE bookmark format is a desirable choice because it is recgonized by most browsers (Firefox, Chrome, etc.) and other social bookmarking website such as Delicious and it can be easily created.</p>
<p>The following step is not necessary unless your bookmarks have Asian characters.  Why?  Because the PHP script that we will use later has a command &#8211; fgetcsv.  This command is not 100% safe for Asian characters.  There are some solutions but I think the easiest way in this situation is to use a spreadsheet software to add dobule quotation mark as text delimiter for every field.</p>
<p>I use Open Office Calc as demonstration:</p>
<p>First we import the bookmark file, note that we need to set the character set to UTF-8,  and the field delimiter as Tab instead of Comma.  Every bookmark is a row in the sheet.  You can easily delete bookmarks that you don&#8217;t want to keep/import. (Sorry, OO does not allow changing back the user interface to English)</p>
<p><a href="http://www.jsolutions.biz/blog/wp-content/uploads/2010/05/2010-05-31_092146.png"><img class="alignnone size-medium wp-image-501" title="Importing CSV file into Open Office Calc" src="http://www.jsolutions.biz/blog/wp-content/uploads/2010/05/2010-05-31_092146-480x343.png" alt="" width="480" height="343" /></a></p>
<p>After that, we save the file as another CSV file, OO will prompt you to choose the field delimiter and text delimiter.  Select Tab and double quotation mark respectively.</p>
<p><a href="http://www.jsolutions.biz/blog/wp-content/uploads/2010/05/2010-05-31_092419.png"><img class="alignnone size-full wp-image-502" title="Save as a new CSV file " src="http://www.jsolutions.biz/blog/wp-content/uploads/2010/05/2010-05-31_092419.png" alt="" width="512" height="194" /></a></p>
<p><span style="text-decoration: underline;">Creating a browser bookmark file</span></p>
<p>The next step is to create the bookmark file.  <a href="http://rubenlaguna.com/wp/2010/01/03/migrating-from-blinklist-to-delicious-com-csv-to-html">Ruben Laguna</a> has written an excellent script in Ruby to convert the CSV file to an IE bookmark file.  I think many people are more comfortable with PHP so I re-create the script in PHP.</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">&lt;?php</span></div>
</li>
<li class="li1">
<div class="de1">&lt;!&#8211; This is an automatically generated <a href="http://www.php.net/file"><span class="kw3">file</span></a>. It will be read and overwritten. <span class="kw1">Do</span> Not Edit! &#8211;&gt;</div>
</li>
<li class="li1">
<div class="de1"><span class="me1">Bookmarks</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&lt;h1&gt;Bookmarks&lt;/h1&gt;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&lt;dl&gt;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">EOH;</div>
</li>
<li class="li1">
<div class="de1"><a href="http://www.php.net/fwrite"><span class="kw3">fwrite</span></a><span class="br0">&#40;</span><span class="re0">$f</span>, <span class="re0">$header</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$row</span> = <span class="nu0">0</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// replace the filename if needed, remember to put it under the same folder of this script</span></div>
</li>
<li class="li2">
<div class="de2"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="br0">&#40;</span><span class="re0">$handle</span> = <a href="http://www.php.net/fopen"><span class="kw3">fopen</span></a><span class="br0">&#40;</span><span class="st0">&quot;bookmarkall.csv&quot;</span>, <span class="st0">&quot;r&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> !== <span class="kw2">FALSE</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span><span class="br0">&#40;</span><span class="re0">$data</span> = <a href="http://www.php.net/fgetcsv"><span class="kw3">fgetcsv</span></a><span class="br0">&#40;</span><span class="re0">$handle</span>, <span class="nu0">1000</span>, <span class="st0">&quot;<span class="es0">\t</span>&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> !== <span class="kw2">FALSE</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$row</span>==<span class="nu0">0</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><span class="re0">$row</span>++; <span class="kw1">continue</span>;<span class="br0">&#125;</span> <span class="co1">// skip the first line</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$url</span> = <span class="re0">$data</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$title</span> = <span class="re0">$data</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$description</span> = <span class="re0">$data</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$tags</span> = <span class="re0">$data</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/fwrite"><span class="kw3">fwrite</span></a><span class="br0">&#40;</span><span class="re0">$f</span>, <span class="st0">&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&lt;dt&gt;&lt;a href=&quot;</span>\<span class="st0">&quot;&gt;$title&lt;/a&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&lt;/dt&gt;</span></div>
</li>
<li class="li2">
<div class="de2"><span class="st0">&lt;dd&gt;$description<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <a href="http://www.php.net/fclose"><span class="kw3">fclose</span></a><span class="br0">&#40;</span><span class="re0">$handle</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><a href="http://www.php.net/fwrite"><span class="kw3">fwrite</span></a><span class="br0">&#40;</span><span class="re0">$f</span>, <span class="st0">&quot;&lt;/dd&gt;</span></div>
</li>
<li class="li2">
<div class="de2"><span class="st0">&lt;/dl&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><a href="http://www.php.net/fclose"><span class="kw3">fclose</span></a><span class="br0">&#40;</span><span class="re0">$f</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="st0">&quot;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">Success!</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1"><a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="st0">&quot;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">Please right-click to save the &lt;a href=&quot;</span>\<span class="st0">&quot;&gt;Bookmarks file&lt;/a&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">?&gt;</span></div>
</li>
</ol>
</div>
<p>The bookmark file is created  and ready  to be imported  to your favorite browser.  Of course, we can use another social marketing service like Delicious.  Luckily, the tags can be preserved too.  The only limitation is that the date of bookmark creation cannot be kept.  You can see that the date is set manually in the conversion script because it is not available in the CSV file.</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/migrating-from-blinklist-to-delicious-using-php/">Migrating from Blinklist to Delicious using PHP</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/internet/migrating-from-blinklist-to-delicious-using-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yahoo! 對政府網站的特別照顧</title>
		<link>http://www.jsolutions.biz/blog/seo/yahoo-special-care-to-government-websites/</link>
		<comments>http://www.jsolutions.biz/blog/seo/yahoo-special-care-to-government-websites/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 03:38:38 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[互聯網]]></category>
		<category><![CDATA[搜尋引擎優化 SEO]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=484</guid>
		<description><![CDATA[很多人都認為搜尋引擎對政府網站特別重視，因此相關的搜尋結果中，政府網站的網頁總是排得比較前。政府的資料可信性不容置疑，能提供準確的訊息給用家，排得較前也無可厚非。 最近完成了一個新網站，由於內容和政府網站的資料有相同之處，筆者也預計到一定會有上述情況發生，不過沒想到原來Yahoo!對政府網站真的有特別照顧，大家可看看以下的搜尋結果： 圖中可見搜尋結果的條目，是以文娛活動的名稱為標題，然而當你點撃這個連結，就會發現康文署網頁上的標題是「文 化 節 目 節 目 詳 情」。要知道在一般情況下，搜尋引擎只會使用網頁上 Title Tag 上的文字作為搜尋結果標題，因為要抽取內文作為標題，顯然要先理解內文的資訊，才能給予一個比原網頁更貼切的標題。 其實以上康文署網頁資料是來自其站上的活動搜尋工具 (雖說是搜尋，但也有提供列表顯示各項活動，因此搜尋引擎可以收錄個別活動資料)，可能這網頁的框架用了不少時間，而且更新的頻率也很高，因此Yahoo!會嘗試給一個更貼切的標題給用家。但Yahoo!也不是每個活動都會自行更改標題，究竟在什麼情況之下才會進行，則只有Yahoo!才知道。 Permalinks:Yahoo! 對政府網站的特別照顧<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/seo/yahoo-special-care-to-government-websites/">Yahoo! 對政府網站的特別照顧</a></p>
]]></description>
			<content:encoded><![CDATA[<p>很多人都認為搜尋引擎對政府網站特別重視，因此相關的搜尋結果中，政府網站的網頁總是排得比較前。政府的資料可信性不容置疑，能提供準確的訊息給用家，排得較前也無可厚非。</p>
<p>最近完成了一個新網站，由於內容和政府網站的資料有相同之處，筆者也預計到一定會有上述情況發生，不過沒想到原來Yahoo!對政府網站真的有特別照顧，大家可看看以下的搜尋結果：</p>
<p><img class="alignnone size-full wp-image-485" style="border: 1px solid black;" title="2009-11-13_094156" src="http://www.jsolutions.biz/blog/wp-content/uploads/2009/11/2009-11-13_094156.png" alt="2009-11-13_094156" width="409" height="185" /></p>
<p>圖中可見搜尋結果的條目，是以文娛活動的名稱為標題，然而當你點撃這個連結，就會發現康文署網頁上的標題是「文 化 節 目 節 目 詳 情」。要知道在一般情況下，搜尋引擎只會使用網頁上 Title Tag 上的文字作為搜尋結果標題，因為要抽取內文作為標題，顯然要先理解內文的資訊，才能給予一個比原網頁更貼切的標題。</p>
<p>其實以上康文署網頁資料是來自其站上的活動搜尋工具 (雖說是搜尋，但也有提供列表顯示各項活動，因此搜尋引擎可以收錄個別活動資料)，可能這網頁的框架用了不少時間，而且更新的頻率也很高，因此Yahoo!會嘗試給一個更貼切的標題給用家。但Yahoo!也不是每個活動都會自行更改標題，究竟在什麼情況之下才會進行，則只有Yahoo!才知道。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/seo/yahoo-special-care-to-government-websites/">Yahoo! 對政府網站的特別照顧</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/seo/yahoo-special-care-to-government-websites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>令人不安的 Google Sidewiki</title>
		<link>http://www.jsolutions.biz/blog/internet/not-feeling-comfortable-with-google-sidewiki/</link>
		<comments>http://www.jsolutions.biz/blog/internet/not-feeling-comfortable-with-google-sidewiki/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 08:11:10 +0000</pubDate>
		<dc:creator>Joseph Mok</dc:creator>
				<category><![CDATA[互聯網]]></category>

		<guid isPermaLink="false">http://www.jsolutions.biz/blog/?p=480</guid>
		<description><![CDATA[Google 剛推出了一個新工具 Sidewiki，用家只要安裝了Google Toolbar，就可在任何網頁上留言，亦可閱讀其他人在同一網頁上的留言。Google 認為這工具有助提供更多更有用的資訊給用戶。 舊酒新瓶 以第三方工具形式，讓用家在任何網頁上留言的意念亳不新鮮，早在1999年已有類似服務 Third Voice。為什麼以前沒有成功？原因是需要用家登記並安裝瀏覽器插件，以前瀏覽網頁的速度已很慢，更要用插件，慢上加慢當然不受歡迎。後期也有一些公司嘗試，最有 web 2.0 網站感覺的是 Diigo，把 bookmark + content highlight 等設計成個人學習工具，分享評論次之，我相信用戶也以此為主要用途。 時至今日要在網站加入和訪客交流的功能真是易如反掌，免費的留言版、論壇程式或者服務不缺，就算想做到即時回應， Live Chat 、Helpdesk 等也有大量供應商，網站若果未有提供和用戶交流的工具，並非技術和成本問題，而是怕沒時間管理。 Blogger / Webmaster 為什麼不喜歡 Google Sidewiki 用 webmaster 的角度看，Google Sidewiki 帶來的麻煩比好處更多，如前述交流的渠道根本不缺，為什麼要多此一舉呢？Buzzmachine 上的討論相當激烈，筆者嘗試歸納他們關注的問題： Google 「偷取」了網站的用戶評論，評論是網頁內容的一部分，而且對受歡迎的網誌來說更是非常重要的部分 強制參與，不論你喜不喜歡 必須安裝 Google Toolbar webmaster 對留言完成沒有監控權，縱使看到惡意評論、廣告等也只可向 Google 提出，會否處理、有沒有時間處理成疑 有人在網站留言後沒有通知機制，難以處理回應 某些人可能錯以為 Google Sidewiki 是網站的一部分，或者以為 Sidewiki 是網站使用的留言服務，讓立心不良的人有機可圖，例如在慈善網站上留言叫人捐助騙財 目前為止 webmaster 可以做的是向 [...]<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/not-feeling-comfortable-with-google-sidewiki/">令人不安的 Google Sidewiki</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Google 剛推出了一個新工具 Sidewiki，用家只要安裝了Google Toolbar，就可在任何網頁上留言，亦可閱讀其他人在同一網頁上的留言。Google 認為這工具有助提供更多更有用的資訊給用戶。</p>
<p><span style="color: #993300;">舊酒新瓶</span></p>
<p>以第三方工具形式，讓用家在任何網頁上留言的意念亳不新鮮，早在1999年已有類似服務 Third Voice。為什麼以前沒有成功？原因是需要用家登記並安裝瀏覽器插件，以前瀏覽網頁的速度已很慢，更要用插件，慢上加慢當然不受歡迎。後期也有一些公司嘗試，最有 web 2.0 網站感覺的是 Diigo，把 bookmark + content highlight 等設計成個人學習工具，分享評論次之，我相信用戶也以此為主要用途。</p>
<p>時至今日要在網站加入和訪客交流的功能真是易如反掌，免費的留言版、論壇程式或者服務不缺，就算想做到即時回應， Live Chat 、Helpdesk 等也有大量供應商，網站若果未有提供和用戶交流的工具，並非技術和成本問題，而是怕沒時間管理。</p>
<p><span style="color: #993300;">Blogger / Webmaster 為什麼不喜歡 Google Sidewiki</span></p>
<p>用 webmaster 的角度看，Google Sidewiki 帶來的麻煩比好處更多，如前述交流的渠道根本不缺，為什麼要多此一舉呢？<a href="http://www.buzzmachine.com/2009/09/23/google-sidewiki-danger/">Buzzmachine</a> 上的討論相當激烈，筆者嘗試歸納他們關注的問題：</p>
<ol>
<li>Google 「偷取」了網站的用戶評論，評論是網頁內容的一部分，而且對受歡迎的網誌來說更是非常重要的部分</li>
<li>強制參與，不論你喜不喜歡</li>
<li>必須安裝 Google Toolbar</li>
<li>webmaster 對留言完成沒有監控權，縱使看到惡意評論、廣告等也只可向 Google 提出，會否處理、有沒有時間處理成疑</li>
<li>有人在網站留言後沒有通知機制，難以處理回應</li>
<li>某些人可能錯以為 Google Sidewiki 是網站的一部分，或者以為 Sidewiki 是網站使用的留言服務，讓立心不良的人有機可圖，例如在慈善網站上留言叫人捐助騙財</li>
</ol>
<p>目前為止 webmaster 可以做的是向 Google 表明網站擁有權，從而可以<a href="http://www.google.com/support/toolbar/bin/answer.py?hl=en&amp;answer=157270">在 Sidewiki 上留下一個置頂的訊息</a>。</p>
<p>個人認為最終 Google 會提供一些 API，令留言可以集中在網站指定的地方，如 WordPress comment 或其他留言系統的服務令管理較易，但若果網站希望可以退出或者刪除 / 審核留言內容，估計機會很渺茫。</p>
<p><span style="color: #993300;">惡意留言、廣告、欺詐</span></p>
<p>Google 對處理惡意留言、廣告、欺詐訊息問題相當有信心，認為其系統可以杜絕以上問題，我不下結論，不如大家去 Youtube 上看看，你覺得他們做得出色嗎？在英國已有人試用 Sidewiki，<a href="http://www.malcolmcoles.co.uk/blog/sidewiki-abuse-newspapers/">在《每日郵報》網站上叫人轉看《衛報》</a>。我估計很多以打廣告為生的公司已蠢蠢欲動，國內很多用戶上不到 Youtube 網站，不過 Google Sidewiki 絕對是商機無限。如果你經營一個商業網站，自然不希望競爭對手的訊息出現在自己網站之上。但使用 Sidewiki 很易令人有機可乘。事實上不一定要到直接的競爭對手網站上留言，假如我經營印囍帖的生意，我大可以到婚禮相關行業的網站上留言打廣告。</p>
<p><a href="http://zh.wikipedia.org/wiki/%E8%B4%BE%E5%90%9B%E9%B9%8F">賈君鵬事件</a>中，可見有些公司玩「馬甲」已玩到出神入化，難辨真偽，而寫軟文偽原創是國內做 Internet Marketing 的基本模式，你認為 Google 有多少能力打勝這場仗？又願意付出多少保障網站的權益？</p>
<p><span style="color: #993300;">Sidewiki 會成為主流嗎</span></p>
<p>寫這篇文章之時我很留意究竟有沒有人利用 Twitter 製作同類服務，目前已找到2個。這一類不需要網站安裝，利用既有服務，把留言討論功能加在網站的服務看來是方興未艾，究竟會否受用家歡迎，變成日後留言討論的集中點仍是未知知數，希望筆者和眾 webmaster 的想法只是杞人憂天。</p>
<p>Permalinks:<br/><br/><a href="http://www.jsolutions.biz/blog/internet/not-feeling-comfortable-with-google-sidewiki/">令人不安的 Google Sidewiki</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jsolutions.biz/blog/internet/not-feeling-comfortable-with-google-sidewiki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

