Ich verwende TYPO3 8.7.8 und muss einen Javascript-Link bereitstellen, um Google Analytics zu deaktivieren.

Der Link sollte folgendermaßen aussehen:

<a href="javascript:gaOptout()" onclick="alert('Google Analytics is now deactivated');">Deactivate Google Analytics</a>

Leider wird der Link nicht im Frontend angezeigt, dh es handelt sich nur um einen normalen Text in einem <p> -Tag. Im Backend ist jedoch alles in Ordnung und es wird dort als Link angezeigt ...

Hier ist meine Yaml-Konfiguration für den CKeditor:

# Load default processing options
imports:
    - { resource: "EXT:rte_ckeditor/Configuration/RTE/Processing.yaml" }
    - { resource: "EXT:rte_ckeditor/Configuration/RTE/Editor/Base.yaml" }
    - { resource: "EXT:rte_ckeditor/Configuration/RTE/Editor/Plugins.yaml" }

# Configuration for the editor
# For complete documentation see http://docs.ckeditor.com/#!/api/CKEDITOR.config
editor:
  config:
    allowedContent: true
    linkJavaScriptLinksAllowed: true
    contentsCss: ["EXT:rte_ckeditor/Resources/Public/Css/contents.css", "EXT:my_extension/Resources/Public/Stylesheets/styles.css", "EXT:my_extension/Resources/Public/Stylesheets/fonts.css"]
    resize_enabled: true

    stylesSet:
    # block level styles
    - { name: "Button Default", element: "a", attributes: { 'class': 'btn btn-default', 'role': 'button', 'aria-pressed': 'true'}}

    format_tags: "p;h1;h2;h3;h4;h5;pre"

    toolbarGroups:
      - { name: styles, groups: [ styles, format ] }
      - { name: basicstyles, groups: [ basicstyles ] }
      - { name: paragraph, groups: [ list, indent, blocks, align ] }
      - { name: links, groups: [ links ] }
      - { name: clipboard, groups: [ clipboard, cleanup, undo ] }
      - { name: editing, groups: [ spellchecker ] }
      - { name: insert, groups: [ insert ] }
      - { name: tools, groups: [ table, specialchar ] }
      - { name: document, groups: [ mode ] }

    justifyClasses:
      - text-left
      - text-center
      - text-right
      - text-justify

    extraPlugins:
      - justify

    removePlugins:
      - image

    removeButtons:
      - Anchor
      - Underline
      - Strike

buttons.:
  link.:
    queryParametersSelector.:
      enabled: true

Was vermisse ich hier?

2
Marlon 18 Apr. 2018 im 13:36

4 Antworten

Beste Antwort

Dies ist kein Problem von ckeditor, wird jedoch von TYPO3 selbst verboten, um Sicherheitsprobleme zu vermeiden - XSS.

Eine Lösung, die ich verwende, ist ungefähr so: TYPO3 erzwingt, dass interne Links domänenübergreifende Seiten verwenden, um https in Nachrichten zu verwenden, sodass ein Editor, z Links zu http://ga-output.tld und dies wird durch den JS-Link ersetzt.

1
Georg Ringer 18 Apr. 2018 im 16:40

Wir haben gerade das gleiche Problem - wir haben einen kleinen Linkhandler für Tippfehler3 geschrieben, der nur das Javascript zulässt: gaOptOut (); Verknüpfung.

Erhalten Sie es hier: https://www.infoworxx.de/download/ifx_linkhandler_googleAnalytics.zip

Sebastian

2
slemke 2 Juni 2018 im 22:51

Sie können Ihrem Link in ckeditor über die Quellschaltfläche (<>) eine Klasse hinzufügen.

<a class="gaOptout" href="#">your linked text</a>

Und jetzt schreiben Sie Ihre Funktion einfach in ein Onclick-Ereignis wie dieses um:

$('.gaOptout').on('click', function(){
your function
});
1
johannes 27 März 2019 im 14:49

Dies scheint in T3 9.5 immer noch ein Problem zu sein, insbesondere bei diesem Google OptOut-Skript. Einfache Problemumgehung ohne Codierung: Wir schneiden den Absatz mit dem Javascript aus und fügen ihn in ein getrenntes HTML-Element ein. Schneiden Sie es einfach aus der CKE-Quellansicht aus und fügen Sie es in ein neues Element ein. Um den Artikel in der richtigen Reihenfolge zu halten, schneiden Sie einfach den Rest des Textes aus und fügen Sie ihn in ein neues Textelement ein.

1
Tim Zimmermann 3 Mai 2019 im 18:32