[外掛] login view (訪客會員分區)

MODs Released by Other phpbb Sites
非官方認證通過之 MOD ,或許有安全性之疑慮,所有問題由原發表者回覆!

版主: 版主管理群

主題已鎖定
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8535
註冊時間: 2004-04-30 01:54
來自: Taiwan

[外掛] login view (訪客會員分區)

文章 心靈捕手 »

#################################################
## 外掛名稱: login view (訪客會員分區)
##
## 外掛描述: 如果您有這樣的需求的話--
## 哪些分區只給訪客看~
## 哪些分區只給會員看~
## 哪些分區不限制~
## 那麼這個外掛, 可以方便您在後台設定.
##
## 外掛作者: messagebox
##
## 外掛整理: 心靈捕手 http://wang5555.dnsfor.me
##
## 外掛版本: 1.0.0
##
## 安裝難度: 簡單 (約 10分鐘內)
##
## 外掛測試: phpbb 2.0.19 成功
#################################################
## 修改外掛前, 請您記得備份討論區以及資料庫.
#################################################
## 備註: 1. 外掛英文名稱: 採原始檔案資料夾設定
## 中文名稱: 由 心靈捕手 修定
##
## 2. 外掛版本: 由 心靈捕手 設定, 方便日後的更新\r
##
## 原始檔案下載: http://phpbb-tw.net/phpbb/viewtopic.php?p=191652#191652
#################################################
#
#-----[ SQL ]-----
#請先執行這段敘述(如果你的資料表開頭並非是"phpbb_",請記得修改)

代碼: 選擇全部

ALTER TABLE `phpbb_categories` ADD `login_flag` TINYINT( 2 ) DEFAULT '0' NOT NULL ;
#
#-----[ OPEN ]-----
#
index.php

#
#-----[ FIND ]-----
#

代碼: 選擇全部

$sql = "SELECT c.cat_id, c.cat_title, c.cat_order
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

$sql = "SELECT c.cat_id, c.cat_title, c.cat_order, c.login_flag
#
#-----[ FIND ]-----
#

代碼: 選擇全部

		//
		// Should we display this category/forum set?\r
		//
		$display_forums = false;
		for($j = 0; $j < $total_forums; $j++)
		{
			if ( $is_auth_ary[$forum_data[$j]['forum_id']]['auth_view'] && $forum_data[$j]['cat_id'] == $cat_id )
			{
				$display_forums = true;
			}
		}
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

		$login_flag = $category_rows[$i]['login_flag'];
		if ($login_flag == 0){
			//
			// Should we display this category/forum set?
			//
			$display_forums = false;
			for($j = 0; $j < $total_forums; $j++)

			{
				if ( $is_auth_ary[$forum_data[$j]['forum_id']]['auth_view'] && $forum_data[$j]['cat_id'] == $cat_id )
				{
					$display_forums = true;
				}
			}
		}elseif ($login_flag == 1){
			$display_forums =  (!$userdata['session_logged_in']) ? true : false;
		}elseif ($login_flag == 2){
			$display_forums =  ($userdata['session_logged_in']) ? true : false;
		}

#
#-----[ OPEN ]-----
#
admin/admin_forums.php

#
#-----[ FIND ]-----
#

代碼: 選擇全部

			$cat_title = $row['cat_title'];
#
#-----[ AFTER, ADD ]-----
#

代碼: 選擇全部

			$login_flag = $row['login_flag'];
#
#-----[ FIND ]-----
#

代碼: 選擇全部

			$s_hidden_fields = '<input type="hidden" name="mode" value="' . $newmode . '" /><input type="hidden" name="' . POST_CAT_URL . '" value="' . $cat_id . '" />';

#
#-----[ AFTER, ADD ]-----
#

