TinyMCE Anpassungen flexible Templates

Alles rund um Module und Plugins in CONTENIDO 4.10.
Antworten
Schwebbs
Beiträge: 12
Registriert: Fr 19. Feb 2021, 17:28
Kontaktdaten:

TinyMCE Anpassungen flexible Templates

Beitrag von Schwebbs » Mi 24. Feb 2021, 14:33

Hallo,

ich versuche, den tinyMCE-Editor über das Backend zu editieren. Über den Weg Administration, System, WYSIWYG kann man entsprechende Einstellungen vornehmen. Gerne möchte ich per "zusätzliche Parameter" Templates einfügen können. Mit den folgenden Befehlen ist dies auch möglich:

{
"allow_script_urls": true,
"valid_elements": "*[*]",
"extended_valid_elements": "*[*]",

"templates": [
{
"title": "Test",
"content": "test",
"description": "test"
},
{
"title": "Test2",
"url": "/templates/test.html",
"description": "Test2"

} ] }

Das Template Test ist ohne Probleme einzufügen, die html-Datei (Test2) lässt sich jedoch nicht einbinden. Wird die Einbindung von html von contenido evtl. geblockt?

Vielen Dank für Eure Ideen und Hilfen!

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von xmurrix » Mi 24. Feb 2021, 15:53

Hallo Schwebbs,

willkommen in CONTENIDO Forum.

Liegen die Templates im Mandantenordner oder im Contenido-Ordner?


URL zu einem Template im Mandantenordner lautet in der Regel:

Code: Alles auswählen

/cms/templates/test.html
URL zu einem Template im Contenido-Ordner lautet in der Regel:

Code: Alles auswählen

/contenido/templates/test.html
Es kann auch sein, dass im Template-Ordner eine .htaccess vorhanden ist, die die Anfrage auf Dateien unterbindet.

Falls du mit dem AMR-Plugin arbeitest, müsstest du im der .htaccess (im DocumentRoot) eine Regel definieren, die die Anfrage auf Dateien im Template-Ordner vom Umschreiben ausschließt. Siehe dazu die Einträge, die nach der Zeile "# Exclude some files and directories from rewriting" vorkommen.

Grüße
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Schwebbs
Beiträge: 12
Registriert: Fr 19. Feb 2021, 17:28
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von Schwebbs » Mi 24. Feb 2021, 18:10

Das Template liegt im Contenido-Ordner.

Um solche Einstellungsprobleme zu umgehen, habe ich mir lokal eine neue Contenido-Instanz mit Xampp aufgesetzt. Da dürfte doch eigentlich keine htaccess "stören", oder?

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von xmurrix » Mi 24. Feb 2021, 21:08

Das Template liegt im Contenido-Ordner.
Wenn das Template im Contenido-Ordner liegt, ist das DocumentRoot des CMS das Installationsverzeichnis und da sollte die URL zum Template wie folgt lauten:

Code: Alles auswählen

/contenido/templates/test.html
Um solche Einstellungsprobleme zu umgehen, habe ich mir lokal eine neue Contenido-Instanz mit Xampp aufgesetzt. Da dürfte doch eigentlich keine htaccess "stören", oder?
Sofern man eine Contenido-Instanz ohne das AMR-Plugin verwendet, welches standardmäßig nicht aktiv und konfiguriert ist, gibt keine Probleme mit einer .htaccess.
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Schwebbs
Beiträge: 12
Registriert: Fr 19. Feb 2021, 17:28
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von Schwebbs » Mi 24. Feb 2021, 22:43

Wenn ich das Verzeichnis anpasse, passiert leider nichts. Wenn ich beim Einfügen des Templates die folgende HTML-Datei einbinde (test.html), passiert leider nichts bzw. er fügt etwas anderes ein.

<div class="mceTmpl">
<p>Some code</p>
</div>

Er fügt da das zuletzt gewählte Template ein (Z. B. Test mit content "test").

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von xmurrix » Mi 24. Feb 2021, 23:45

Hmm,

bei mir funktioniert es.

Im Backend habe ich unter "Administration > System > WYSIWYG" im Bereich "TinyMCE 4-Konfiguration für CMS_HTML" unter "Zusätzliche Parameter" folgendes angegeben:

