花魁直播高品质美女在线视频互动社区 - 花魁直播官方版

 歡迎來到素材無憂網(wǎng),按 + 收藏我們
登錄 注冊 退出 找回密碼

織夢聯(lián)動篩選偽靜態(tài)[單鏈接形式]

時間: 2020-09-15 16:21 閱讀: 作者:素材無憂網(wǎng)

偽靜態(tài)URL

網(wǎng)站用的是靜態(tài),篩選用的是偽靜態(tài),篩選的偽靜態(tài)地址以字段和鍵值呈現(xiàn),讓篩選URL與靜態(tài)保持一致。

如:

靜態(tài)欄目頁

http://www.dedehtml.com/juji/

靜態(tài)欄目頁分頁

http://www.dedehtml.com/juji/list_1_2.html

偽靜態(tài)篩選頁

http://www.dedehtml.com/juji/list_1_area_0.html

偽靜態(tài)篩選分頁

http://www.dedehtml.com/juji/list_1_area_0_2.html

【警告】
操作之前先備份你的程序這2個文件。
/include/arc.listview.class.php
/include/extend.func.php

織夢聯(lián)動篩選偽靜態(tài)[單鏈接形式]+偽靜態(tài)規(guī)則 打包下載

本地下載

網(wǎng)盤下載

提取碼: acna

使用說明

Ps:如果你的網(wǎng)站已經(jīng)做了篩選功能的,請對比一下我的文件來修改再使用。

1. 選擇對應的編碼,把文件夾文件全部覆蓋到對應目錄;

2. 后臺-系統(tǒng)配置 添加變量
    變量名稱:cfg_rewritea
    變量類型:布爾(Y/N)
    參數(shù)說明:篩選偽靜態(tài)
    變量值:Y
    所屬組:站點設置

織夢聯(lián)動篩選偽靜態(tài)[單鏈接形式](圖1)

3. .htaccess 為apache偽靜態(tài),放在網(wǎng)站根目錄,用于篩選偽靜態(tài)使用,iis和nginx用戶自行轉換。

4. 設置網(wǎng)站整站為靜態(tài),生成,瀏覽網(wǎng)站帶篩選的欄目,看效果。

內容頁輸出所屬篩選值+鏈接(支持動態(tài)/偽靜態(tài))

織夢聯(lián)動篩選偽靜態(tài)[單鏈接形式](圖2)

打開 /nclude/extend.func.php 在最下面加入

/**
 *  內容頁輸出所屬篩選值+鏈接
 *
 * @access    public
 * @param     string  $id	文檔id
 * @param     string  $fieldsnamef	單個篩選字段
 * @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 `dede_archives` where id='$id' ");
		$channelid = $arcrow['channel'];
		$tid = $arcrow['typeid'];
		$typerow = $dsql->GetOne(" Select typedir From `dede_arctype` where id='$tid' ");
		$typedir = MfTypedir($typerow["typedir"]);
		
		$channelrow = $dsql->GetOne("SELECT addtable FROM dede_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  `dede_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')/]

iis7+偽靜態(tài)規(guī)則

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>

		<rewrite>
			<rules>
				<rule name="篩選列表分頁">
					<match url="^.+/list_([0-9]+)_([0-9a-z_]+_[0-9]+)_([0-9]+)\.html$" ignoreCase="false" />
					<action type="Rewrite" url="/plus/list.php?tid={R:1}&amp;filter={R:2}&amp;PageNo={R:3}" appendQueryString="false" />
				</rule>
				<rule name="篩選列表">
					<match url="^.+/list_([0-9]+)_([0-9a-z_]+_[0-9]+)\.html$" ignoreCase="false" />
					<action type="Rewrite" url="/plus/list.php?tid={R:1}&amp;filter={R:2}" appendQueryString="false" />
				</rule>
			</rules>
		</rewrite>
		
    </system.webServer>
</configuration>

版權聲明: 本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權益請與我們聯(lián)系,我們將在24小時內刪除!謝謝!

轉載請注明: 織夢聯(lián)動篩選偽靜態(tài)[單鏈接形式]

標簽:  
模板推薦