dedecms 検索結果ページ チャネル モデルごとに異なる結果テンプレートを表示するにはどうすればよいですか?
dedecms 独自のテンプレートには、画像モデル、記事モデル、ソフトウェア モデルなどが含まれます。ソフトウェア モデルのテンプレートを表示するなど、ユーザー エクスペリエンスのために検索ボックスに判定を追加する必要がある場合があります。ソフトウェアモデルの検索時に、記事モデルの検索時に記事モデルのテンプレートを表示します。
推奨学習: Dreamweaver cms
具体的な実装コードは次のとおりです:
1.
コードを先頭部分は次のようになります:
<script language="javascript" type="text/javascript"> function check(){ if(document.formsearch.channeltype.value=="1") document.formsearch.action="{dede:field name='phpurl'/}/search.php" else document.formsearch.action="{dede:field name='phpurl'/}/search_news.php" } </script>
2. 検索コードを変更します
コードは次のとおりです:
<form name="formsearch" action="" data-ke-onsubmit="check();"> <div class="form"> <input type="hidden" name="kwtype" value="0" /> <input name="q" type="text" class="search-keyword" id="search-keyword" value="{dede:global name='keyword' function='RemoveXSS(@me)'/}" /> <select name="channeltype" id="channeltype" > <option value='1' selected='1'>新闻</option> <option value='3'>软件</option> </select> <button type="submit" class="search-submit">搜索</button> </div> </form>
重要な点は
コードは次のとおりです。以下の通り:
<select name="channeltype" id="channeltype" > <option value='1' selected='1'>新闻</option> <option value='3'>软件</option> </select>
キー設定: ここで設定したモデルで検索 1 は記事モデル 3 はソフトウェアモデル
3. serach.php をコピーし、名前を search_images.php
に変更します。4. search_images.php
を開きます。
コードを次のように変更します:
require_once(DEDEINC."/arc.searchview.class.php");
を次の
コードに変更します:
require_once(DEDEINC."/arc.searchimg.class.php");
5. arc.searchview.class.php をコピーし、名前を arc.searchimg .class.php
6 に変更します。arc.searchimg.class.php
を開いて
# を見つけます。 ## コードは次のとおりです:$tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/search.htm";
## に変更されました #コードは次のとおりです:
$tempfile = $GLOBALS['cfg_basedir'].$GLOBALS['cfg_templets_dir']."/".$GLOBALS['cfg_df_style']."/search_images.htm
以上がdedecms 検索結果ページでチャネル モデルごとに異なる結果テンプレートを表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。