FlexContent Felder mit Wysiwig?
FlexContent Felder mit Wysiwig?
Guten Tag,
ist es möglich für die Felder der Flexiblen Produktinformationen den TinyMCE Editor zu aktivieren?
MfG
ist es möglich für die Felder der Flexiblen Produktinformationen den TinyMCE Editor zu aktivieren?
MfG
- supportteam2
- Beiträge: 427
- Registriert: 4. Mär 2015, 14:05
Re: FlexContent Felder mit Wysiwig?
Hallo amimoto,
diese Möglichkeit gibt es in Merconis aktuell nicht. Falls Sie sich aber mit der Extension-Programmierung für Contao ein wenig auskennen, haben Sie alternativ zur Nutzung der FlexContents die Möglichkeit, mit einer eigenen, kleinen Extension die Produkt-Tabelle und die Produkt-Erfassungsmaske um eigene Felder zu erweitern. Die eigenen Felder können Sie in der DCA-Konfiguration dann beliebig einstellen, also z. B. auch den Tiny-Editor aktivieren usw.
diese Möglichkeit gibt es in Merconis aktuell nicht. Falls Sie sich aber mit der Extension-Programmierung für Contao ein wenig auskennen, haben Sie alternativ zur Nutzung der FlexContents die Möglichkeit, mit einer eigenen, kleinen Extension die Produkt-Tabelle und die Produkt-Erfassungsmaske um eigene Felder zu erweitern. Die eigenen Felder können Sie in der DCA-Konfiguration dann beliebig einstellen, also z. B. auch den Tiny-Editor aktivieren usw.
Ihr MERCONIS-Supportteam
Your MERCONIS Support Team
Your MERCONIS Support Team
Re: FlexContent Felder mit Wysiwig?
Dazu noch eine kurze Frage:
Anscheinend kann ich auch kein HTML in den FlexContent Feldern verwenden!? Kann man das abfangen?
Immerhin werden Zeilenumbrüche übernommen und ich kann im Template diese mittels der Funktion nl2br() wieder ausgeben.
Ich versuche mich immer noch um die eigene Erweiterung zu drücken...
Anscheinend kann ich auch kein HTML in den FlexContent Feldern verwenden!? Kann man das abfangen?
Immerhin werden Zeilenumbrüche übernommen und ich kann im Template diese mittels der Funktion nl2br() wieder ausgeben.
Ich versuche mich immer noch um die eigene Erweiterung zu drücken...

- supportteam2
- Beiträge: 427
- Registriert: 4. Mär 2015, 14:05
Re: FlexContent Felder mit Wysiwig?
Die Flex-Content-Felder nutzen beim Speichern der Feldwerte die Contao-Option "decodeEntities". Dies ist für bestimmte FlexContent-Werte sinnvoll, sorgt aber auch dafür, dass die Eingabe für den FlexContent "test1"
bei der direkten Ausgabe im Template mit
als
im Quelltext ausgegeben wird.
Mit
lassen sich die Entities aber umwandeln, was dann zur gewünschten Ausgabe führt.
Alternativ ist es möglich, im Rahmen einer eigenen kleinen Extension die DCA-Konfiguration von tl_ls_shop_product bzw. tl_ls_shop_variant so zu manipulieren, dass die FlexContent-Felder ihre Werte ohne "decodeEntities" aber mit "allowHtml" oder "preserveTags" abspeichern.
Code: Alles auswählen
<p>Hallo<br>Welt</p>
bei der direkten Ausgabe im Template mit
Code: Alles auswählen
<?php echo $this->objProduct->_flexContents['test1']; ?>
Code: Alles auswählen
<p>Hallo<br><strong>Welt</strong></p>
Mit
Code: Alles auswählen
<?php echo html_entity_decode($this->objProduct->_flexContents['test1']); ?>
Alternativ ist es möglich, im Rahmen einer eigenen kleinen Extension die DCA-Konfiguration von tl_ls_shop_product bzw. tl_ls_shop_variant so zu manipulieren, dass die FlexContent-Felder ihre Werte ohne "decodeEntities" aber mit "allowHtml" oder "preserveTags" abspeichern.
Ihr MERCONIS-Supportteam
Your MERCONIS Support Team
Your MERCONIS Support Team
Re: FlexContent Felder mit Wysiwig?
Vielen Dank!
Re: FlexContent Felder mit Wysiwig?
Ich schon wieder... 
Ich habe nun versucht der Produkt-Tabelle eigene Felder hinzuzufügen.
Hier meine Datei tl_ls_shop_product.php im Ordner dca:
Wenn ich nun die Datenbank aktualisieren will, dann sollen die anderen multilingualen Felder gelöscht werden:
Das hängt vermutlich mit dem "'merconis_multilanguage' => true," zusammen??
Muß ich meine Felder noch anders wo registrieren?

