Mmh, bei mir geht das sofort. Hast du mal einen Beispieleintrag mit HTML? Vielleicht im BE mal den internen Cache deaktivieren?
Druckbare Version
Mmh, bei mir geht das sofort. Hast du mal einen Beispieleintrag mit HTML? Vielleicht im BE mal den internen Cache deaktivieren?
Interessant - hatte wohl tatsächlich mit dem internen Cache zu tun.
Danke Andreas
Hallo,
ich muss das nochmals hochschieben ...
ich hatte gestern in einem Projekt ein Update von 3.4.4 auf 3.5.4 in 4 Einzelschritten gemacht - irgendwo dazwischen dürfte sich da etwas bewegt haben, das jetzt meine Überschriften nicht mehr als LINK ausgeben lässt.
die dcaconfig.php ist nun leer?? - sollte die nicht irgendwie updatesicher sein, wenn da mal was drinnen steht? Ich muss gestehen, ich habe in den Update-Bundles aber auch keine Datei gefunden, die darauf hinweisen würde, dass sie überschrieben werden hätte können, sodass ich den Inhalt einfach wieder mal reingeschrieben habe.
Was meine Überschriften aber nun auch nicht dazu bewegt, wieder als link dargestellt zu werden » sie werden als blank-Text ausgegebenCode:/* HTML in Überschriften */
$GLOBALS['TL_DCA']['tl_content']['fields']['headline']['eval']['allowHTML'] = true;
/* HTML in News Überschriften */
$GLOBALS['TL_DCA']['tl_news']['fields']['headline']['eval']['preserveTags'] = true;
/* HTML in Seitennamen */
$GLOBALS['TL_DCA']['tl_page']['fields']['title']['eval']['preserveTags'] = true;
/* HTML in Seitentitel */
$GLOBALS['TL_DCA']['tl_page']['fields']['pageTitle']['eval']['preserveTags'] = true;
Im Modul, wo sie eingesetzt sind, sind sie als h1 deklariert und via Insert tag eingefügtCode:<a href="tipps.html">Tipps</a>
Ich habe in diesem Projekt noch die news_full.html5 angepasst und als news_full_z.html5 im templates abgelegt » das Ergebnis im FE klappt. Also glaube ich mal nicht, dass es am angepassten template liegt.Code:<a href="{{insert_url::13}}">Tipps</a>
Weiters habe ich auch in der tl_news.php die fields verglichen ... auch hier finde ich keine Auffälligkeiten.
Hat noch jemand eine Idee, wo sich da nun die Änderungen befinden, dass diese Einträge nicht mehr greifen?
btw. ist es möglich, dass sich die dcaconfig.php tatsächlich überschreibt?
preserveTags alleine reicht wohl nicht, du brauchst überall auch allowHTML
wie würde das dann aussehen müssen?
falls ja, dann scheint das auch nicht zu klappenCode:$GLOBALS['TL_DCA']['tl_news']['fields']['headline']['eval']['preserveTags']['allowHTML'] = true;
Nein, genau so wie du es schon hier gemacht hast:allowHtml und preserveTags sind Teil des eval Arrays.PHP-Code:
/* HTML in Überschriften */
$GLOBALS['TL_DCA']['tl_content']['fields']['headline']['eval']['allowHTML'] = true;
Die dcaconfig.php wird nicht überschrieben beim Update. Aber wenn du die alte Datei dcaconfig.php vor dem Aufruf der install.php nicht in den Ordner reinkopierst, dann wird eben eine neue, leere Datei erzeugt. Woher soll das Contao auch sonst wissen, was in deiner alten dcaconfig.php drinsteht? Ist eben genau wie mit der localconfig.php.
BTW: Ich denke es liegt daran dass du preserveTags auf true gesetzt hast, dass deine Tags im "Klartext" ausgegeben werden. Wenn ich nur allowHTML auf true setze, dann kann ich in den Überschriften HTML verwenden.
nein, auch das hat nichts gebracht - und ich weiss, dass es mit preserveTags auch vorher funktioniert hatte. Ich glaube mich erinnern zu können, dass es irgendwo im Forum einen Betrag gab, wo das für die tl_news schon mal diskutiert wurde und dann das preserveTags zu nehmen war ... kann mich da aber auch gröber täuschen :(
Aber für die tl_content funktioniert allowHtml ja
... in welchen Ordner hätte ich die dcaconfig.php reinkopieren sollen?
Hmm, müsste man mal schauen, anhand welcher Datei oder anhand was sonst geprüft wird, ob die *config.php Dateien schon angelegt sind oder ob sie neu erzeugt werden müssen.
so, jetzt hab ich zumindest mal den Fehler für die Link-Geschichte gefunden.
Die Überschrift habe ich in einem Modul platziert » und tl_module muss man das wohl auch noch beibringen
... eigener Vermerk:Code:$GLOBALS['TL_DCA']['tl_module']['fields']['headline']['eval']['allowHtml'] = true;
vor einem Update die dcaconfig.php wegsichern :D
"Sollte" eigentlich nicht notwendig sein. Falls doch, ist es wohl nicht so geplant. Die entsprechende Funktion (nach meinem limitierten Verständnis für die Innereien von Contao) sieht so aus:
Die drei Dateien sollten also - wenn überhaupt - alle einzeln auf Existenz geprüft und falls nicht vorhanden neu erzeugt werden.PHP-Code:
protected function createLocalConfigurationFiles()
{
if (\Config::get('installPassword') != '')
{
return;
}
// The localconfig.php file is created by the Config class
foreach (array('dcaconfig', 'initconfig', 'langconfig') as $file)
{
if (!file_exists(TL_ROOT . '/system/config/' . $file . '.php'))
{
\File::putContent('system/config/'. $file .'.php', '<?php' . "\n\n// Put your custom configuration here\n");
}
}
}
Das sollte besser heißen:
Vor einem Update besser die ganze Installation sichern!
;-)
An sich hat tab aber recht. Die Dateien werden nur neu geschrieben, wenn die nicht schon vorhanden sind.
Viele Grüße
Oh ja, allerdings ...
Das war jetzt von mir nicht so gemeint, dass man keine Sicherung machen sollte vor einem Update. Ich meinte damit nur, dass eine bestehende dcaconfig.php beim Update nicht überschrieben wird. Ein Backup sollte eigentlich selbstverständlich sein :D;):rolleyes:
... Installations-Sicherung gibt es sowieso immer vorher ... ;-)
Was mich aber nun natürlich beruhigt, dass diese Abfrageroutine auch in meiner Installation vorhanden ist.
Sicherheitshalber habe ich nun auch noch in den Update-Paketen kontrolliert/verglichen, ob ggf. hier etwas schief gelaufen sein könnte » nein, zu jedem Zeitpunkt müsste diese Abfrage vorhanden gewesen sein.
egal ... werd ich bei den nächsten updates einfach mal unter Obacht halten ...
DANKE euch!
Jahre später ... und immer noch Thema? ich glaub schon:
In meiner eventliste (Contao 3.5.30) werden in $this->title die HTML-Tags umgewandelt, also im frontend ausgegeben,
in $this->link werden sie richtig verarbeitet.
Ich habe jetzt im Template $this->title durch $this->link ersetzt.
Aber komisch bleibt es.
Grüße
Hi Leute,
HTML für Überschriften erlaube im ce_text, wie muß ich das eintragen?
Bisher habe ich dies hier, was aber nur für ce_headline funktioniert:
PHP-Code:
<?php
// Allow HTML in Headlines
$GLOBALS['TL_DCA']['tl_content']['fields']['headline']['eval']['allowHtml'] = true;
headline und text benutzen beide das gleiche Feld headline: https://github.com/contao/contao/blo....php#L109-L110
Also müsste Deine Änderung für beide greifen. Hast Du nach der Änderung den Cache neu aufgebaut und funktioniert es dann nur für headline, aber nicht für text?
Danke für den Tipp..
Habe den Cache über den Contao-Manager gelöscht und jetzt geht es ..
Hallo Leute,
ich grabe den Thread noch mal aus.
Um HTML-Tags in den Überschriften zu erlauben, habe ich folgenden Code in in eine Datei "config/dca/tl_content.php geschrieben".
Dann das Verzeichnis var/cache/prod gelöscht und die Systemwartung ausgeführt.Code:<?php
/* HTML in Ueberschriften erlauben*/
$GLOBALS['TL_DCA']['tl_content']['fields']['headline']['eval']['allowHtml'] = true;
Leider kommt nicht das erwartete Ergebnis. Es werden keine HTML-Tags geparst.
Hier mal FE und BE Ansicht.
Anhang 25189
Anhang 25190
Contao 4.9.24
Externes Theme
Hat jemand eine Idee?
Gruß
tschero
Anstelle config/dca/tl_content.php muss es contao/dca/tl_content.php sein.
Das hatte ich komplett überlesen.
Es funktioniert.
Vielen Dank.
Gruß
tschero
Ich nutze auch mal diesen Thread, um eine Frage in die Runde zu werfen - ich denke, das passt ganz gut hierher.
Ich habe die möglichen Überschriften von h1 bis H4 definiert und zusätzlich eine mit Option mit <span> angelegt.
Für <span> soll global gleich eine Klasse "headline" festlegt sein.
Leider wird das Gleichheitszeichen jedes mal in & #61; umgewandelt (ich musste mal ein Leerzeichen zwischen & und # setzten, da sonst ein = ausgegeben wird - welch ironie :D )Code:$GLOBALS['TL_DCA']['tl_content']['fields']['headline']['options'] = array(
'h1' => 'h1',
'h2' => 'h2',
'h3' => 'h3',
'h4' => 'h4',
'span class=headline' => 'span'
);
Nun habe ich schon unzählige Möglichkeiten probiert, das Gleichheitszeichen zu maskieren (z.B. %3d, & #61;, = usw) doch es wird nicht als = ausgegeben.Code:class& #61;headline
Hi,
ich bin mir jetzt nicht sicher, aber sollten nicht noch Anführungszeichen hinter dem class= eingefügt werden?
GrußCode:'span class=headline' => 'span'
tschero