1 October 2006  |  未經授權,請勿複製或轉載。

繼續閱讀嗎?


 
點播:More Than Words
主唱:Extreme
日期:1990-07-19 (A&M)

「繼續閱讀」幾乎已是各大部落格必備的功能,但其實我一直不太喜歡,因為如果對方的頻寬不夠,每下載一次頁面就得耗費許多時間,讀完後又要返回前頁,再繼續「繼續閱讀」。原本打算看十篇文章,等久了也興致大減,最後多半草草關閉視窗。

為什麼要使用「繼續閱讀」?我想最主要的原因是,站主想瞭解有多少人閱讀過某篇文章,只有點擊該文章的專屬網址,才能算入「點閱人數」。另外一個原因或許是,有些文章實在太長,若不隱藏起來,開啟時間勢必增加,而為了縮短時間,就必須減少每頁顯示的文章數,最後導致頁面數增加。

建構 ChunMin.com 的部落格時,我原本不打算使用「繼續閱讀」,我自己都不喜歡點進點出了,又何苦強迫別人也得如此;可是,太長的文章開啟時確實不太有效率,尤其是某些小眾雜記更是如此。

因此,昨天找到一個非常不錯的「繼續閱讀」,立刻將這個 Plugin 試裝起來,它跟 Extended Live Archives(請參見右側的「Tags & Archives」)同樣使用 AJAX 技術,可在不用重新整理網頁的狀態下,直接讀取「繼續閱讀」與「迴響」。點選下方「繼續閱讀 »」即可看見效果(如果你有按上方的音樂,播放亦不會中斷)。

Ajaxified Expand NOW 0.7 beta 6 安裝筆記

  1. 將「ajaxified-expand-now.php」上傳至 Plugins 資料夾。
  2. 至控制台 Activate。
  3. 在想要截斷的文章處插入代碼「<!–more–>」即可。
  4. 至於「迴響」功能,則須修改 Theme 的 index.php,目前修改如下。
  5. 尋找以下程式碼

    <p class="comentarios-link"><?php comments_popup_link(__('Comments'), __('Comments (1)'), __('Comments (%)'), 'commentslink', __('Comments off')); ?>
    </p>

    替代為

    <p class="comentarios-link">
    <?php if(function_exists('commentShowHide')) commentShowHide('link'); ?> <?php comments_popup_link(__('Leave a Comment'), __('(1):Leave a Comment'), __('(%):Leave a Comment'), 'commentslink', __('Comments off')); ?><?php if(function_exists('commentShowHide')) commentShowHide('comments'); ?></p>

另外還發現兩個 WordPress 的問題:一是點擊「Leave a Comment」時視窗無法跳入迴響的部分,仍舊留在標題處,二是 WordPress 某些資料夾似乎沒有保護機制,直接輸入資料夾名稱就能瀏覽內部檔案結構(第二個問題我覺得滿可怕的,WordPress 這麼多人使用的 Open Source 為何忽略此點呢?)

  1. 迴響的問題目前是修正 /wp-includes/comment-functions.php 裡的兩個地方。
    1. 當文章尚未有迴響時,連結形式是「#respond」
    2. echo get_permalink() . '#respond';
      修改成「#comment」後,按「Leave a Comment」將自動跳至留言框。
      echo get_permalink() . '#comment';

    3. 當文章已有迴響時,連結形式是「#comments」
    4. return get_permalink() . '#comments';

      修改成「#comment」後,按「Leave a Comment」將自動跳至留言框,若只想閱讀文章則可按 Ajaxified Expand NOW 的「Show Comments」。

      return get_permalink() . '#comment';

  2. 資料夾欠缺保護機制的問題,目前則是在每個資料夾內放置一個空白的「index.html」,放完後才發現,WordPress 的資料夾還挺多的呢。

email this 這是什麼?

References

Actions

Informations

6 Responses to “繼續閱讀嗎?”

  1. C.H.Weng Says:

    想針對“直接輸入資料夾名稱就能瀏覽內部檔案結構”稍稍說明一下,這個基本上應該算是伺服器方面的問題,因為要不要顯示資料夾的內容,是由伺服器方面來決定的,並不是 WordPress。

    而且,雖然看得到各個檔案的名稱,但是若非經由正常的呼叫,通常點進程式檔內也看不到任何內容,不然就是祇有錯誤訊息而已,應該也不會構成安全上的威脅。再者,如果駭客想要找漏洞入侵,只要知道你是用 WordPress 系統,就可以下載一份原始碼來研究了,會不會顯示出檔案列表其實我想差別並不大。只是顯示出來可能會比較不美觀罷了。

    如果你沒辦法改正伺服器方面的限制,也許可以考慮在每個資料夾下都放一個索引頁(index.html 或 index.php),這樣除非直接輸入完整的檔案名稱與路徑,不然祇會顯示出你指定的首頁內容而已。

  2. ChunMin Says:

    原來如此 8O 真是一解我多時的疑惑,多謝你解釋得如此詳細。
    我原本也是覺得WordPress這麼成熟的程式,應該不可能被我這種三腳貓發現破綻;不過資料夾內容曝光,總覺得好像被別人看光光似的,內心不由得一陣緊張 oops
    目前也只能在各個資料夾內放一個index檔遮羞,聊以自慰。
    最後,再次謝謝你創作的Plugins,讓我這種外行也能假裝很專業哩 mrgreen

  3. rw Says:

    9 + 4 = ? (required)
    好有趣的required

    繼續閱讀還有一個滿有用的功能
    防止讀者誤讀
    可能是政治議題 怕有人看了不高興 於是先警告讀者 ,,,,
    另外 也可能是 電影書籍球賽介紹
    內文寫了一些劇情 怕影響看戲的心情(預知結果)

  4. ChunMin Says:

    To RW

    這是一個防機器人留言的plugin:「Did You Pass Math?」,不過其實原版是顯示成「What is the sum of 9 and 4?」

  5. mayer Says:

    很棒的分享,我也來嘗試用看看!

  6. 宜蘭民宿 Says:

    讓閱讀變的很方便,是一門藝術。

Leave a Reply

You must be logged in to post a comment.