演示效果
DedeCms的織夢(mèng)聯(lián)動(dòng)篩選[偽靜態(tài)版],網(wǎng)站用的是靜態(tài),篩選用的是偽靜態(tài),篩選的偽靜態(tài)地址以字段和鍵值呈現(xiàn),讓篩選URL與靜態(tài)保持一致。如:
靜態(tài)欄目頁(yè)
http://www.123.com/juji/
靜態(tài)欄目頁(yè)分頁(yè)
http://www.123.com/juji/list_1_?2.html
偽靜態(tài)篩選頁(yè)
http://www.123.com/juji/list_1_?AREA_?0.html
偽靜態(tài)篩選分頁(yè)
http://www.123.com/juji/list_1_?area_?0_?2.html
【警告】
操作之前先備份你的程序這2個(gè)文件。
\ include \ arc.listview.class.php
\ include \ extend.func.php
dedecms織夢(mèng)聯(lián)動(dòng)篩選偽靜態(tài)版-單鏈接形式
密碼: dbm3
1.選擇對(duì)應(yīng)的編碼,把文件夾文件全部覆蓋到對(duì)應(yīng)目錄;
2.后臺(tái) - 系統(tǒng)配置添加變量
變量名稱:cfg_rewritea
變量類型:布爾(Y / N)
參數(shù)說(shuō)明:篩選a靜態(tài)
變量值:Y
所屬組:站點(diǎn)設(shè)置
3.后臺(tái) - 系統(tǒng) - 系統(tǒng)設(shè)置 - 系統(tǒng)基本參數(shù) - 其他選項(xiàng) - 禁用模板標(biāo)簽,把php刪除后保存;
4.后臺(tái) - 核心 - 頻道模型 - 內(nèi)容模型管理
找到您要設(shè)置篩選的模型,這里以“普通文章”為例,點(diǎn)擊右邊的編輯按鈕,在出來(lái)的頁(yè)面中切換到“字段管理”,點(diǎn)擊“添加新字段”,填寫(xiě)的時(shí)候注意“數(shù)據(jù)類型”選擇【使用選項(xiàng)框下拉】;
5.添加文檔,選擇對(duì)應(yīng)的篩選,已經(jīng)添加的文檔需要重新編輯,選擇對(duì)應(yīng)的篩選;
6.htaccess為apache偽靜態(tài),放在網(wǎng)站根目錄,用于篩選偽靜態(tài)使用,iis和nginx用戶自行轉(zhuǎn)換。
7.設(shè)置網(wǎng)站整站為靜態(tài),生成,瀏覽網(wǎng)站帶篩選的欄目,看效果。
在需要顯示篩選的地方加入(手機(jī)版也一樣)
{dede:php}AddFilter(模型ID號(hào),類型,"字段1");{/dede:php}
例:
{dede:php}AddFilter(1,1,"area");{/dede:php}
多個(gè)字段用半角逗號(hào)分隔
{dede:php}AddFilter(模型ID號(hào),類型,"字段1,字段2,字段3");{/dede:php}
例:
{dede:php}AddFilter(1,1,"area,type,time");{/dede:php}
<title>{dede:field.time/} {dede:field.area/} {dede:field.type/} - {dede:field.title/} - {dede:global.cfg_webname/}</title>
打開(kāi) \include\extend.func.php 在最下面加入
/**
* 內(nèi)容頁(yè)輸出所屬篩選值+鏈接
*
* @access public
* @param string $id 文檔id
* @param string $fieldsnamef 單個(gè)篩選字段
* @return string
*/
function GetFilterUrl($id,$fieldsnamef)
{
global $dsql,$cfg_cmspath,$cfg_rewritea;
if (!isset($id) && !is_numeric($id))
{
return '';
}
else
{
$arcrow = $dsql->GetOne(" Select typeid,channel From `SzsFox_archives` where id='$id' ");
$channelid = $arcrow['channel'];
$tid = $arcrow['typeid'];
$typerow = $dsql->GetOne(" Select typedir From `SzsFox_arctype` where id='$tid' ");
$typedir = MfTypedir($typerow["typedir"]);
$channelrow = $dsql->GetOne("SELECT addtable FROM SzsFox_channeltype where id='$channelid'");
$addtable = trim($channelrow['addtable']);
$fieldrow = $dsql->GetOne("SELECT $fieldsnamef FROM `$addtable` WHERE aid=$id");
}
$plist = $_SERVER['HTTP_X_REWRITE_URL'] ? string_filter($_SERVER['HTTP_X_REWRITE_URL']) : string_filter($_SERVER['REQUEST_URI']);
if($cfg_rewritea == 'Y')
{
$plist = stripos($plist, "makehtml_list_action.php") ? $cfg_cmspath.$typedir.'/' : $plist;
$filterarr = string_filter(stripos($plist, ".html") ? str_replace(".html", "", $plist) : $cfg_cmspath.$typedir.'/');
}
else
{
$nofilter = (isset($_REQUEST['TotalResult']) ? "&TotalResult=".$_REQUEST['TotalResult'] : '').(isset($_REQUEST['PageNo']) ? "&PageNo=".$_REQUEST['PageNo'] : '');
$filterarr = string_filter(stripos($plist, "list.php?tid=") ? str_replace($nofilter, '', $plist) : $GLOBALS['cfg_cmsurl']."/plus/list.php?tid=".$tid);
}
$cInfos = $dsql->GetOne(" Select * From `SzsFox_channeltype` where id='$channelid' ");
$fieldset = $cInfos['fieldset'];
$dtp = new DedeTagParse();
$dtp->SetNameSpace('field','<','>');
$dtp->LoadSource($fieldset);
$result = '';
if(is_array($dtp->CTags))
{
foreach($dtp->CTags as $tida=>$ctag)
{
$field_name = $ctag->GetName();
$fieldsname = $fieldsnamef ? explode(",", $fieldsnamef) : explode(",", $field_name);
if( in_array($field_name, $fieldsname))
{
if($cfg_rewritea == 'Y')
{
$href = "";
$addonfields_items = explode(",",$ctag->GetAtt('default'));
$i = array_search($fieldrow[$fieldsnamef],explode(",",$ctag->GetAtt('default')));
$filterarr1 = explode("list_", $filterarr);
$href = $filterarr1[0]."list_".$tid.'_'.$field_name.'_'.$i;
$href .= ".html";
$href = str_replace(array("_".$field_name.".",".","_".$_REQUEST['TotalResult']."_".$_REQUEST['PageNo']),array(".",".",""),$href);
$result .= '<a href="'.$href.'">'.$addonfields_items[$i].'</a>';
}
else
{
$addonfields_items = explode(",",$ctag->GetAtt('default'));
$i = array_search($fieldrow[$fieldsnamef],explode(",",$ctag->GetAtt('default')));
$href = stripos($filterarr,$ctag->GetName().'=') ? str_replace("=".$fields_value,"=".urlencode($addonfields_items[$i]),$filterarr) : $filterarr.'&'.$ctag->GetName().'='.urlencode($addonfields_items[$i]);
$href = str_replace("&TotalResult=".$_REQUEST['TotalResult']."&PageNo=".$_REQUEST['PageNo'], "", $href);
$result .= '<a title="'.$addonfields_items[$i].'" href="'.$href.'">'.$addonfields_items[$i].'</a>';
}
}
}
}
return $result;
}
<small>區(qū)域:</small>{dede:field.id function=GetFilterUrl(@me,'area')/}
<small>地鐵:</small>{dede:field.id function=GetFilterUrl(@me,'subway')/}
區(qū)域:[field:id function=function=GetFilterUrl(@me,'area')/]
地鐵:[field:id function=function=GetFilterUrl(@me,'subway')/]
]]>
演示效果:
DedeCms織夢(mèng)聯(lián)動(dòng)篩選[偽靜態(tài)-目錄形式],網(wǎng)站用的是靜態(tài),篩選用的是偽靜態(tài),篩選的偽靜態(tài)地址以字段和鍵值目錄形式呈現(xiàn),讓篩選URL與靜態(tài)保持一致。如:
靜態(tài)欄目頁(yè)
http://www.123.com/dianshi/
靜態(tài)欄目頁(yè)分頁(yè)
http://www.123.com/dianshi/list_1_2.html
偽靜態(tài)篩選頁(yè)
http://www.123.com/dianshi/area_0/
偽靜態(tài)篩選分頁(yè)
http://www.123.com/dianshi/area_0/2
操作之前先備份你的程序這3個(gè)文件。
\plus\list.php
\include\arc.listview.class.php
\include\extend.func.php
dedecms織夢(mèng)聯(lián)動(dòng)篩選偽靜態(tài)目錄形式
1. 選擇對(duì)應(yīng)的編碼,把文件夾文件全部覆蓋到對(duì)應(yīng)目錄;
2. 后臺(tái)-系統(tǒng)配置 添加變量
變量名稱:cfg_rewritea
變量類型:布爾(Y/N)
參數(shù)說(shuō)明:篩選偽靜態(tài)
變量值:Y
所屬組:站點(diǎn)設(shè)置
3. 后臺(tái) - 系統(tǒng) - 系統(tǒng)設(shè)置 - 系統(tǒng)基本參數(shù) - 其他選項(xiàng) - 禁用模板標(biāo)簽 ,把php刪除后保存;
4. 后臺(tái) - 核心 - 頻道模型 - 內(nèi)容模型管理
找到您要設(shè)置篩選的模型,這里以“普通文章”為例,點(diǎn)擊右邊的編輯按鈕,在出來(lái)的頁(yè)面中切換到“字段管理”,
點(diǎn)擊“添加新字段”,填寫(xiě)的時(shí)候注意"數(shù)據(jù)類型"選擇【使用option下拉框】;
5. 添加文檔,選擇對(duì)應(yīng)的篩選,已經(jīng)添加的文檔需要重新編輯,選擇對(duì)應(yīng)的篩選;
6. .htaccess 為apache偽靜態(tài),放在網(wǎng)站根目錄,用于篩選偽靜態(tài)使用,iis和nginx用戶自行轉(zhuǎn)換。
7. 設(shè)置網(wǎng)站整站為靜態(tài),生成,瀏覽網(wǎng)站帶篩選的欄目,看效果。
在需要顯示篩選的地方加入(手機(jī)版也一樣),字段用半角逗號(hào)分隔。
{dede:php}AddFilter(模型ID號(hào),類型,"字段1,字段2,字段3");{/dede:php}
調(diào)用代碼(例):
{dede:php}AddFilter(1,1,"area,type,time");{/dede:php}
<title>{dede:field.time/} {dede:field.area/} {dede:field.type/} - {dede:field.title/} - {dede:global.cfg_webname/} </title>
完成
]]>
dedecms織夢(mèng)聯(lián)動(dòng)篩選[偽靜態(tài)版],網(wǎng)站用的是靜態(tài),篩選用的是偽靜態(tài),篩選的偽靜態(tài)地址以字段和鍵值呈現(xiàn),讓篩選URL與靜態(tài)保持一致。如:
靜態(tài)欄目頁(yè)
https://www.123.com/juji/
靜態(tài)欄目頁(yè)分頁(yè)
https://www.123.com/juji/list_1_2.html
偽靜態(tài)篩選頁(yè)
https://www.123.com/juji/list_1_area_0.html
偽靜態(tài)篩選分頁(yè)
https://www.123.com/juji/list_1_area_0_2.html
【警告】
操作之前先備份你的程序這2個(gè)文件。
\include\arc.listview.class.php
\include\extend.func.php
織夢(mèng)聯(lián)動(dòng)篩選[偽靜態(tài)版] 下載
鏈接: https://pan.baidu.com/s/1c6HFR4 密碼: q4xs
本地下載:dedecms織夢(mèng)聯(lián)動(dòng)篩選[偽靜態(tài)]
1. 選擇對(duì)應(yīng)的編碼,把文件夾文件全部覆蓋到對(duì)應(yīng)目錄;
2. 后臺(tái)-系統(tǒng)配置 添加變量
變量名稱:cfg_rewritea
變量類型:布爾(Y/N)
參數(shù)說(shuō)明:篩選偽靜態(tài)
變量值:Y
所屬組:站點(diǎn)設(shè)置
3. 后臺(tái) - 系統(tǒng) - 系統(tǒng)設(shè)置 - 系統(tǒng)基本參數(shù) - 其他選項(xiàng) - 禁用模板標(biāo)簽 ,把php刪除后保存;
4. 后臺(tái) - 核心 - 頻道模型 - 內(nèi)容模型管理
找到您要設(shè)置篩選的模型,這里以“普通文章”為例,點(diǎn)擊右邊的編輯按鈕,在出來(lái)的頁(yè)面中切換到“字段管理”,
點(diǎn)擊“添加新字段”,填寫(xiě)的時(shí)候注意"數(shù)據(jù)類型"選擇【使用option下拉框】;
5. 添加文檔,選擇對(duì)應(yīng)的篩選,已經(jīng)添加的文檔需要重新編輯,選擇對(duì)應(yīng)的篩選;
6. .htaccess 為apache偽靜態(tài),放在網(wǎng)站根目錄,用于篩選偽靜態(tài)使用,iis和nginx用戶自行轉(zhuǎn)換。
7. 設(shè)置網(wǎng)站整站為靜態(tài),生成,瀏覽網(wǎng)站帶篩選的欄目,看效果。需要批量設(shè)置工具請(qǐng)看【http://www.vanhostingweb.com/1566.html】
在需要顯示篩選的地方加入(手機(jī)版也一樣)
{dede:php}AddFilter(模型ID號(hào),類型,"字段1");{/dede:php}
例:
{dede:php}AddFilter(1,1,"area");{/dede:php}
多個(gè)字段用半角逗號(hào)分隔
{dede:php}AddFilter(模型ID號(hào),類型,"字段1,字段2,字段3");{/dede:php}
例:
{dede:php}AddFilter(1,1,"area,type,time");{/dede:php}
<title>{dede:field.time/} {dede:field.area/} {dede:field.type/} - {dede:field.title/} - {dede:global.cfg_webname/}</title>
]]>