Ich habe nun versucht der Produkt-Tabelle eigene Felder hinzuzufügen.
Hier meine Datei tl_ls_shop_product.php im Ordner dca:
Code: Alles auswählen
$GLOBALS['TL_DCA']['tl_ls_shop_product']['palettes']['default'] = str_replace('title,','title,subtitle,', $GLOBALS['TL_DCA']['tl_ls_shop_product']['palettes']['default']);
$GLOBALS['TL_DCA']['tl_ls_shop_product']['palettes']['default'] = str_replace('keywords,','keywords,descriptionTab1,descriptionTab2,descriptionTab3,', $GLOBALS['TL_DCA']['tl_ls_shop_product']['palettes']['default']);
$GLOBALS['TL_DCA']['tl_ls_shop_product'] = array
(
'fields' => array
(
'subtitle' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_ls_shop_product']['subtitle'],
'exclude' => true,
'inputType' => 'text',
'eval' => array(
'mandatory' => true,
'tl_class'=>'w50',
'merconis_multilanguage' => true,
'decodeEntities' => true,
'maxlength'=>255
),
'search' => true
),
'descriptionTab1' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_ls_shop_product']['descriptionTab1'],
'exclude' => true,
'inputType' => 'textarea',
'eval' => array
(
'rte'=>'tinyMCE',
'tl_class'=>'clr',
'merconis_multilanguage' => true,
'decodeEntities' => true
),
'search' => true
),
'descriptionTab2' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_ls_shop_product']['descriptionTab2'],
'exclude' => true,
'inputType' => 'textarea',
'eval' => array
(
'rte'=>'tinyMCE',
'tl_class'=>'clr',
'merconis_multilanguage' => true,
'decodeEntities' => true
),
'search' => true
),
'descriptionTab3' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_ls_shop_product']['descriptionTab3'],
'exclude' => true,
'inputType' => 'textarea',
'eval' => array
(
'rte'=>'tinyMCE',
'tl_class'=>'clr',
'merconis_multilanguage' => true,
'decodeEntities' => true
),
'search' => true
)
)
);
Code: Alles auswählen
ALTER TABLE `tl_ls_shop_product` DROP `title_en`;
ALTER TABLE `tl_ls_shop_product` DROP `title_de`;
ALTER TABLE `tl_ls_shop_product` DROP `description_en`;
ALTER TABLE `tl_ls_shop_product` DROP `description_de`;
ALTER TABLE `tl_ls_shop_product` DROP `shortDescription_en`;
ALTER TABLE `tl_ls_shop_product` DROP `shortDescription_de`;
ALTER TABLE `tl_ls_shop_product` DROP `keywords_en`;
ALTER TABLE `tl_ls_shop_product` DROP `keywords_de`;
ALTER TABLE `tl_ls_shop_product` DROP `flex_contents_en`;
ALTER TABLE `tl_ls_shop_product` DROP `flex_contents_de`;
ALTER TABLE `tl_ls_shop_product` DROP `lsShopProductQuantityUnit_en`;
ALTER TABLE `tl_ls_shop_product` DROP `lsShopProductQuantityUnit_de`;
ALTER TABLE `tl_ls_shop_product` DROP `lsShopProductMengenvergleichUnit_en`;
ALTER TABLE `tl_ls_shop_product` DROP `lsShopProductMengenvergleichUnit_de`;
Muß ich meine Felder noch anders wo registrieren?
Re: FlexContent Felder mit Wysiwig?
Guten Tag,
hier komme ich nicht wirklich weiter. Ich habe nun versucht, die zusätzlichen Inhalte als Artikel Content anzulegen und dann per Insert-tag in die FlexContent-Felder einzubinden. Das scheint aber nicht zu funktionieren!?
Wie komme ich da weiter??
MfG
hier komme ich nicht wirklich weiter. Ich habe nun versucht, die zusätzlichen Inhalte als Artikel Content anzulegen und dann per Insert-tag in die FlexContent-Felder einzubinden. Das scheint aber nicht zu funktionieren!?
Wie komme ich da weiter??
MfG
Re: FlexContent Felder mit Wysiwig?
Oh, sorry, Korrektur: Insert-Tags funktionieren doch... 
Trotzdem würde ich lieber eigene Felder mit Wyswig-Editor anlegen...

