Schlechte “mehr lesen” Verhalten, versuchen, durch Einfügen von Tag zu beheben

Scheint, dass andere dasselbe Problem mit WordPress gehabt hätten “Mehr lesen”, aber vorherige Fragen mit diesem Tag zu sehen, hat nicht geholfen, also hier zu posten.

Als neuer selbst gehosteter WordPress-Benutzer habe ich ein wordpress.com-Theme ausgewählt, das ich mochte (Isola), aber jetzt habe ich eine “schlechte Nutzererfahrung” damit. Das Problem: Mit einem WP “Read More” -Tag in der Post springt der Link in den vollständigen Post an einer Stelle unterhalb der erwarteten Position, wobei mehrere ungelesene Zeilen über der Bildschirmansicht erscheinen und so ausgeblendet werden. Dieses Verhalten hängt von der Bildschirmbreite ab – alles funktioniert wie erwartet auf einem schmalen Bildschirm wie bei einem mobilen Gerät, aber wenn der Bildschirm zuerst erweitert wird, werden zwei und dann drei Zeilen ausgeblendet.

Der verborgene Text verwirrt den Leser, da die Dinge plötzlich mitten im Satz beginnen – er muss irgendwie herausfinden, dass (1) fehlende Linien in dem was er liest und (2) er nach oben scrollen muss um sie zu lesen. FWIW Der Post beginnt mit einem schmalen Bild mit Text, der nach rechts fließt, und ich füge das “read more” -Tag nach dem ersten Absatz ein. Ich bin mir nicht sicher, ob die Browser-Formatierung ein Faktor sein könnte – aber dieses Verhalten tritt sowohl bei Chrome als auch bei Firefox und IE auf.

Ich möchte nicht, dass meine Blogleser diese schlechte Erfahrung machen! Ich kenne PHP nicht, aber ich weiß Codierung, also dachte ich, es wäre nicht zu schwierig, ein besseres Erlebnis zu schaffen – indem man den Sprung an den Anfang des Textes stellt (und auch ein “hr” -Tag am Unterbrechungspunkt einfügt) noch offensichtlicher). Dies erfordert (1) das Ändern des Link-Tags “mehr” und (2) das Einfügen eines neuen Anker-Tags. Ich habe php erfolgreich erstellt, um das erste zu machen. Aber mein Versuch von (2) funktioniert nicht.

Ich schaute über die WP “hooks” um etwas relevantes zu finden – aber es gibt fast 2700 “hooks”. Ich habe versucht, das Anker-Tag einzufügen, wo ich einen “.entry-header” -Html-Kommentar in der Seitenquelle mit folgendem Code sehe. Aber ich habe keine Änderung in der vollständigen Post-Seite Quelle. Also mache ich etwas falsch und suche hier nach mehr erfahrener Hilfe.

function add_more_tag($content) { $content = preg_replace('//', '', $content); return $content; } add_filter('the_content', 'add_more_tag', 20, 1); 

Alternativ möchte ich wissen, ob jemand eine andere Möglichkeit hat, die von mir beschriebene “schlechte Benutzererfahrung” zu korrigieren! Persönlich bin ich sehr enttäuscht von der Art und Weise, wie dieser Aspekt dieses Themas funktioniert (und mir wurde gesagt, dass dieses Verhalten auch bei anderen wordpress.com-Themen vorkommt).

PS: Ich weiß, dass es ein Plugin gibt, das den “mehr” Link entfernt – das ist das erste, was ich ausprobiert habe. Aber der Sprung geht dann nach oben, also über das Banner. Das Banner ist groß und nimmt viel Platz ein, daher würde ich es bevorzugen, wenn der Sprung unter das Banner geht, also oben im Text.

Solutions Collecting From Web of "Schlechte “mehr lesen” Verhalten, versuchen, durch Einfügen von Tag zu beheben"

Hier ist die Lösung, die ich verwendet habe, um den Link “weiterlesen” zu zwingen, an den Anfang des Textes zu springen, direkt unter dem Titel

Ich habe zuerst ein existierendes “more” -Tag zu einem bestimmten geändert – in der functions.php meines Styles, an dessen Ende ich hinzugefügt habe

 // ALTER MORE TO JUMP TO SPECIFIED TAG (which is above post text in content-single.php) function alter_more_jump_link($link) { $moreoffset = strpos($link, '#more-'); if ($moreoffset) { $link = preg_replace( "/#more-[0-9]+/", "#more-jump", $link ); } return $link; } add_filter('the_content_more_link', 'alter_more_jump_link', 20,1); 

Um das angegebene “more” -Tag nach dem Titel einzufügen, im content-single.php meines Styles, nach der Zeile

  

Ich fügte hinzu