WordPress Plugin: SEO Internal Links – PHP7 Fix

WordPress Plugin: SEO Internal Links – PHP7 Fix

eingetragen in: SEO/Webanalyse, WordPress | 0

Wer das Plugin nutzt, hat seine Gründe, aber auch ein Problem mit PHP 7.

Denn es nutzt im Quelltext eine Funktion mit Modifer, die mit PHP5.5 veraltet und PHP7 komplett entfernt wurde.

Je nach Servereinstellung wird nachfolgende Fehlermeldung ausgeworfen und das Plugin funktioniert nicht mehr. Im schlimmsten Fall geht dann die gesamte WordPress Installation nicht mehr und es erscheint eine weiße Seite.

Fehlermeldung von SEO Internal Link

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /wp-content/plugins/seo-internal-links/seo-links.php on line

Die Lösung

1. Wenn die WordPress-Installation nicht mehr aufrufbar ist, nachdem du das Plugin installiert hast, musst du erstmal dein WordPress wieder in Gang kriegen. Falls damit alles ok ist, gehe direkt zu Schritt 2 Gehe mit einem FTP-Programm in das Plugin-Verzeichnis( ) deiner Installation. Ändere den Ordnernamen von „seo-internal-links“ in „seo-internal-links-p„.

2. Mit dem FTP-Programm die Datei „seo-links.php“ aus dem Order herunterladen

3. Mit einem passenden Editor öffnest du die Datei und suchst folgenden Abschnitt, ca. bei Zeile 94 :

$text = preg_replace('%(<h.*?>)(.*?)(</h.*?>)%sie', "'\\1'.insertspecialchars('\\2').'\\3'", $text);

und änderst ihn in:

$text = preg_replace_callback( '%(<h.*?>)(.*?)(</h.*?>)%si',
function($matches) { 
  return($matches[1].insertspecialchars($matches[2]).$matches[3]);
},
$text);

 

4. Dann suchst du weiter bei ca. Zeile 306 nach diesem Abschnitt

$text = preg_replace('%(<h.*?>)(.*?)(</h.*?>)%sie', "'\\1'.removespecialchars('\\2').'\\3'", $text);

und änderst ihn in:

$text = preg_replace_callback( '%(<h.*?>)(.*?)(</h.*?>)%si',
function($matches) { 
  return($matches[1].removespecialchars($matches[2]).$matches[3]);
},
$text);

 

5. Danach die Datei wieder hochladen und den Ordnernamen wieder in „seo-internal-links“ umbenennen.

Danach sollte das Plugin (wieder) funktionieren.

Das Plugin im WordPress-Archiv

https://wordpress.org/plugins/seo-internal-links/

Gute Nacht!

Vielen Dank für dein Interesse an meinem Artikel. Ich hoffe er hat dir gefallen? verbinde dich mit mir über die folgenden Social Media und verpasse keine zukünftigen, wichtigen Informationen mehr.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.