J Solutions 是少數把 SEO 的原則運用在網頁設計上的香港網頁設計公司,也是少數提倡遵照網頁標準的公司。我們不捆綁客戶,系統的擁有權全歸客戶。J Solutions 亦致力把正確訊息宣揚,令消費者選用最合自己需要的網頁設計公司和方案,如果你有興趣和本網站交換連結,請寄電郵提出

令人不安的 Google Sidewiki

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 上的討論相當激烈,筆者嘗試歸納他們關注的問題:

  1. Google 「偷取」了網站的用戶評論,評論是網頁內容的一部分,而且對受歡迎的網誌來說更是非常重要的部分
  2. 強制參與,不論你喜不喜歡
  3. 必須安裝 Google Toolbar
  4. webmaster 對留言完成沒有監控權,縱使看到惡意評論、廣告等也只可向 Google 提出,會否處理、有沒有時間處理成疑
  5. 有人在網站留言後沒有通知機制,難以處理回應
  6. 某些人可能錯以為 Google Sidewiki 是網站的一部分,或者以為 Sidewiki 是網站使用的留言服務,讓立心不良的人有機可圖,例如在慈善網站上留言叫人捐助騙財

目前為止 webmaster 可以做的是向 Google 表明網站擁有權,從而可以在 Sidewiki 上留下一個置頂的訊息

個人認為最終 Google 會提供一些 API,令留言可以集中在網站指定的地方,如 WordPress comment 或其他留言系統的服務令管理較易,但若果網站希望可以退出或者刪除 / 審核留言內容,估計機會很渺茫。

惡意留言、廣告、欺詐

Google 對處理惡意留言、廣告、欺詐訊息問題相當有信心,認為其系統可以杜絕以上問題,我不下結論,不如大家去 Youtube 上看看,你覺得他們做得出色嗎?在英國已有人試用 Sidewiki,在《每日郵報》網站上叫人轉看《衛報》。我估計很多以打廣告為生的公司已蠢蠢欲動,國內很多用戶上不到 Youtube 網站,不過 Google Sidewiki 絕對是商機無限。如果你經營一個商業網站,自然不希望競爭對手的訊息出現在自己網站之上。但使用 Sidewiki 很易令人有機可乘。事實上不一定要到直接的競爭對手網站上留言,假如我經營印囍帖的生意,我大可以到婚禮相關行業的網站上留言打廣告。

賈君鵬事件中,可見有些公司玩「馬甲」已玩到出神入化,難辨真偽,而寫軟文偽原創是國內做 Internet Marketing 的基本模式,你認為 Google 有多少能力打勝這場仗?又願意付出多少保障網站的權益?

Sidewiki 會成為主流嗎

寫這篇文章之時我很留意究竟有沒有人利用 Twitter 製作同類服務,目前已找到2個。這一類不需要網站安裝,利用既有服務,把留言討論功能加在網站的服務看來是方興未艾,究竟會否受用家歡迎,變成日後留言討論的集中點仍是未知知數,希望筆者和眾 webmaster 的想法只是杞人憂天。

分享:
發表回應

徹底關閉 WordPress RSS 的功能

筆者不是 RSS is dead (大意是 RSS 的功能已被 Twitter 取代,因後者更快) 的支持者,RSS 仍是我日常獲取資訊的主要渠道。不過若把 WordPress 作為網站 CMS 的情況下,RSS 則並非必要。要關閉 WordPress 的 RSS 功能,最好要做到「內外兼顧」。

關閉 RSS feed 輸出功能

首先從內部入手,令 WordPress 不會輸出 RSS feed。WPengineer 教大家使用 WordPress 的 hook ,指示系統取消 RSS feed 輸出,辦法是在 template 的 functions.php 檔案 (如果 template 沒有這檔案可以自行創建),加入以下 function:

  1. /**
  2.  * disable feed
  3.  */
  4. function fb_disable_feed() {
  5.         wp_die( __(‘No feed available,please visit our <a href="’. get_bloginfo(‘url’) .‘">homepage</a>!’) );
  6. }
  7.  
  8. add_action(‘do_feed’, ‘fb_disable_feed’, 1);
  9. add_action(‘do_feed_rdf’, ‘fb_disable_feed’, 1);
  10. add_action(‘do_feed_rss’, ‘fb_disable_feed’, 1);
  11. add_action(‘do_feed_rss2′, ‘fb_disable_feed’, 1);
  12. add_action(‘do_feed_atom’, ‘fb_disable_feed’, 1);

