Hallo zusammen,
folgender Code sorgt dafür, dass auf der search.php der jeweilige Suchbegriffe hervorgehoben wird:
Code
function search_excerpt_highlight() {
$excerpt = get_the_excerpt();
$keys = implode('|', explode(' ', get_search_query()));
$excerpt = preg_replace('/(' . $keys .')/iu', '<strong class="search-highlight">\0</strong>', $excerpt);
echo '<p>' . $excerpt . '</p>';
}
Allerdings wird der weiterlesen LInk dadurch zerstört, falls der Suchbegriff in der URL des Link vorhanden ist.
Gibt es eine Möglichkeit, dass preg_replace nicht auf Begriffe innerhalb des <a> Tags anzuwenden
Code
Beispiel:
Hier gibt es tolle Schuhe <a class="weiterlesen" href="www.abc.de/schuhe">mehr</a>
wird ersetzt durch
Hier gibt es tolle <span class="search_highlight">Schuhe</span><a class="weiterlesen" href="www.abc.de/<span class="search_highlight">schuhe</span>">mehr</a>
Dadurch wird der weiterlesen Link zerstört. Gibt es hierfür eine Lösung? Vielen Dank.