代碼: 選擇全部

			//
			//<option selected value="0">No Limit</option>
			//
			$s_login_flag = '';
			for ($i=0;$i<count($lang['Login_flag']);$i++){
				$selected_ok = ($login_flag == $i) ? " selected" : "";
				$s_login_flag .= '<option value="'.$i.'"'.$selected_ok.'>'.$lang['Login_flag'][$i].'</option>
';
			}

#
#-----[ FIND ]-----
#

代碼: 選擇全部

				'L_CATEGORY' => $lang['Category'],
#
#-----[ AFTER, ADD ]-----
#

代碼: 選擇全部

				'L_CATESTYLE' => $lang['Catstyle'],
#
#-----[ FIND ]-----
#

代碼: 選擇全部

				'S_FORUM_ACTION' => append_sid("admin_forums.$phpEx"))

#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

				'S_FORUM_ACTION' => append_sid("admin_forums.$phpEx"),
				'S_LOGIN_FLAG' => $s_login_flag,)
#
#-----[ FIND ]-----
#

代碼: 選擇全部

				SET cat_title = '" . str_replace("\'", "''", $HTTP_POST_VARS['cat_title']) . "'

#
#-----[ AFTER, ADD ]-----
#

代碼: 選擇全部

				,login_flag = ".intval($HTTP_POST_VARS['login_flag'])."
#
#-----[ OPEN ]-----
#
templates/subSilver/admin/category_edit_body.tpl

#
#-----[ FIND ]-----
#

代碼: 選擇全部

	  <td class="row2"><input class="post" type="text" size="25" name="cat_title" value="{CAT_TITLE}" /></td>
	</tr>
#
#-----[ AFTER, ADD ]-----
#

代碼: 選擇全部

	<tr> 
	  <td class="row1">{L_CATESTYLE}</td>
	  <td class="row2">
	  	<select size="1" name="login_flag">
	  		{S_LOGIN_FLAG}
		</select>
	  </td>
	</tr>

#
#-----[ OPEN ]-----
#
language/lang_chinese_traditional_taiwan/lang_admin.php

#
#-----[ FIND ]-----
#

代碼: 選擇全部

?>
#
#-----[ BEFORE, ADD ]-----
#
$lang['Catstyle'] = '屬性';
$lang['Login_flag'] = array('不設限制','只給訪客觀看','只給會員觀看');
#
#-----[ SAVE & CLOSE ]-----
#
#EoM

--
補充說明: -by- 心靈捕手 http://wang5555.dnsfor.me


1. 原始檔案除錯:
#
#-----[ OPEN ]-----
#
index.php

#
#-----[ FIND ]-----
#

代碼: 選擇全部

			if ( $userdata['session_logged_in'] )
			$display_forums =  (!$userdata['session_logged_in']) ? true : false;

#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

			$display_forums =  (!$userdata['session_logged_in']) ? true : false;
#
#-----[ SAVE & CLOSE ]-----
#
#EoM

2. 原始檔案修改: 為避免轉碼的不便
#
#-----[ OPEN ]-----
#
admin/admin_forums.php

#
#-----[ FIND ]-----
#
//<option selected value="0">不設限制</option>
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

			//<option selected value="0">No Limit</option>

#
#-----[ SAVE & CLOSE ]-----
#
#EoM

3. 若您的論壇語系為 utf-8 編碼, 必須將語言包裡頭的檔案, 或新增的語言代碼, 也轉為 utf-8 編碼.
// 建議您: 用 ConvertZ 來轉.
// 下載位址:
http://alf-li.pcdiscuss.com/c_convertz.html
// 參考連結:
http://phpbb-tw.net/phpbb/viewtopic.php?p=210471#210471
// 影音教學:
http://wang5555.dnsfor.me/phpbb2/viewtopic.php?t=16028

--
貼圖展示:

進入控制台-> 版面管理-> 管理選項
選擇您要 '編輯' 的分區, 進行設定 (預設為 '不設限制')
圖檔

圖檔
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
主題已鎖定

回到「非官方認證外掛」