Trotzdem würde ich lieber eigene Felder mit Wyswig-Editor anlegen...
- supportteam2
- Beiträge: 427
- Registriert: 4. Mär 2015, 14:05
Re: FlexContent Felder mit Wysiwig?
Hallo und zunächst sorry für die lange Wartezeit, Ihre Rückfrage vom 20. Oktober haben wir schlicht und einfach übersehen!
Das Problem mit Ihrer DCA-Datei ist, dass Sie darin das Array $GLOBALS['TL_DCA']['tl_ls_shop_product'] nicht erweitern, sondern überschreiben. Der genaue Hintergrund, warum das dazu führt, dass Contao die Sprachfelder aus der Datenbank löschen möchte, ist etwas kompliziert zu erklären, aber auch nicht so wichtig. Sie müssen lediglich sicherstellen, dass Sie die Originale DCA-Definition nicht überschreiben, sondern durch weitere Felder ergänzen.
Also z. B. so:
Ihre neuen Felder müssen Sie auch noch in der Datenbank anlegen. Hierbei legen Sie jeweils nur ein sprachunabhängiges Feld an, Merconis erstellt dann automatisch die entsprechenden Sprachfelder, wenn dies aufgrund Ihrer DCA-Konfiguration nötig ist. Sie können mal einen Blick in die database.sql von Merconis werfen, um zu sehen, wie das für die Standard-DCA-Konfiguration aussieht.
Das Problem mit Ihrer DCA-Datei ist, dass Sie darin das Array $GLOBALS['TL_DCA']['tl_ls_shop_product'] nicht erweitern, sondern überschreiben. Der genaue Hintergrund, warum das dazu führt, dass Contao die Sprachfelder aus der Datenbank löschen möchte, ist etwas kompliziert zu erklären, aber auch nicht so wichtig. Sie müssen lediglich sicherstellen, dass Sie die Originale DCA-Definition nicht überschreiben, sondern durch weitere Felder ergänzen.
Also z. B. so:
Code: Alles auswählen
$GLOBALS['TL_DCA']['tl_ls_shop_product']['fields']['subtitle'] = array (
'label' => &$GLOBALS['TL_LANG']['tl_ls_shop_product']['subtitle'],
'exclude' => true,
'inputType' => 'text',
'eval' => array (
'mandatory' => true,
'tl_class'=>'w50',
'merconis_multilanguage' => true,
'decodeEntities' => true,
'maxlength'=>255
),
'search' => true
);
Ihr MERCONIS-Supportteam
Your MERCONIS Support Team
Your MERCONIS Support Team
Re: FlexContent Felder mit Wysiwig?
Guten Tag,
Vielen Dank, das hat super geklappt!
Ich hatte zwar gestern gerade eine alternative Lösung mit den Insert-Tags aufgebaut, aber so gefällt es mir viel besser.
Eine Frage habe ich aber doch noch:
Wie rufe ich meine neuen Felder im Template auf??
$this->objProduct->_subtitle scheint nicht gesetzt...
Vielen Dank, das hat super geklappt!
Ich hatte zwar gestern gerade eine alternative Lösung mit den Insert-Tags aufgebaut, aber so gefällt es mir viel besser.
Eine Frage habe ich aber doch noch:
Wie rufe ich meine neuen Felder im Template auf??
$this->objProduct->_subtitle scheint nicht gesetzt...