由於這方法是在 template 檔案上實行,因此必須謹記當改用另一個 template 時,必須在新 template 中加入相同 function。另外,template 內 RSS 相關的連結也需要去除。

刪除 Template 內所有 RSS feed 的連結

網頁上顯示的 RSS feed 連結相信大家也可輕易移除,不過有一些「隱藏」的連結,則會透過瀏覽器而被發現,例如 Firefox 就有 RSS auto-discovery 功能,雖然開啟這連結也只會顯示錯誤訊息,但最好還是把這些「隱藏」連結一併移除。

首先要刪除 template (通常是 header.php) 內以下的代碼 (如有)

  1. <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo(‘rss2_url’); ?>" />
  2. <link rel="alternate" type="text/xml" title="RSS .92" href="<?php bloginfo(‘rss_url’); ?>" />
  3. <link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo(‘atom_url’); ?>" />

某些 template 使用 wp_head() 來加入網頁 head tags 的內容,如果刪除 template 中的 wp_head() 則會同時刪除其他有用的資訊。其實可以用上述關閉 RSS feed 輸出的方法,來設定 wp_head() 令其只會不輸出 RSS feed links 但保留其他資訊,方法是在 functions.php 上加入:

  1. remove_action( ‘wp_head’, ‘feed_links_extra’, 3 );

這樣就可以完全刪除 RSS 的連結了。

分享:
發表回應

WordPress 顯示相同標籤的文章列表

最近比較忙,偷空分享一個 WordPress 的小技巧。

WordPress 用家應該都知道,每篇文章都可加入標籤,方便讀者找到題材相近的文章。如果可以在網頁上顯示這些文章的標題和連結,製作成一個列表,相信對讀者很有幫助,亦可增加網誌的 Page View。筆者以前介紹過用分類 (Category) 製作「相關文章」列表,今次改用標籤來做,而另一個不同之處是把這列表放在側欄上。放在側欄和放在文章內容下方有什麼不同呢?答案是絕大部分 Template 中,前者是 The Loop 完結後才運行,而很多 template tags 是只可用在 The Loop 之中,如果你發現以前修改 template 時常常遇到問題,很可能是沒注意到這問題,故亂把內文一些元素移到側欄之上。

要以相同標籤製作「相關文章」列表,首先當然要獲取文章的標籤,可使用 get_the_tags(post_id) 這個 function:

  1.  
  2. <?php
  3.         global $post;
  4.         $alltags = ;
  5.         $posttags = get_the_tags($post->ID);
  6.         if ($posttags) {
  7.                 foreach($posttags as $tag) {
  8.                         $alltags . $tag->name . ‘,’;
  9.                 }
  10.         }
  11. ?>
  12.  

以上方法可取得文章所有標籤,每個標籤用,分開,用意是之後顯示包舍上述任何一個標籤的文章,如果希望顯示包括所有標籤的文章,則用+號分隔。

之後可用以下方法抽取相關文章,特別要注意的是用 get_posts function,這 function 用於 The Loop 之外。

  1.  
  2. <?php
  3.         $args = array(
  4.                         ‘numberposts’ => 5,
  5.                         ‘post__not_in’ => array($post->ID),
  6.                         ‘orderby’=>‘rand’,
  7.                         ‘tag’ => $alltags
  8.                         );
  9.         $myposts = get_posts($args);
  10.         foreach($myposts as $post) {
  11.                 echo ‘<li><a href="’;
  12.                 the_permalink();
  13.                 echo ‘">’;
  14.                 the_title();
  15.                 echo ‘</a></li>’;
  16.         }
  17. ?>
  18.  

以上幾個 arugments,意思分別是顯示5篇相關文、不顯示目前這篇文章及隨機顯示,另外需要設計只有獨立顯示一篇文章時,才使用這功能。

分享:
發表回應