automaticher Seitenumbruch nach X Zeilen

Für Fragen und Diskussionen zum Layout und Design, Templates und Stylesheets sowie Themes
Post Reply
ATROXX
Forum Members
Forum Members
Posts: 20
Joined: Tue Jun 24, 2008 9:19 am

automaticher Seitenumbruch nach X Zeilen

Post by ATROXX »

Halli hallo,
ich habe ein fixes graphiches Deisign als Template für meine Seite erstellt.
Nun entteht hierbei jedoch folgendes Problem:
Ertellt nun ein Autor einen Artikel, der sehr lang ist und über z.b. 50 Zeilen geht, dann sprengt der Text das Design.
Damit nun alles im grünen Bereich bleibt bräuchte ich einen Seiteumbruch bevor der Text über da Design hinaus geht.
Da die Autoren noch weiger Ahnung von PHP oder HTML haben und ausschliesslich mit WYSIWYG arbeiten, müsste dies automatisch geschehen.
Kann mir da jemand bei helfen.
cyberman

Re: automaticher Seitenumbruch nach X Zeilen

Post by cyberman »

Was genau meinst du mit Artikel? Eine "normale" Content-Seite oder einen News-Artikel?
NaN

Re: automaticher Seitenumbruch nach X Zeilen

Post by NaN »

Ich schätze mal, dass es völlig irrelevant ist, ob News-Artikel oder Content.
Es wird schwierig sowas zu realisieren.
Der Inhalt müsste von einem Plugin oder einem Modul bevor er gespeichert bzw. angezeigt wird aufgeteilt werden.
Es müsste ja dann eine weitere Seite eingefügt werden, die aber evtl. nicht im Menü sichtbar ist und auf die vom Inhalt aus verlinkt wird.
Oder der Inhalt wird in Tabs dargestellt, die mit CSS und Javascript ein und ausgeblendet werden können.
Kurz: der Inhalt müsste dynamisch verändert werden.
Alles in allem nicht unmöglich, aber leider auch nicht einfach.

Ich würde sowas wahrscheinlich mit einem speziellen Inhaltstypen lösen.
So habe ich schon oft diverse spezielle Eigenschafen eines Inhalts umsetzen können.
Ich überlege z.B. gerade, einen Inhaltstyp namens CustomContent zu erstellen.
Mit dem kann man dann festlegen welche FrontendUsergruppe/welche FrontendUser den Inhalt sehen dürfen.
So fällt z.B. die Arbeit mit dem Modul CustomContent im Template weg.
Dort soll im Prinzip beim Speichern vor und nach dem Inhalt der Syntax des CustomContent-Moduls eingefügt werden.

So ähnlich könnte man auch den Inhalt bei Deinem Vorhaben manipulieren.

Allerdings wäre es viel einfacher, dem Bereich in dem der Inhalt steht via CSS einfach die Eigenschaft overflow:auto; zu geben.
Ist der Inhalt größer als der angezeigte Bereich, erscheint automatisch ein Rollbalken.

Schau mal in dieses Thema:

http://forum.cmsmadesimple.org/index.ph ... 882.0.html

Da ging es auch um ein fixes Layout.
cyberman

Re: automaticher Seitenumbruch nach X Zeilen

Post by cyberman »

Oder halt eine Javascript-Lösung zum Blättern ...
NaN

Re: automaticher Seitenumbruch nach X Zeilen

Post by NaN »

cyberman wrote: ...
Oder halt eine Javascript-Lösung zum Blättern
...
Das meinte ich ja mit
NaN wrote: ...
Oder der Inhalt wird in Tabs dargestellt, die mit CSS und Javascript ein und ausgeblendet werden können.
...
Da könnte man sogar ganz auf PHP bzw. Plugins/Module verzichten indem man das JavaScript dazu im Template einbindet.
Aber auch das ist nicht so einfach.
Ich wüsste jetzt nicht auf Anhieb, wie ich die Zeilenanzahl/Höhe eines Textes mit Javascript ermitteln, aufsplitten, diverse mit entsprechenden IDs erstellen usw. ... sollte.
(Allerdings wüsste ich das auch nicht sofort für PHP ;) )
ATROXX
Forum Members
Forum Members
Posts: 20
Joined: Tue Jun 24, 2008 9:19 am

Re: automaticher Seitenumbruch nach X Zeilen

Post by ATROXX »

