default Anrisstext-Länge verändern - wo?
Eingetragen von tomx (771)
am 19.12.2007 - 15:17 Uhr in
am 19.12.2007 - 15:17 Uhr in
Der kürzeste Anristext ist 200 Zeichen lang. Wo kann man diese Länge ändern evt. sogar mit unterschiedlicher Länge für verschiedenen Ansichten?
- Anmelden oder Registrieren um Kommentare zu schreiben
Nichtautomatische
am 19.12.2007 - 16:26 Uhr
Nichtautomatische Variante:
An der Stelle, an der der Text abgekürzt werden soll, ein
<!--break->
einfügen.Auf geschlossene Tags achten.
Grüße,
maschu
--
Danke, für den manuellen
am 19.12.2007 - 16:33 Uhr
Danke, für den manuellen Ansatz. Allerdings bevorzuge ich die Vorteile der Automatisierung :-)
Ich habe nun entdeckt, dass
am 19.12.2007 - 18:16 Uhr
Ich habe nun entdeckt, dass man ein cck Feld mit bestimmter Länge erstellen kann, welches als Anristextfeld dienen könnte. Nun ist es aber so, dass Texte bereits im Standard Textfeld vohanden sind. Läßt sich eine einfaches Textfeld mit einem neuen cck-Feld "formatieren" oder wie ließe sich solch ein Zweifachfeld-Problem lösen?
Es soll ja einfach nur der Anrisstext des "normalen" Textfeldes gekürzt werden.
tomx wrote:
am 19.12.2007 - 18:24 Uhr
Die Einstellung dazu findest Du unter @admin/content/node-settings@.
Teste dazu mal das Excerpt-Modul.
Generell ist die Suchfunktion ist Dein Freund! Das Thema gab es bereits in div. Varianten...
--
bv - drupalcenter.de
bv wrote:
am 19.12.2007 - 18:30 Uhr
... Die Einstellung dazu findest Du unter @admin/content/node-settings@ ...
eben, dort sind 200 Zeichen das Minimum. Daher meine Frage. Ich probiere mal das Excerpt-Modul. Wie sieht es mit meiner Ergänzungsfrage aus, eine vordefiniertes Feld mit cck zu erstellen und über dieses das "normalel" Textfeld zu fomatieren. Würde das gehen und wie? Ein Antwort habe ich trotz suchen noch nicht gefunden.
Danke für Deine Antwort.
Länge setzen
am 19.12.2007 - 19:02 Uhr
Der kürzeste Anristext ist 200 Zeichen lang. Wo kann man diese Länge ändern evt. sogar mit unterschiedlicher Länge für verschiedenen Ansichten?
Du kannst die Länge über eine Variable manuell setzen:
<?php
variable_set('teaser_length', 50);
?>
Excerpt setzt den Teaser individuell je Beitrag; da gibt's keine Automatik.
tumblingmug wrote:
am 19.12.2007 - 21:04 Uhr
... Excerpt setzt den Teaser individuell je Beitrag; da gibt's keine Automatik.
Das ist gut zu wissen. Danke auch für die Variable.
Wo schreibe ich die Variable denn hin?
Inhaltstypen
am 19.12.2007 - 21:16 Uhr
Excerpt hat keine eigene Config-Seite. Unter admin/content/types/DEIN_INHALTS_TYP kannst Du im Fieldset workflow (Arbeitsablauf) eine nodetyp-spezifische Einstellung machen. Wenn Du aber dort auf "Auto-generated" stellst, stellst Du eigtl. nur die individuelle Teasererstellung für diesen Nodetyp ab und alles ist wie ohne Excerpt.
Der Sinn von Excerpt ist im Grunde nur die Möglichkeit, Teaser auf der Page-Anzeige nicht zu wiederholen bzw. den Nodeinhalt durch einen eigens nur für Teaserlisten definierten Inhalt zu repräsentieren - geht also an Deinem Problem, glaube ich, vorbei.
Hmm. Aber das ist jetzt irgendwie eine Antwort auf eine Frage von Dir, die ich nicht mehr sehe :))
Wo schreibe ich die Variable denn hin?
Darum musst Du Dich nicht gesondert kümmern - wissen musst Du allerdings, dass sie systemweit wirkt, also für alle Teaserlisten gültig ist. Oder meinst Du mit Deiner Frage, wohin Du ein PHP-Statement schreiben sollst? – Dann musst Du für eine Antwort Deine Ziele etwas genauer darstellen.
tumblingmug wrote: ... Dann
am 19.12.2007 - 22:25 Uhr
... Dann musst Du für eine Antwort Deine Ziele etwas genauer darstellen.
Ja, wo genau muss ich den php-code die variable reinschreiben, in ein template, php-code ausführen auf einer Seite etc.?
Danke für Deine ausführliche Antwort. Du hast recht. Da stand für kurze Zeit eine Frage zum Excerpt-Modul, welche ich wieder entfernt habe, das ich mir der Sinn nach einigerm Probieren erschlossen hat ...
Code ausführen auf einer Seite reicht
am 19.12.2007 - 22:47 Uhr
php-code ausführen auf einer Seite
Ja, das reicht, wenn Du eine generelle Länge für alle Teaserlisten haben willst. Wenn Du allerdings die Node-Settings-Page jemals erneut abspeichern solltest, würde die Variable wohl wieder überschrieben, da dieser Wert dort nicht in der Optionsliste vorkommt. Robuster wäre daher wahrsch. eine DEINMODUL_form_alter() Funktion, die Deinen Wunschwert im Node-Einstellungsformular regulär zur Verfügung stellen würde.
Aber solange Du diese Einschränkung beachtest, reicht schon eine einmalige Ausführung auf einer Page.
Danke. Weißt Du evt. auch
am 19.12.2007 - 23:01 Uhr
Danke. Weißt Du evt. auch wo die default Wert von admin/content/node-settings für die Anrisstexte stehen (Länge der gekürzten Beiträge:200,400,600,800 ...)?
Volltextsuche
am 20.12.2007 - 00:42 Uhr
Die Ziffer 800 duerfte im gesamten Drupalcode einmalig sein. Mache mit "800" eine Volltextsuche auf das Verzeichnis aller Drupaldateien. Danach weisst Du in welcher Datei die Laenge des Anrisstext fuer die Administration definiert wird.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Default Wert Anrisstexte
am 20.12.2007 - 09:54 Uhr
Danke. Weißt Du evt. auch wo die default Wert von admin/content/node-settings für die Anrisstexte stehen (Länge der gekürzten Beiträge:200,400,600,800 ...)?
Im Node Modul. Du musst das betreffende Option-Array in ein eigenes kleines Minimodul kopieren und, wie gesagt, in die Funktion DEIN_MODUL_NAME_form_alter(...) einsetzen. Im node.module Quelltext würde ich keine Anpassung vornehmen an Deiner Stelle. Diese wärst Du schliesslich ab Drupal-Version 5.6 wieder los ...
Viel Glück noch.