ホームページ  >  記事  >  CMS チュートリアル  >  DEDECMS のリストタグが重み付けソートをサポートするようにする方法

DEDECMS のリストタグが重み付けソートをサポートするようにする方法

藏色散人
藏色散人オリジナル
2019-12-02 09:17:272283ブラウズ

DEDECMS のリストタグが重み付けソートをサポートするようにする方法

DEDECMS のリスト タグで重み付けソートをサポートするにはどうすればよいですか?

DEDECMS システムは、テンプレートで使用できるドキュメントの重みによる並べ替えをサポートしています。

{dede:arclist row='10' titlelen='50' orderby='weight'} •[field:textlink/]
{/dede:arclist}

orderby='weight' は、重みに応じたドキュメントの並べ替えを実現します。これは arclist タグで、ドキュメント リストを呼び出すためにどこでも使用できます。

ただし、列リスト ページで list タグを使用する場合 (ドキュメント リストのページングを実装するため)、また、重量で並べ替えたい場合は、

{dede:list pagesize='10' titlelen='50' orderby='weight'} •[field:textlink/]
{/dede:list}

リストが重量で並べ替えられていないことがわかります。リストをどのように変更しても、順序は同じままです。

理由: dedecms は重みソートの arclist タグのみをサポートし、リスト タグはサポートしません

解決策:

1. ファイル arc.listview.class.php を開きます

2. "else if($orderby=="lastpost") {" ステートメントを見つけます (おそらく行 609 にあります)。この行の前で Enter キーを押し、次のステートメントを挿入します。

else if($orderby=="weight") { $ordersql = " order by arc.weight $orderWay"; }

3. 引き続き「if(ereg('hot|click|lastpost',$orderby))」ステートメントを探し、次のように変更します。

if(ereg('hot|click|weight|lastpost',$orderby))

変更が完了したら、保存します。ターゲットで重み付けソートが使用されている場合、生成後、文書リストが重み付けソート

4、テンプレート呼び出し

{dede:arclist row='10' titlelen='50' orderby='weight'} •[field:textlink/]
{/dede:arclist}
でインストールされていることがわかります。

以上がDEDECMS のリストタグが重み付けソートをサポートするようにする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。