Heim  >  Artikel  >  Backend-Entwicklung  >  dedecms-Keyword-Ersetzungsplan

dedecms-Keyword-Ersetzungsplan

little bottle
little bottlenach vorne
2019-04-26 11:55:292566Durchsuche

In diesem Artikel geht es hauptsächlich um den Dedecms-Keyword-Ersetzungsplan. Ersetzen Sie zunächst die Long-Tail-Keywords und dann die Haupt-Keywords. Interessierte Freunde können sich darüber informieren.

Problem: Bei Verwendung der Dokumentschlüsselwort-Ersetzungsfunktion von dedecms kommt es zu einer Kreuzsubstitution

Zum Beispiel:

Long-Tail-Schlüsselwort 1: Männer trinken Goldseide Was sind die Vorteile von goldenen Chrysanthemen?

Long-Tail-Schlüsselwort 2: Was sind die Vorteile des Trinkens von goldenen Seidenchrysanthemen?

Hauptschlüsselwort 3: Goldene Seidenchrysanthemen

Verwenden Sie das System. In der Standardfunktion wird beim Ersetzen des Hauptschlüsselworts auch die „Golden Thread Royal Chrysanthemum“ im oben ersetzten Long-Tail-Schlüsselwort ersetzt, wodurch der ursprüngliche Ankertext des Long-Tail-Schlüsselworts zerstört wird.

Lösung:

1 Ersetzen Sie zunächst das zu ersetzende Schlüsselwort durch etwas wie:

Schlüsselwort 1: '#####0#####'
Schlüsselwort 2: '#####2#####'
Schlüsselwort 3: '#####3#####'
Bei der Durchführung des oben genannten Ersetzungsvorgangs müssen wir Folgendes tun Speichern Sie den Ankertext, der dem Schlüsselwort entspricht, z. B.:
'#####0#####' --> Ankertext von Schlüsselwort 1
'#####1 ### ##' --> Ankertext von Schlüsselwort 2
'#####2#####' --> Ankertext von Schlüsselwort 3
und so weiter, nachdem alle Ersetzungen abgeschlossen sind schließlich wiederherstellen
Hier ändern wir hauptsächlich: Datei include/arc.archives.class.php
Der geänderte Teil lautet wie folgt:

//高亮专用, 替换多次是可能不能达到最多次
function _highlight($string, $words, $result, $pre) {
    global $cfg_replace_num;
    //     if (version_compare(PHP_VERSION, '5.5.0', '>='))
    //     {
    //         $string = $string[0];
    //         $pre = $pre[0];
    //     }
    
    //修改 Start
    $replaced_array = array();
    $replaced_tiems = 0;
    //修改 End
    
    $string = str_replace('\"', '"', $string);
    if ($cfg_replace_num > 0) {
        foreach ($words as $key => $word) {
            if ($GLOBALS['replaced'][$word] == 1) {
                continue;
            }
            //修改 Start
            $replace_string = '#####' . $replaced_tiems . '#####';
            $replaced_array[$replace_string] = $result[$key];
            $string = preg_replace("#" . preg_quote($word) . "#", $replace_string, $string, $cfg_replace_num);
            $replaced_tiems+= 1;
            //修改  End
            //             $string = preg_replace("#".preg_quote($word)."#", $result[$key], $string, $cfg_replace_num);
            if (strpos($string, $word) !== FALSE) {
                $GLOBALS['replaced'][$word] = 1;
            }
        }
        //修改 Start
        foreach ($replaced_array as $k => $v) {
            $string = str_ireplace($k, $v, $string);
        }
        //修改  End

    } else {
        $string = str_replace($words, $result, $string);
    }
    return $pre . $string;
}

Hinweis: Hier müssen wir die Dokumentschlüsselwörter in ändern der Hintergrund Die Häufigkeit, standardmäßig werden diejenigen zuerst durch hohe Frequenz und später diejenigen durch niedrige Frequenz ersetzt

Verwandte Tutorials: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vondedecms-Keyword-Ersetzungsplan. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen