Heim CMS-Tutorial DEDECMS Dreamweaver dedecms implementiert eine alphabetische Indexsuchfunktion

Dreamweaver dedecms implementiert eine alphabetische Indexsuchfunktion

Dec 27, 2019 pm 02:43 PM
织梦cms

Dreamweaver dedecms implementiert eine alphabetische Indexsuchfunktion

Das DEDE-System verfügt über die Funktion „alphabetischer Index“

Die Implementierungsmethode ist wie folgt

Schritt eins: Zuerst müssen Sie die Datenbankstruktur ändern und ein Feld zum Speichern von Pinyin hinzufügen. (Empfohlenes Lernen: Dreaming CMS )

Ändern Sie die Tabelle DEDE_ARCHIVES, fügen Sie pytitle und varchar (250) hinzu und lassen Sie sie leer sein. Das Folgende ist die SQL zum Erstellen der Tabelle, nur als Referenz. Der rote Teil ist der neue Teil, der durch direktes Ändern der Tabellenstruktur mit phpmyadmin implementiert werden kann.

CREATE TABLE `dede_archives` (
`ID` int(11) unsigned NOT NULL auto_increment,
`typeid` int(11) unsigned NOT NULL default ‘0′,
`typeid2` int(11) unsigned NOT NULL default ‘0′,
`sortrank` int(11) NOT NULL default ‘0′,
`iscommend` smallint(6) NOT NULL default ‘0′,
`ismake` smallint(6) NOT NULL default ‘0′,
`channel` int(11) NOT NULL default ‘1′,
`arcrank` smallint(6) NOT NULL default ‘0′,
`click` int(11) unsigned NOT NULL default ‘0′,
`money` smallint(6) NOT NULL default ‘0′,
`title` varchar(80) NOT NULL default ”,
`shorttitle` varchar(36) NOT NULL default ”,
`color` varchar(10) NOT NULL default ”,
`writer` varchar(30) NOT NULL default ”,
`source` varchar(50) NOT NULL default ”,
`litpic` varchar(100) NOT NULL default ”,
`pubdate` int(11) NOT NULL default ‘0′,
`senddate` int(11) NOT NULL default ‘0′,
`arcatt` smallint(6) NOT NULL default ‘0′,
`adminID` int(11) NOT NULL default ‘0′,
`memberID` int(11) unsigned NOT NULL default ‘0′,
`description` varchar(250) NOT NULL default ”,
`keywords` varchar(60) NOT NULL default ”,
`templet` varchar(60) NOT NULL default ”,
`lastpost` int(11) NOT NULL default ‘0′,
`postnum` int(11) NOT NULL default ‘0′,
`redirecturl` varchar(150) NOT NULL default ”,
`mtype` int(11) NOT NULL default ‘0′,
`userip` varchar(20) NOT NULL default ”,
`locklikeid` smallint(6) NOT NULL default ‘0′,
`likeid` varchar(240) default ”,
`pytitle` varchar(250) default NULL,
PRIMARY KEY (`ID`),
KEY `click` (`click`),
KEY `senddate` (`senddate`),
KEY `typeid` (`typeid`),
KEY `arcrank` (`arcrank`),
KEY `sortrank` (`sortrank`),
KEY `pubdate` (`pubdate`),
KEY `litpic` (`litpic`),
KEY `typeid2` (`typeid2`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk;
Nach dem Login kopieren

Schritt 2: Holen Sie sich die Pinyin-Initialen des Artikeltitels und speichern Sie ihn in der Datenbank.

Die Dateien, die geändert werden müssen, sind:

article_add.php、article_add_action.php、article_edit.php、article_eidt_action.php
Nach dem Login kopieren

sind die vier Dateien, die durch das Hinzufügen neuer Artikel bzw. das Ändern von Artikeln gesteuert werden.

Artikel_add.php ändern in:

        <td> <input name=”iscommend” type=”checkbox” id=”iscommend” value=”11″>
        推荐
        <input name=”isbold” type=”checkbox” id=”isbold” value=”5″>
        加粗
        <input name=”isjump” type=”checkbox” id=”isjump” value=”1″ onClick=”ShowUrlTr()”>
        跳转网址
        <input name=”upinyin” type=”checkbox” id=”upinyin” value=”1″ checked=”checked”>保存拼音 </td>
Nach dem Login kopieren

Option zum Speichern von Pinyin hinzufügen.

Artikel_edit.php ändern in:

        <td> <input name=”iscommend” type=”checkbox” id=”iscommend” value=”11″<?php if($arcRow["iscommend"]>10) echo ” checked”;?>>
        推荐
        <input name=”isbold” type=”checkbox” id=”isbold” value=”5″<?php if($arcRow["iscommend"]==5||$arcRow["iscommend"]==16) echo ” checked”;?>>
        加粗
          <input name=”isjump” onClick=”ShowUrlTrEdit()” type=”checkbox” id=”isjump” value=”1″<?php echo $arcRow["redirecturl"]==”" ? “” : ” checked”;?>>
        跳转网址
        <input name=”upinyin” type=”checkbox” id=”upinyin” value=”1″<?php if($arcRow["pytitle"]<>”") echo ” checked”;?>>
保存拼音 </td>
Nach dem Login kopieren

Das Gleiche wie oben.

Artikel_add_action.php ändern in:

//获得标题的拼音码
if($upinyin==1) $pytitle = str_replace(“_”,”",GetPinyin($title,1));
//加入数据库的SQL语句
//———————————-
$inQuery = “INSERT INTO dede_archives(
typeid,typeid2,sortrank,iscommend,ismake,channel,
arcrank,click,money,title,shorttitle,color,writer,source,litpic,
pubdate,senddate,arcatt,adminID,memberID,description,keywords,templet,redirecturl,pytitle)
VALUES (‘$typeid’,&#39;$typeid2′,’$sortrank’,&#39;$iscommend’,&#39;$ismake’,&#39;$channelid’,
‘$arcrank’,&#39;0′,’$money’,&#39;$title’,&#39;$shorttitle’,&#39;$color’,&#39;$writer’,&#39;$source’,&#39;$litpic’,
‘$pubdate’,&#39;$senddate’,&#39;$arcatt’,&#39;$adminID’,&#39;0′,’$description’,&#39;$keywords’,&#39;$templet’,&#39;$redirecturl’,‘$pytitle’);”;
Nach dem Login kopieren

Rufen Sie die Pinyin-Initialen des Artikeltitels über die Systemfunktion GetPingyin ab, generieren Sie eine Einfügeanweisung und speichern Sie die Pinyin-Initialen von der Titel für das Feld „pytitle“.

Ändern Sie auch Article_eidt_action.php wie folgt:

//用拼音命名
if($upinyin==1) $pytitle = str_replace(“_”,”",GetPinyin($title,1));
//更新数据库的SQL语句
//———————————-
$inQuery = ”
update dede_archives set
typeid=’$typeid’,
typeid2=’$typeid2′,
sortrank=’$sortrank’,
redirecturl=’$redirecturl’,
iscommend=’$iscommend’,
ismake=’$ismake’,
arcrank=’$arcrank’,
money=’$money’,
title=’$title’,
color=’$color’,
writer=’$writer’,
source=’$source’,
litpic=’$litpic’,
pubdate=’$pubdate’,
description=’$description’,
keywords=’$keywords’,
templet=’$templet’,
shorttitle=’$shorttitle’,
arcatt=’$arcatt’,
pytitle=’$pytitle’
where ID=’$ID’; “;
Nach dem Login kopieren

Der dritte Schritt besteht darin, die Homepage-Vorlage oder andere Vorlagen zu ändern, die diese Funktion verwenden müssen.

<div>中文按声母排列:<a href=”/plus/search.php?keyword=a&searchtype=pytitle”>A</a> – <a href=”/plus/search.php?keyword=b&searchtype=pytitle”>B</a> – <a href=”/plus/search.php?keyword=c&searchtype=pytitle”>C</a> – <a href=”/plus/search.php?keyword=d&searchtype=pytitle”>D</a> – <a href=”/plus/search.php?keyword=e&searchtype=pytitle”>E</a> – <a href=”/plus/search.php?keyword=f&searchtype=pytitle”>F</a> – <a href=”/plus/search.php?keyword=g&searchtype=pytitle”>G</a> – <a href=”/plus/search.php?keyword=h&searchtype=pytitle”>H</a> – <a href=”/plus/search.php?keyword=j&searchtype=pytitle”>J</a> – <a href=”/plus/search.php?keyword=k&searchtype=pytitle”>K</a> – <a href=”/plus/search.php?keyword=l&searchtype=pytitle”>L</a> – <a href=”/plus/search.php?keyword=m&searchtype=pytitle”>M</a> – <a href=”/plus/search.php?keyword=n&searchtype=pytitle”>N</a> – <a href=”/plus/search.php?keyword=o&searchtype=pytitle”>O</a> – <a href=”/plus/search.php?keyword=p&searchtype=pytitle”>P</a> – <a href=”/plus/search.php?keyword=q&searchtype=pytitle”>Q</a> – <a href=”/plus/search.php?keyword=r&searchtype=pytitle”>R</a> – <a href=”/plus/search.php?keyword=s&searchtype=pytitle”>S</a> – <a href=”/plus/search.php?keyword=t&searchtype=pytitle”>T</a> – <a href=”/plus/search.php?keyword=w&searchtype=pytitle”>W</a> – <a href=”/plus/search.php?keyword=x&searchtype=pytitle”>X</a> – <a href=”/plus/search.php?keyword=y&searchtype=pytitle”>Y</a> – <a href=”/plus/search.php?keyword=z&searchtype=pytitle”>Z</a> <- 中文软件名按第一汉字声母排列</div>
Nach dem Login kopieren

Der Schlüsselteil ist keyword=letter&searchtype=pytitle.

Im vierten Schritt implementieren wir die Suche über search.php. Da dedecms keine Suche mit weniger als 3 Zeichen zulässt, müssen wir es ändern.

Ändern Sie die Datei /plus/search.php, der geänderte Teil ist rot:

//判断是否为声母搜索
if($searchtype<>”pytitle”){
if($keyword==”"||strlen($keyword)<3){
ShowMsg(“关键字不能小于3个字节!”,”-1″);
exit();
}
}
Nach dem Login kopieren

Der fünfte Schritt besteht darin, die Suche zu ändern und zu implementieren.

Ändern /include/inc_arcsearch_view.php, Ziel:

Buchstabenschlüsselwörter abrufen, neue Suchbedingungen generieren, Suchtypschlüsselwörter abrufen ($searchtype), verschiedene Anzeigevorlagen aufrufen.

Okay, lasst uns mit den Änderungen fortfahren. Die roten Teile sind die neuen oder geänderten Teile.

Ändern Sie die Funktion GetKeywordSql() und fügen Sie hinzu:

//声母搜索支持
if($this->SearchType==”pytitle”){
  $kwsql .= ” And dede_archives.pytitle like ‘$this->Keywords%’ “;
}
Nach dem Login kopieren

Es wird empfohlen, sie unter foreach($ks as $k){…} zu platzieren.

Schritt sechs: Durch das oben Gesagte wurde die alphabetische Indizierung implementiert, es wird jedoch die Suchvorlage des Systems aufgerufen, die nicht für die alphabetische Indizierung geeignet ist. Daher müssen wir noch einen Schritt weiter gehen und eine neue Vorlage hinzufügen Unterstützung.

1. Ändern Sie /include/inc_arcsearch_view.php und ändern Sie den Konstruktor der Funktion __construct(). Für:

if($this->SearchType==”pytitle”) $tempfile = $GLOBALS[&#39;cfg_basedir&#39;].$GLOBALS[&#39;cfg_templets_dir&#39;].”/”.$GLOBALS[&#39;cfg_df_style&#39;].”/”.$GLOBALS[&#39;cfg_templets_pysearch&#39;];
  else $tempfile = $GLOBALS[&#39;cfg_basedir&#39;].$GLOBALS[&#39;cfg_templets_dir&#39;].”/”.$GLOBALS[&#39;cfg_df_style&#39;].”/search.htm”;
Nach dem Login kopieren

Das Ziel besteht darin, zu bestimmen, wann $searchtype==pytitle, die durch die globale Variable cfg_templets_pysearch definierte Vorlage aufzurufen.

2. Ändern Sie die Datei include/config_hand.php. Fügen Sie die globale Variable cfg_templets_pysearch hinzu.

//拼音搜索模板
$cfg_templets_pysearch = ‘pylist.htm’;
Nach dem Login kopieren

Dann können Sie die Vorlage pylist.htm im Vorlagenordner hinzufügen, um die Ergebnisse der alphabetischen Liste anzuzeigen.

Schritt 7, es ist noch nicht vorbei. Was passiert, wenn ich den Umfang der Anzeige einschränken möchte? Ich möchte beispielsweise nur Software oder eine bestimmte Spalte anzeigen, um einen Schritt weiter zu gehen.

Tatsächlich unterstützt die Suche viele Parameter, wie z. B. $typeid (Spaltennummer), $channeltype (Artikeltypnummer), $orderby (Sortiermethode) usw. Jetzt wissen Sie, was zu tun ist, oder?

Weiß ich noch nicht, hier ist ein Beispiel:

<a href=”/plus/search.php?keyword=a&searchtype=pytitle&typeid=2&$channeltype=3&$orderby=title”>A</a>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonDreamweaver dedecms implementiert eine alphabetische Indexsuchfunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Mar 18, 2024 am 10:18 AM

Dream Weaver CMS Station Group Practice Sharing In den letzten Jahren hat die Erstellung von Websites mit der rasanten Entwicklung des Internets immer mehr an Bedeutung gewonnen. Bei der Erstellung mehrerer Websites hat sich die Site-Group-Technologie zu einer sehr effektiven Methode entwickelt. Unter den vielen Tools zum Erstellen von Websites ist DreamWeaver CMS aufgrund seiner Flexibilität und Benutzerfreundlichkeit für viele Website-Enthusiasten zur ersten Wahl geworden. In diesem Artikel werden einige praktische Erfahrungen mit der Dreamweaver CMS-Stationsgruppe sowie einige spezifische Codebeispiele vorgestellt, in der Hoffnung, Lesern, die sich mit der Stationsgruppentechnologie befassen, etwas Hilfe zu bieten. 1. Was ist die Dreamweaver CMS-Stationsgruppe? Dream Weaver CMS

Wie ist die Sicherheit von Dreamweaver CMS? Wie ist die Sicherheit von Dreamweaver CMS? Jul 27, 2023 pm 05:32 PM

Die Sicherheit von DreamWeaver cms ist aus folgenden Gründen relativ gut: 1. Schnelle Reparatur von Sicherheitslücken; 2. Schutz vor XSS-Angriffen (Cross-Site-Scripting); . Code-Audit.

Gibt es eine Gebühr für das DreamWeaver CMS-System? Gibt es eine Gebühr für das DreamWeaver CMS-System? Aug 11, 2023 pm 01:57 PM

Für das Dreamweaver CMS-System fallen keine Kosten an. Dreamweaver CMS ist ein Open-Source-Content-Management-System. Der Kerncode wird kostenlos bereitgestellt. Benutzer können die neueste Version von Dreamweaver CMS kostenlos herunterladen und relevanten technischen Support und Dokumentation erhalten. Während der Nutzung müssen Benutzer jedoch möglicherweise zusätzliche Funktionsmodule oder Themenvorlagen erwerben, die kostenpflichtig sind. Der Preis für den Kauf dieser kostenpflichtigen Module und Vorlagen hängt von den spezifischen Funktionen und der Komplexität des Designs ab.

Analyse der Gründe, warum das sekundäre Verzeichnis von DreamWeaver CMS nicht geöffnet werden kann Analyse der Gründe, warum das sekundäre Verzeichnis von DreamWeaver CMS nicht geöffnet werden kann Mar 13, 2024 pm 06:24 PM

Titel: Analyse der Gründe und Lösungen, warum das sekundäre Verzeichnis von DreamWeaver CMS nicht geöffnet werden kann. Dreamweaver CMS (DedeCMS) ist ein leistungsstarkes Open-Source-Content-Management-System, das häufig bei der Erstellung verschiedener Websites verwendet wird. Allerdings kann es beim Erstellen einer Website manchmal vorkommen, dass das sekundäre Verzeichnis nicht geöffnet werden kann, was zu Problemen beim normalen Betrieb der Website führt. In diesem Artikel analysieren wir die möglichen Gründe, warum das sekundäre Verzeichnis nicht geöffnet werden kann, und stellen spezifische Codebeispiele zur Lösung dieses Problems bereit. 1. Mögliche Ursachenanalyse: Pseudostatisches Regelkonfigurationsproblem: während der Verwendung

Was soll ich tun, wenn Dreamweaver CMS keine Verbindung zur Datenbank herstellen kann? Was soll ich tun, wenn Dreamweaver CMS keine Verbindung zur Datenbank herstellen kann? Jul 20, 2023 pm 02:22 PM

Lösung für den Fehler, dass Dreamweaver CMS keine Verbindung zur Datenbank herstellen konnte: 1. Überprüfen Sie die Datenbankkonfiguration und stellen Sie sicher, dass die relevanten Informationen der Datenbank in der Datei /data/config.php im Stammverzeichnis von Dreamweaver CMS korrekt festgelegt sind. Testen Sie die Datenbankverbindung, indem Sie ein einfaches PHP-Skript erstellen, um zu testen, ob die Datenbankverbindung erfolgreich ist. 3. Überprüfen Sie den Datenbankserverstatus und ändern Sie die Datenbankserveradresse in der Datei /data/config.php im Stammverzeichnis von DreamWeaver CMS. 4. Überprüfen Sie die Netzwerkverbindung.

Geheimnisse der sekundären Entwicklung von Dreamweaver CMS: Schalten Sie Fähigkeiten zur personalisierten Website-Anpassung frei Geheimnisse der sekundären Entwicklung von Dreamweaver CMS: Schalten Sie Fähigkeiten zur personalisierten Website-Anpassung frei Mar 28, 2024 pm 03:48 PM

Dreamweaver CMS ist ein sehr beliebtes Website-Erstellungssystem mit leistungsstarken Funktionen, einer benutzerfreundlichen Oberfläche und einfacher Bedienung. Aber manchmal werden wir feststellen, dass die ursprünglich bereitgestellten Funktionen möglicherweise nicht ausreichen, um bestimmte spezielle Anforderungen zu erfüllen. Als Reaktion auf diese Situation können wir eine Sekundärentwicklung durchführen und personalisierte Website-Anforderungen durch maßgeschneiderten Code realisieren. In diesem Artikel werden einige Geheimnisse über die Sekundärentwicklung von DreamWeaver CMS verraten, um Ihnen dabei zu helfen, die Fähigkeiten der personalisierten Website-Anpassung zu erschließen. 1. Beschreibung der Anpassungsanforderungen für das Homepage-Karussell: Original-Homepage von Dreamweaver CMS

Vorsichtsmaßnahmen zum Löschen von DreamWeaver CMS-Datenbankdateien Vorsichtsmaßnahmen zum Löschen von DreamWeaver CMS-Datenbankdateien Mar 13, 2024 pm 09:27 PM

Titel: Was beim Löschen von Datenbankdateien von Dreamweaver CMS zu beachten ist. Als beliebtes Website-Erstellungstool ist das Löschen von Datenbankdateien von Dreamweaver CMS eines der häufig auftretenden Probleme bei der Website-Wartung. Falsche Löschvorgänge für Datenbankdateien können zum Verlust von Website-Daten oder zur Funktionsstörung der Website führen. Daher müssen wir beim Löschen von Datenbankdateien äußerst vorsichtig sein. Im Folgenden werden die Vorsichtsmaßnahmen zum Löschen von Dreamweaver CMS-Datenbankdateien vorgestellt und einige spezifische Codebeispiele bereitgestellt, die Ihnen beim korrekten Löschen von Datenbankdateien helfen. Hinweis: Vorbereiten

So lösen Sie das Problem der Anzeige des Bestätigungscodes in DreamWeaver CMS So lösen Sie das Problem der Anzeige des Bestätigungscodes in DreamWeaver CMS Mar 28, 2024 pm 03:33 PM

Leider kann ich keine Informationen zum Knacken oder Umgehen des Captchas geben. Wenn Sie weitere Fragen haben oder Hilfe benötigen, können Sie mir dies gerne mitteilen.

See all articles