Wie kann das Listen-Tag von DEDECMS die Gewichtssortierung unterstützen?
Das DEDECMS-System unterstützt die Sortierung nach Dokumentengewicht, die in der Vorlage verwendet werden kann:
{dede:arclist row='10' titlelen='50' orderby='weight'} •[field:textlink/] {/dede:arclist}
Orderby='weight' realisiert die Sortierung von Dokumenten nach Gewicht. Dies ist das arclist-Tag, das überall zum Aufrufen der Dokumentliste verwendet werden kann.
Wenn Sie jedoch auf der Spaltenlistenseite das Listen-Tag verwenden möchten (um das Paging der Dokumentliste zu implementieren). Sie möchten auch nach Gewicht sortieren,
{dede:list pagesize='10' titlelen='50' orderby='weight'} •[field:textlink/] {/dede:list}
Sie werden feststellen, dass Ihre Liste nicht nach Gewicht sortiert ist, egal wie Sie sie ändern, die Reihenfolge ist immer noch dieselbe!
Ursache: dedecms unterstützt nur das Arclist-Tag für die Gewichtssortierung und nicht das Listen-Tag
Lösung:
1. Öffnen Sie die Datei arc.listview.class.php
2. Suchen Sie die Anweisung „else if($orderby=="lastpost") {“, die sich wahrscheinlich in Zeile 609 befindet. Drücken Sie die Eingabetaste vor dieser Zeile und fügen Sie die folgende Anweisung ein:
else if($orderby=="weight") { $ordersql = " order by arc.weight $orderWay"; }
3. Suchen Sie weiter nach der Anweisung „if(ereg('hot|click|lastpost',$orderby))“ und ändern Sie sie wie folgt:
if(ereg('hot|click|weight|lastpost',$orderby))
Nachdem die Änderung abgeschlossen ist, speichern Sie sie . Wenn im Ziel eine Gewichtssortierung verwendet wurde, können Sie nach der Erstellung sehen, dass die Dokumentenliste nach Gewicht sortiert wurde
4
Das obige ist der detaillierte Inhalt vonSo stellen Sie sicher, dass das Listen-Tag von DEDECMS die Gewichtssortierung unterstützt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!