Code: Alles auswählen

{
    "allow_script_urls": true,
    "valid_elements": "*[*]",
    "extended_valid_elements": "*[*]",
    "templates": [
        {
            "title": "Test",
            "content": "test",
            "description": "test"
        },
        {
            "title": "Test2",
            "url": "/contenido/templates/test.html",
            "description": "Test2"
        }
    ]
}
Im Contenido-Templates Ordner (/contenido/templates/) habe ich eine Datei (test.html) mit folgendem Inhalt erstellt:

Code: Alles auswählen

<div style="color:red;font-weight:bold;">Foobar</div>
In einem Artikel sehe ich im WYSIWYG-Editor unter "Einfügen > Vorlage Einfügen" im Auswahlfeld beide Vorlagen (Test u. Test2).

Wähle ich die Vorlage "Test" aus, wird im Editor der Text "test" hinzugefügt.

Wähle ich die Vorlage "Test2" aus, wird im Editor der Inhalt vom Template "/contenido/templates/test.html" hinzugefügt, also folgender Code:

Code: Alles auswählen

<div style="color:red;font-weight:bold;">Foobar</div>
Ich sehe da keine Probleme. Solche JS-Lastigen Anwendungen können bei manchen Browsern problematisch sein. Vermutlich ist es nicht ein Problem des CMS, sondern ein Problem mit TinyMCE 4 und/oder dem TinyMCE Template Plugin in Zusammenhang mit einem bestimmten Browser. Vielleicht ist der Browsercache ein Problem oder irgendwelche Browser-Plugins. Eventuell passiert irgendein JavaScript-Fehler, was zum falschen Verhalten im WYSIWYG-Editor führt. Steht da etwas in der Entwickler-Konsole des Browsers drin?
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Schwebbs
Beiträge: 12
Registriert: Fr 19. Feb 2021, 17:28
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von Schwebbs » Do 25. Feb 2021, 11:08

Vielen Dank für Deine Hilfe! Ich bin so ein Schaf... :D Ich hatte nicht den richtigen Pfad, das war das Problem! Ich hatte das Template unter contenido/external/wysiwyg usw... Super!

Hast Du evtl. auch schon Erfahrungen oder Skripte, wie ich dieses eine Template als eigenen Button hinzufüge?

Danke nochmals!

Schwebbs
Beiträge: 12
Registriert: Fr 19. Feb 2021, 17:28
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von Schwebbs » Do 4. Mär 2021, 21:09

Hi,

noch eine Frage zu den Templates. Wenn ich es richtig verstanden habe, kann man durch das hinzufügen der folgenden Zeiten den markierten Text so formatieren, wie es das dann gewählte Template definiert (über eine html-Datei).

tinymce.init({
template_selected_content_classes: "selcontent",
}

Aber wo muss ich die Zeilen einbauen? Oder kann ich das umschreiben, dass es auch über zusätzliche Parameter hinzugefügt werden kann?

Danke schon mal für die Hilfe!

xmurrix
Beiträge: 3143
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: TinyMCE Anpassungen flexible Templates

Beitrag von xmurrix » Fr 5. Mär 2021, 21:03

Hallo Schwebbs
Schwebbs hat geschrieben:
Do 4. Mär 2021, 21:09
...
tinymce.init({
template_selected_content_classes: "selcontent",
}

Aber wo muss ich die Zeilen einbauen? Oder kann ich das umschreiben, dass es auch über zusätzliche Parameter hinzugefügt werden kann?
...
Die Zeilen werden dort angegeben, wo man das unter "Zusätzliche Parameter" für TinyMCE 4 definiert, z. B.:

Code: Alles auswählen

{
    "allow_script_urls": true,
    "valid_elements": "*[*]",
    "extended_valid_elements": "*[*]",
    "template_selected_content_classes": "selcontent",
    "templates": [
        {
            "title": "Test",
            "content": "test",
            "description": "test"
        },
        {
            "title": "Test2",
            "url": "/contenido/templates/test.html",
            "description": "Test2"
        }
    ]
}
Laut der Dokumentation von TinyMCE 4, sollte das so funktionieren.

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Antworten