1. zur Javascript-Lösung:
Dies dachte ich mir zuerst auch, wäre auch gar nicht mal so chwierig, jedoch ist dies abzulehnen.
Grund hierfür ist, dass ich zum eine kein JavaScript-Freund bin. Und wenn ich es nicht bin, könnt Ihr Euch denken, dann sind es viele andere User auch nicht. Zum einen gibt es leidergottes viele User mit proprietäten Browsern, die noch kein JavaScript unterstützen. Zum Andere gibt es viele User die JavaScript aus Sicherheitsgründen standardmässig deaktiviert haben, da dies immerhin eine clientabhängige Scriptprache ist Es ist daher dringends davon abzuraten wichtige Strukturen in JavaScript zu schreiben, und diese Scriptsprache lediglich bei verzichtbaren Komfortfunktionen einzuetzen. -> Stichwort Barierefreiheit

2. zur CSS:overflow-Lösung:
Ja dies ist eine schön einfache und zweckdienliche Lösung.
Problem hierbei ist jedoch, dass diese Lösung nicht im Sinne eines schönen und auberen Deignlayouts ist, da Scrollbalken alles andere als schmückend für die Seite sind und zudem unnötigen Platz wegnehmen, was wiederum das graphische Design verhunzen kann.

3. zur PHP-Lösung:
Ich kenne keine Funktion, noch kann ich eine finden, die einen Seitenumbruch nach X Zeilen oder X pixeln Höhe vornimmt.
Das Eizige was ich kenne ist die Stringteilung ab dem X-ten Zeichen.
NaN

Re: automaticher Seitenumbruch nach X Zeilen

Post by NaN »

ATROXX wrote: ...
3. zur PHP-Lösung:
Ich kenne keine Funktion, noch kann ich eine finden, die einen Seitenumbruch nach X Zeilen oder X pixeln Höhe vornimmt.
Das Eizige was ich kenne ist die Stringteilung ab dem X-ten Zeichen.
Dann musst Du halt in Erfahrung bringen ab dem wievielten Zeichen, der Inhalt nicht mehr in den Inhaltsbereich passt.
Einfach mal einen Blindtext erstellen und zählen...

Meintest Du nun eigentlich News-Artikel oder einfache Seiteninhalte?
Bei den News-Artikeln wird das ganze mit der PHP-Lösung noch etwas komplizierter.
ATROXX
Forum Members
Forum Members
Posts: 20
Joined: Tue Jun 24, 2008 9:19 am

Re: automaticher Seitenumbruch nach X Zeilen

Post by ATROXX »

Naja es ist eigentlich vollkommen irrelavant ob einfache Contenteite oder Newsseite.
Problem beim Abzählen der Zeichen ist nur, dass man ja im WYIWYG die Schrift unterchiedlich formattieren kann.
Alleine schon, wenn man eine Tabelle zur formattierung einfügt oder die Schriftgrösse oder -art verändert wirds problematisch.
NaN

Re: automaticher Seitenumbruch nach X Zeilen

Post by NaN »

Eine andere Möglichkeit wäre, das Textfeld des TinyMCE so einzustellen, dass es genauso hoch ist wie der Inhaltsbereich auf der Seite.
Sobald der Tiny dann scrollen muss, weiß man, dass der Inhalt nicht mehr auf die Seite passt und man eine neue Seite für den restlichen Inhalt anlegen muss.

Man könnte den Tiny auch um folgende Funktion erweitern:

http://wiki.moxiecode.com/index.php/Tin ... /pagebreak

Sobald der Inhalt im Editor nicht mehr ins Textfenster passt -> Seitenumbruch.
Im PHP Script muss man dann nur noch nach dem Zeichen für den Seitenumbruch suchen, den Text aufteilen und... naja, irgendwie auf mehrere Inhaltsseiten verteilen...

Ist allerdings leider nicht für News-Artikel geeignet.
Da müsste man dann das News-Modul modifizieren.

Am besten wäre es natürlich, wenn der Inhalt nicht beim Speichern, sondern bei der Anzeige aufgeteilt wird.
Am Ende kommt dann ein Link "Nächste Seite" oder so, der eine bestimmte Variable mit einer Art Nummer an das CMS übergibt, nach der das CMS dann weiß, welchen Teil es jetzt anzuzeigen gilt.

Dann wäre es auch für News-Artikel geeignet.
Post Reply

Return to “Layout und Design”