more Tag problem funktioniert nicht

  • Hallo,

    ich würde mich freuen, wenn mir jemand bei meinem Problem helfen bzw. einen Hinweis geben könnte.
    Ich habe auf meiner Page firstsignal.de Unterseiten generiert wie z.B. Downloads. Für diese Bereiche habe ich neue Seitentemplates angelegt und per php einen Befehl für Kategorien eingefügt. Damit kann ich einen geschriebenen Beitrag z.B. der Kategorie "Downloads" zuordnen. Dieser Beitrag erscheint dann im Downloadbereich. Mit dem Plugin "category exlcuder" habe ich noch die Beiträge für diese Bereiche von der Startseite entfernt.

    Ich weiß, dass es nicht Blog typisch ist. Ich muste das aber etwas mehr in Richtung cms bringen. Da die give aways nicht auf der Startseite zu sehen sein sollen.

    Tja, funktioniert alles bis auf das "more" Tag. Ich denke, das die php Einträge für dieses Tag auf den neuen Seitentemplates noch angepasst werden muss. Allerdings komme ich da nicht weiter (php Buch mit sieben Siegeln).

    Wie schon gesagt, würde ich mich freuen, wenn mir da jemand einen Tip geben könnte. Die Seite ist eigentlich fertig und hängt jetzt nur noch an diesem Punkt fest. Oh ja, in der Fosu habe ich leider nichts passendes dazu gefunden...

    Gruß
    Stefan

    ps: Ich hoffe dieser Bereich ist richtig für diese Frage...

    • 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

  • Auf Seiten wird der More-Tag ignoriert. Siehe Doku:

    Zitat von Codex

    Read More is ignored on front (home) page

    Please remember that on the home page ( is_home() == TRUE ), the <!--more--> tag is ignored unless you turn it on again using the following code:

    PHP
    <?php
    global $more;
    $more = 0;
    ?>


    Das funktioniert auch in deinen Seitentemplates.

  • Auf Seiten wird der More-Tag ignoriert. Siehe Doku:

    Das funktioniert auch in deinen Seitentemplates.

    Danke für die schnelle Antwort. Fehlt mir dieses "global"? Ich bin da wirklich ein Unwissender! Übrigens auf der Startseite, in den normalen Beiträgen die auf der Startseite auftauchen funktioniert das "more" Tag ohne Probleme. Eben nur auf diesen "exclude" Beiträgen nicht.

    Also, wenn das der Fehler ist, bin ich einen riesen Schritt weiter. Danke, Danke, Danke!

  • Du brauchst beide Zeilen. "global" holt die Variable in den Scope, und anschließend setzt du sie auf "0" für die gekürzte Ansicht.

    Also, noch mal für die ganz Dummen in der letzten Reihe. Ich muss nur dieses Code Fragment in den neuen Seitentemplates zusätzlich einfügen (an irgendeiner Stelle)?
    Ist das so richtig, oder muss dafür etwas anderes gelöscht werden bzw. muss da noch ein Eintrag auf der Index.php oder so?
    In den Seitentemplates steht jedenfalls nix von "global"...
    Danke marX, wenn du da noch mal kurz drauf eingehen könntest...

    Gruß
    Stefan

  • Du brauchst beide Zeilen. "global" holt die Variable in den Scope, und anschließend setzt du sie auf "0" für die gekürzte Ansicht.

    Es hat funktioniert! Super! Vielen Dank marX für die schnelle und richtige Hilfe... Wahnsinn...
    Sprich mich an, wenn du mal Grafiken brauchst. Ich bin eher im optischen Bereich ein Freak :smile:

    Gruß
    Stefan

  • Ich geb dem Thread mal einen kleinen /push.

    Wo genau, also in welcher Datei (index.php, etc.), muss man diesen Code einfügen?

    PHP
    [LEFT]  [COLOR=#000000] [COLOR=#0000CC]<?php 
    [/COLOR][COLOR=#006600]global [/COLOR][COLOR=#0000CC]$more[/COLOR][COLOR=#006600]; 
    [/COLOR][COLOR=#0000CC]$more [/COLOR][COLOR=#006600]= [/COLOR][COLOR=#0000CC]0[/COLOR][COLOR=#006600]; 
    [/COLOR][COLOR=#0000CC]?>[/COLOR] [/COLOR]   [/LEFT]

    Ich habe nun schon so einige Seiten durchsucht um für die Lösung ein Problem zu finden, habe es aber bis jetzt leider noch nicht verstanden. :(

    Vielleicht könnt ihr mir die Datei nennen in der ich den Code einfügen müsste und möglichst auch die Stelle wo dies geschehen soll. Habe von HTML leider keine Ahnung.

    Ich benutze Wordpress 2.8.2. und das Soulvision Theme.

  • Wenn ich das richtig verstanden habe, geht es hier im das More-Tag ausschließlich auf Pages, oder?

    Ich habe momentan das Problem, dass More-Tags auch in ganz normalen Posts nicht angezeigt werden - der Text läuft auf der Hauptseite einfach ganz normal weiter, obwohl im Editor sowohl im HTML- als auch im Grafischen Modus alles okay aussieht.

    Irgendwer eine Ahnung?

  • Wenn ich das richtig verstanden habe, geht es hier im das More-Tag ausschließlich auf Pages, oder?


    Nein, der Tipp funktioniert natürlich auch bei Artikeln.

    Zitat

    Ich habe momentan das Problem, dass More-Tags auch in ganz normalen Posts nicht angezeigt werden - der Text läuft auf der Hauptseite einfach ganz normal weiter, obwohl im Editor sowohl im HTML- als auch im Grafischen Modus alles okay aussieht.


    Auf der single.php wird standardmäßig in voller Länge ausgegeben, in den Archiven gekürzt. Wenn das bei dir nicht der Fall ist, dann schau dir erstmal deine Plugins und dein Theme näher an (sprich deaktivieren und schauen was sich ändert).

  • Was heißt denn in dem Fall "in den Archiven"? Zählen die Blogbeiträge auf der normalen Wordpress-Home-Seite als Archiv?

    Ich würde gern das grundsätzliche Problem verstehen :) Durch welche Fehler kann es passieren, dass der More-Tag zwar im Editor (HTML/Grafisch) angezeigt und gespeichert wird, aber letztendlich nirgends ausgegeben? Will mir nicht in den Kopf ^^

  • Selbes Problem

    Ich habe es so gemacht wie es auf http://wordpress.org/support/topic/168032

    Also den Codeschnipsel wie beschrieben eingefügt. Also vor <div class="post">

    Es sieht also so aus:

    PHP
    <?php if (have_posts()) : ?>
        <?php while (have_posts()) : the_post(); update_post_caches($posts); ?>
            <?php global $more; $more = 0; ?>
            <div class="post" id="post-<?php the_ID(); ?>">
                <h2><a class="title" href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>

    Jetzt sehe ich auch "(Weiterlesen)", wenn ich aber draufklicke tut sich gar nichts.

    Passt vielleicht die Erweiterung nicht. Er möchte nämlich z.B. von ?page_id=2 auf ?page_id=2#more-2 erweitern?

  • Was heißt denn in dem Fall "in den Archiven"? Zählen die Blogbeiträge auf der normalen Wordpress-Home-Seite als Archiv?


    Die "Artikel"-Startseite: ja. Eine statische Startseite: nein.

    Zitat

    Durch welche Fehler kann es passieren, dass der More-Tag zwar im Editor (HTML/Grafisch) angezeigt und gespeichert wird, aber letztendlich nirgends ausgegeben?


    Der "Fehler" ist, dass der More-Tag eben nur in Archiven wirksam ist, auf "Singular"-Seiten (Einzelseite/-artikel und Attachments, s. z.B. hier) wird immer der vollstände Inhalt ausgegeben. Abhilfe schafft das manuelle Setzen der globalen $more-Variable, wie hier im Thread mehrfach beschrieben.

    Zitat von Litteratus

    Passt vielleicht die Erweiterung nicht. Er möchte nämlich z.B. von ?page_id=2 auf ?page_id=2#more-2 erweitern?


    Keine Ahnung. Was ist bei dir die Seite mit der ID 2? Ein Link wäre nett, ich kenne deine Seitenstruktur ja nicht.

  • Was genau heißt "funktioniert nicht"? Ich glaube du hast einen Denk- oder Verständnisfehler. Du verwendest den More-Tag auf einer Seite. Das funktioniert zwar prinzipiell, ist aber nicht im Sinne von WP, da Seiten normalerweise nicht angeteasert werden. Das macht man normalerweise nur mit Artikeln, und zwar in Archiven (z.B. Index, Kategorieübersicht usw.). Von dort aus linkt der More-Link zur vollständigen Ansicht des Artikels. Dabei hat der Artikel eine eigene URL. Mit deiner Seite klappt das nicht, du bist ja bereits auf der Einzelansicht der Seite.

    Was genau hast du vor?

  • Mein Plan wäre gewesen: Der Besucher sieht auf einer Seite, einen Teil des Textes. Er möchte mehr von dem Text lesen und klickt auf weiterlesen. Daraufhin öffnet sich der gesamte Text auf der selben Seite und der Besucher liest den gesamten Text zu Ende.

    Geht das nicht?

  • Moin,

    Ich würde an deiner Stelle mal deine Struktur überdenken.

    jep, und direkt mal mit dem Doctype anfangen. :smile:

    XHTML 1.1 ist unbrauchbar.
    Bei XHTML 1.0 ist der Inhaltstyp text/html, bei XHTML 1.1 ist es applikation/xhtml+xml.
    Mit XML hat der IE so seine Probleme.

    Lies doch mal das hier (etwas runterscrollen!), dann weisse Bescheid. ;-)

    Gruß
    koslowski

Jetzt mitmachen!

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