[phpBB3] BBCode [url] Tag 支援中文網址

在 phpBB2 的時候就有發現這問題了,當時並沒有想去解決這問題,然而至今到了 phpBB3,依然出現這問題,不過我想這是因為中文網址的盛行,以及像 Wiki 之類都會有中文標籤,例如:一分鐘教室-userChrome.css,解決方法可以透過 urlencode 函式來處理掉網址編碼問題,在 phpBB 處理文章儲存,會先經過 bbcode 的處理,將 **** 標籤,會經過 get_preg_expression(‘url’) 這函式的驗證,看 url 是否合法,當然如果網址列有中文就不可能通過,所以必須在網址驗證之前,把網址編碼過,通過驗證之後再把網址解碼,這樣就沒問題了,底下為安裝步驟 打開 includes/message_parser.php 找尋 function validate_url($var1, $var2) 前面加入 /** * url encode * * @param string $string http url */ function encode_url($string) { $entities = array('%21', '%2A', '%27', '%28', '%29', '%3B', '%3A', '%40', '%26', '%3D', '%2B', '%24', '%2C', '%2F', '%3F', '%25', '%23', '%5B', '%5D'); $replacements = array('!', '*', "'", "(", ")", ";", ":", " [Read More]

[phpBB3 外掛] 根據使用者文章數目限制簽名檔顯示

前一篇提到:『[教學] phpBB3 使用者簽名檔 url 連結加上 rel=”nofollow”』,本篇會將其做成後台,方便管理者可以從後台管理,這次加上一個新功能:『限制使用者顯示簽名檔』,根據使用者文章數量來決定是否顯示簽名檔,可以避免想要來打廣告的新註冊使用者,限制文章數量是一種方式,但是也不是最好的方式,phpBB3 本身可以在後台限制是否顯示使用者簽名檔,不過我想各大站長都會開放此功能,好讓使用者可以放個人網站或者是部落格,底下是外掛安裝方式: 安裝 打開 includes/acp/acp_board.php 找尋 # # Find # 'max_sig_img_height' => array('lang' => 'MAX_SIG_IMG_HEIGHT', 'validate' => 'int:0', 'type' => 'text:5:4', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']), 後面加上 # # after add # 'max_sig_post_count_limit' => array('lang' => 'MAX_SIG_POSTS_LIMIT', 'validate' => 'int:0', 'type' => 'text:5:4', 'explain' => true), 打開 viewtopic.php 找尋 # # Find # if ($row['user_sig'] && $config['allow_sig'] && $user->optionget('viewsigs')) 取代 # # Replace # if (($row['user_sig'] && $config['allow_sig'] && $user->optionget('viewsigs') && $row['user_posts'] >= $config['max_sig_post_count_limit']) || (isset($user->data['session_admin']) && $user->data['session_admin'])) 中文化 打開 language/zh_cmn_hant/acp/board. [Read More]

[教學] phpBB3 使用者簽名檔 url 連結加上 rel=”nofollow”

基於 Moztw 討論區 有大陸使用者註冊之後,在簽名檔加入一些廣告連結,為了降低 Google Page Rank,所以我們必須指示搜尋引擎「不要前往此網頁上的連結」或是「不要前往此連結」,可以參考 關於 rel=“nofollow”,phpBB3 編輯三個檔案就可以了,此修改不影響文章內容,只有針對簽名檔作用,底下是 patch 程式碼,可以參考看看 includes/bbcode.php --- phpBB3/includes/bbcode.php 2010-03-06 04:37:23.000000000 +0800 +++ www/includes/bbcode.php 2010-06-10 20:58:02.000000000 +0800 @@ -2,7 +2,8 @@ /** * * @package phpBB3 -* @version $Id$ +* @version $Id: bbcode.php 9461 2009-04-17 15:23:17Z acydburn $ +* @log 2010-06-10 appleboy $ * @copyright (c) 2005 phpBB Group * @license http://opensource.org/licenses/gpl-license.php GNU Public License * @@ -48,7 +49,7 @@ /** * Second pass bbcodes */ - function bbcode_second_pass(&$message, $bbcode_uid = '', $bbcode_bitfield = false) + function bbcode_second_pass(&$message, $bbcode_uid = '', $bbcode_bitfield = false, $bbcode_is_sig = false) { if ($bbcode_uid) { @@ -110,6 +111,13 @@ } $message = preg_replace($preg['search'], $preg['replace'], $message); + + /* + * 2010. [Read More]

phpBB 3.1 版本將不再支援 PHP4

phpBB 官方網站看到這篇:『phpBB 3.1 to discontinue support for PHP versions below 5.2』,內容大致上是說 phpBB 3.0 “Olympus” 系列的版本將是 phpBB 支援 php 4 最後一個版本,之後所推出的 phpBB 3.1 “Ascraeus” 版本,PHP 需要 5.2 或者是更高才可以正確執行。隨著 3.1 版本的推出,3.0 將會繼續維護 6~9 個月的時間,這版本將會繼續維持相容於 php 4 系統。 由於 phpBB 3.1 還處於開發的階段,尚未決定發佈日期,所以大家還是有很多時間可以將 php 升級到 5.2.0 或者是更高。看到 phpBB 可以捨棄 php 4 還蠻高興的,自己本身玩 phpBB 多年,看到 2.0 到 3.0 的變化蠻大的,php 4 安全姓做的非常不好,所以導致 code 非常隴長,希望 3.1 可以快點推出。