2x weiterlesen-tag in der hervorgehobenen Sektion

  • Hallo Zusammen,
    ich bin wieder mal ratlos und hätte gerne einen Tipp.
    Ich arbeite mit demTheme radiate.
    Auf der Startseite meines Barfussblogs habe ich oben in der "hervorgehobenen Sektion" 3 Seiten fixiert. Alle Seiten weisen einen doppelten Weiterlesen-Tag auf.
    Der Tag "Weiterlesen..." soll generell nur für Beiträge gelten, nicht aber für Seiten.
    In der functions.php habe ich dafür folgenden Code eingesetzt, der super funktioniert. Aber eben für Beiträge UND Seiten.

    Code
    function own_readmore_excerpt($text) {
            $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
        return $excerpt;
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );


    Wie kann ich bitte den code so abändern, dass er ausschließlich auf Beiträgen ausgeführt wird?
    Der Weiterlesen-tag ohne die 3 Punkte, ist regulär vom Theme so vorgesehen und soll in den fixierten Seiten weiterhin stehen bleiben.
    Wer kann mir helfen? Freue mich über Antwort(en).
    Schöne Grüße
    Eva

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Guten Morgen b3317133 und danke für Deinen Tipp.

    Da mir das System immer einen Syntaxfehler ausspuckt und die Website dann nicht mehr angezeigt wird:
    Kannst Du mir bitte den kompletten excerpt-code anzeigen (womit ich also den alten ersetze), damit ich sehen kann, wo genau die "if"-zeile eingefügt wird?.
    Meine bisherigen Kenntnisse reichen dafür einfach nicht aus
    Schöne Grüße
    Eva

  • Hey danke für den Hinweis.
    Ich habe also den folgenden Code eingefügt:

    Code
    function own_readmore_excerpt($text) {
    if ( is_singular( 'post' ) ) {
     $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
        return $excerpt;
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );

    Wo liegt der Fehler?

    Liebe Grüße und einen schönen Sonntag Abend
    Eva

  • Ok, ich habe jetzt diesen code eingegeben

    Code
    function own_readmore_excerpt($text) {
    if ( is_singular( 'post' ) )
            $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
        return $excerpt;
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );

    und die geschweifte Klammer hinter if ( is_singular( 'post' ) )
    entfernt. Jetzt ist zwar das weiterlesen-tag weg, aber dafür auch der Text der Excerpts (auch auf den category-seiten). So soll es nicht sein ;).
    Ich hab es mal so stehen gelassen, damit Du siehst, wie es aussieht (hier)

  • es fehlt eine schliessende geschweifte Klammer.


    Keine { entfernen sondern eine } als letztes Zeichen einfügen!

    nothing is as easy as it looks. --- Wenns gefällt - gibts dafür einen Button ;)
    Manchmal komme ich mir wie eine Suchmaschine vor ....:rolleyes:

  • das Ergebnis ist eine Fehlermeldung : syntax error, unexpected '}'

    folgendes hab ich gemacht:

    Code
    function own_readmore_excerpt($text) {
    if ( is_singular( 'post' ) )  }
         {   $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
        return $excerpt;
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );
  • Ich bin jetzt nicht der Coder! Aber abschließend interpretiere ich

    Code
    function own_readmore_excerpt($text) {
    if ( is_singular( 'post' ) ) {
     $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
       return $excerpt;
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );
    }

    nothing is as easy as it looks. --- Wenns gefällt - gibts dafür einen Button ;)
    Manchmal komme ich mir wie eine Suchmaschine vor ....:rolleyes:

  • nee, da kam wieder die gleiche Fehlermeldung.
    Wobei es mich wundert, dass am Ende eine schließende ist, während eine Zeile drüber auch schon eine schließende ist. Das versteht meine weibliche Logik nicht ;-)

    Sind die Leerzeilen, die nach einer geschweiften Klammer folgen, eigentlich wichtig?

  • Erste öffnende ist in Zeile 1
    zweite öffnende ist in Zeile 2
    die dazu schließende ist in Zeile 5
    die aus Zeile 1 noch offene ist die schließende in neuer Zeile 7
    ;)

    nothing is as easy as it looks. --- Wenns gefällt - gibts dafür einen Button ;)
    Manchmal komme ich mir wie eine Suchmaschine vor ....:rolleyes:

  • ahso, ich dachte, eine müsse erst wieder geschlossen werden, bevor eine andere geöffnet werden kann.
    Ich würde das so gerne verstehen - aber dazu muss man ja echt studieren ;-)

    Dennoch bringt der code dann so eine Fehlermeldung hervor.

  • PHP
    function own_readmore_excerpt($text) {
      if ( is_singular( 'post' ) ) {
       $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
       return $excerpt;
      }
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Hey Maxe,
    funktioniert auch nicht. Der weiterlesen-tag ist weg, aber gleich die Excerpts mit (also die Textausschnitte). Nicht nur von den 3 fixierten Seiten oben auf der Startseite, sondern auch auf den Category-Seiten.
    Noch ein Tipp?

  • Logisch danke maxe - function abschließen, danach ausführen!!

    nothing is as easy as it looks. --- Wenns gefällt - gibts dafür einen Button ;)
    Manchmal komme ich mir wie eine Suchmaschine vor ....:rolleyes:

  • Ich hab mir den Eingangspost jetzt mal durchgelesen, vorher hab ich nur deinen Code korrigiert. mMn müsste da noch ein else mit rein, damit bei NICHT POST nur der excerpt angezeigt wird.

    PHP
    function own_readmore_excerpt($text) {
      if ( is_singular( 'post' ) ) {
       $excerpt = '' . $text . '&nbsp;<a class="more-link" href="'.get_permalink().'"> Weiterlesen ...</a>';
      } else {
       $excerpt = $text;
      }
    return $excerpt;
    }
    add_filter( 'get_the_excerpt', 'own_readmore_excerpt' );

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Richtig, das Durchreichen hat noch gefehlt, hatte nicht drauf geachtet, dass hier warum auch immer $text als Eingangsparameter benutzt wird und nicht gleich $excerpt, wie man es sonst machen würde...

    Die schliessende geschweifte Klammer hat vor der return... Zeile gefehlt

    Off Topic: Ein paar Grundkenntnisse zu WordPress & PHP sollte man haben, wenn man Code-Schnipsel verwenden will. Hat man keine, kann man sich auch ganz schnell böse Sicherheitslücken einhandeln, nicht in diesem Fall, aber alles schon erlebt, blindes Copy & Paste einer Login-Funktion führte zu unerwarteten Ergebnissen...

    3 Mal editiert, zuletzt von b3317133 (20. Mai 2018 um 20:18)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!