Knoten in mehrere Seiten aufteilen [geschlossen]


15

Inhaltstyp - Artikel. Ich möchte Artikel auf mehrere Seiten aufteilen, wenn der Artikel selbst zu lang wird. Wenn wir zum Beispiel einen Artikel haben, "wie Drupal funktioniert", wäre er riesig :), ich möchte ihn auf mehrere Seiten aufteilen und irgendwann wird "weiter zu Seite 2 von 10" und dann "weiter zu Seite 3 von 10" angezeigt " und so weiter. Hoffe du hast mich und kannst ein paar Ideen teilen. Danke im Voraus!


Verwandte: Erstellen Sie einen Pager zwischen Feldern . Wahrscheinlich sind einige Antworten für Sie hilfreich. Wenn Sie eine von ihnen adoptieren, posten Sie hier eine Selbstantwort;)
Mołot

@ Molot, kennen Sie eine Möglichkeit, die Standardansicht des Knotens mit Ansichten zu überschreiben, dann kann ich den Standard-Pager von Ansichten verwenden. Dies wäre die sauberste Lösung für mich.
Ivan Ivanov

/node/%Legen Sie einfach den Pfad der Ansichtsseite fest und verwenden Sie Kontextfilter (afair), um den richtigen Knoten aus dem nidPfad zu ermitteln. Wenn Sie Zweifel haben, stellen Sie eine neue Frage, seien Sie einfach nicht überrascht, wenn jemand herausfindet, dass die Frage bereits gestellt wurde.
Mołot

Antworten:


9

Ich schlage vor, dass Sie Ihren Text mit jquery auf einen Teil aufteilen und durch Scrollen einen anderen Teil an den Hauptteil anhängen (möglicherweise mit einem Effekt wie FadeIn ....).
Ich schlage vor, Sie erreichen diesen Job durch jquery (clientseitige Lösung)


Auf diese Weise habe ich Registerkarten auf einer der Seiten implementiert, die ich pflegte. Ich muss zugeben - funktioniert ziemlich gut. Es ist wirklich eine gute Idee, entweder alle Seiten auszugeben und alle außer den ersten in js auszublenden. Und implementieren Sie auch #1in URL, um zu bestimmen, mit welcher Seite der Benutzer verknüpft ist. (Meine Tab-Implementierung ist hier live , leider besitze ich nicht mehr das Copyright für den verwendeten JS-Code). AJAX könnte auch funktionieren, aber auf der anderen Seite ist es normalerweise ein Overkill, ASCII wird gut komprimiert und die meiste Zeit wird für den Verbindungsaufbau benötigt, nicht für die eigentliche Übertragung. Es ist also eine Verschwendung.
Mołot

Die Verwendung von Ajax zum Laden eines einfachen Jobs wie das Abrufen von Inhalten (Body) aus der Formulardatenbank ist kein optimaler Job und es ist eine Verschwendung auf dem Server. Danach müssen wir nicht sehr erfahren sein und können den von mir vorgeschlagenen Code implementieren Übrigens denke ich, dass die clientseitige Lösung die beste Lösung für diesen Job ist. TNX für Sie kommentieren und diskutieren @ Mołot :)
Yusef

Die ordnungsgemäße Umsetzung example.com/article/23#page-1wird mehr als 50 Zeilen dauern. Und es lohnt sich, es zu haben, damit Benutzer Permalinks direkt zu einer gewünschten Seite haben können.
Mołot

Ich würde diese Lösung auch favorisieren - sie ist wesentlich nützlicher für Leute, die es leid sind, darauf zu warten, dass der gesamte Drupal-Stapel jede Seite lädt. Es ermöglicht Google auch, den Artikel als eine Einheit zu indizieren, anstatt durch Suchergebnisse potenziell zur Mitte eines Artikels zu gelangen. Ich würde jedoch vorschlagen, die Zugänglichkeit für Screenreader und dergleichen zu überprüfen - das könnte diese Lösung etwas komplizierter machen (obwohl immer noch die beste Lösung, IMO)
Nerdmaster

Nun, ich habe es am vordersten Ende mit mehreren Zeilen von jquery getan. Ich habe dafür gesorgt, dass das Body-Feld eine unbegrenzte Anzahl von Werten akzeptiert (die verschiedene Seiten simulieren). Schalten Sie dann zwischen Anzeige ohne / Block um.
Ivan Ivanov

9

Sie suchen nach Smart Paging- Modul

Bietet die Aufteilung langer Drupal-Inhalte in Unterseiten nach Anzahl der Zeichen / Wörter oder nach einem Platzhalter-HTML-Tag für Knoten-, Benutzer- und Taxonomiebegriffsentitäten.

Für Drupal 6

Mit dem Paging- Modul können Sie die Zeichenbegrenzung festlegen und es wird automatisch in Unterseiten aufgeteilt (siehe Abbildung unten)

Teilen Sie lange Seiten automatisch nach Wort- oder Zeichenbegrenzung in kleinere Seiten auf

Bildbeschreibung hier eingeben


Vielen Dank für Ihre Antwort! Ich arbeite allerdings an Drupal 7. Gibt es eine solche Lösung für D7?
Ivan Ivanov

Nun, versucht Smart Paging-Modul, es scheint die Arbeit zu erledigen, aber es ist nicht kompatibel mit Views AJAX-Pager und in meinem Fall verwende ich solche.
Ivan Ivanov

0

Nun, ein Workaround, den ich verwenden würde, wäre, es in mehrere Artikel aufzuteilen und sie mit einer Ansichtsseite (die einen Pager hat) zu kombinieren, da Sie bereits mit Ansichten arbeiten. Filtern Sie einfach Ihre Artikel auf nid oder einem (versteckten) Tag heraus. Wenn Sie möchten, dass alle die gleiche maximale Größe haben, können Sie https://drupal.org/project/maxlength verwenden . Fügen Sie Teil X dem Titel hinzu. Auf diese Weise können Ihre Leser die verschiedenen Seiten leicht voneinander unterscheiden.


0

Ich verstehe nicht, welche Ansichten AJAX-Pager (welche Seiten zeigen Ergebniszeilen an) mit Ihrer Artikelanzeige haben (was per se nur 1 Ergebnis ist). Zwei verschiedene Seiten. Möglicherweise möchten Sie jedoch Ihren "Artikelinhalt als berechnetes Feld" ausgeben. Beginnen Sie mit einem berechneten Feld, das nur die ersten x Wörter Ihres Artikelinhaltsfelds ausgibt. (oder bis zum ersten Seitenumbruch) Beenden Sie es mit einem selbst generierten HTML "more link". Dieser weitere Link ruft Ihre Ansicht mit einem Argument auf. Sie können dieses Argument in PHP Ihres berechneten Feldes verwenden. Zeigen Sie den x-ten Teil in Abhängigkeit von Ihrem Argument an.


Danke für deine Antwort! Problem # 1103810: Wenn das Smart Pagging-Modul aktiviert ist, wird das Modul "Views Load More" (oder "Views Ajax Pager") unterbrochen, sodass Sie nicht beide verwenden können. Das war ich gemeint.
Ivan Ivanov
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.