Bewertung: 3 / 5

Stern aktivStern aktivStern aktivStern inaktivStern inaktiv
 

Probleme des Gantry 5 mit den Joomla-Content-Tools

Obwohl das Gantry 5 ein ganz hervorragendes Template-Framework ist, hat es doch (noch) einige kleine Nachteile, die einen z.T. konzeptionelle Schwachstelle offenbaren - nämlich, dass es eine Template mit eigener Engine ist, die viele Dinge an Joomla vorbei erledigt. Eines der größten Probleme bereitet, dass Inhalte nicht mehr in der Datenbank abgelegt werden und auch nicht mehr durch die Joomla-Strukturen verwaltet werden, sondern leider vom Template in Dateien abgelegt werden. Zwei große Nachteil die sich hierbei für mich bereits offenbarten:

  • Die Joomla-Suchfunktionen/Search-Plugins greifen für diese Inhalte nicht. Wer also viele Inhalt darüber verwaltet, sollte sich dessen bewußt sein.
  • Fast alle bereitgestellten Particle unterstützen nicht die Joomla-Content-Plugins. Das macht sich z.B. bemerkbar wenn Sie Inhalte mit E-Mail-Adressen über Particles veröffentlichen. Diese E-Mail-Adressen werden nicht durch das E-Mail-Cloaking von Joomla erfasst, also nicht vor Spammer-Spidern geschützt. Leider macht dies nicht einmal das bekannte Contact-Particle - was wirklich eine unhaltbarer Zustand ist.
  • Auch gibt es Problem mit der Übersetzung von Particle-Inhalten z.B. über die Erweiterung FaLang. FaLang ist nicht darauf ausgelegt sich die zu übersetzenden Inhalte aus den Particle-Dateien zu holen.

Den o.g. Sachverhalten sollte man sich bewusst sein, wenn man Gantry-5-Templates einsetzt. Zumindest zu dem Problem mit dem fehlenden E-Mail-Cloaking im speziellen und der Anwendung von Content-Plugins auf Particle-Inhalte im allgemeinen, möchte ich hier eine praktikable Lösung anbieten, die micht viel Schweiß bis zur erfolgreichen Erkenntnis gegkostet hat.

 

Eine Lösung für das fehlende E-Mail-Cloaking in Gantry-5-Templates

 

{% extends '@nucleus/partials/particle.html.twig' %}

{% block particle %}

	{% if particle.title %}<h2 class="g-title">{{ particle.title|raw }}</h2>{% endif %}

	<div class="g-contact {{ particle.class|e }}">
		{% for contactitem in particle.contactitems %}
		    <div class="g-contact-item">
		        {% if contactitem.icon %}<div class="g-contact-icon"><span class="{{ contactitem.icon }}"></span></div>{% endif %}
		        {% if contactitem.label %}<div class="g-contact-label">{{ contactitem.label|raw }}</div>{% endif %}
		        {% if contactitem.label == 'E-Mail' %}
				{% if contactitem.text %}
					<div class="g-contact-text">
					{# joomla.call('JUri::root') - funktioniert so #}
					{{ joomla.html('email.cloak', contactitem.text)|raw }}{# nur Cloaking-Plugin anwenden #}
					{# gantry.platform.filter(contactitem.text)|raw #}{# Alle Joomla-Content-Plugins anwenden #}
					</div>{% endif %}
				{% else %}
					{% if contactitem.text %}<div class="g-contact-text">{{ contactitem.text|raw }}</div>{% endif %}
				{% endif %}
		    </div>
		{% endfor %}      
	</div>

{% endblock %}

 



Kommentare (2)

This comment was minimized by the moderator on the site

lleider fehlt wie dieser Code angewendet wird. eine Beschreibung dazu waere Sinnvoll. Wuerde den Code gerne uebernehmen.

Danke

This comment was minimized by the moderator on the site

Hallo Jörg,
Also wichtig, die Anleitung bezieht sich zunächst einmal nur auf das Gantry 5 Template. Ich setze voraus, dass Du das einsetzt und Dich folglich auch mit den Particeln beschäftigt hast sowie mit den TWIG-Scripten. Oben aufgeführtes Script-Beispiel ist ein Override für das Contact-Particle. Japp, dass steht leider so nicht in der Anleitung. Dieses Override ist zunächst einmal eine Kopie des Original-Scriptes und enthälte im Wesentlichen eine hinzugefügte Sequenz, die dafür sorgt, dass auf die Particle-Inhalte (hier konkret die Contact-Items) durch die Joomla-Content-Plugins, eingeschränkt auf das E-Mail-Cloak-Plugin, angewendet wird. Das bewirkt genau diese Zeile: {{ joomla.html('email.cloak', contactitem.text)|raw }}{# nur Cloaking-Plugin anwenden #}. Die Zeilen darüber und daraunter sind alternative Scriptzeilen wie man in Particeln mit Joomla-Methoden arbeiten kann.

Bisher wurden hier noch keine Kommentare veröffentlicht

Einen Kommentar verfassen

  1. Kommentar als Gast veröffentlichen. Registriere Dich oder melde Dich zu Deinem Benutzerkonto an.
0 Zeichen
Anhänge (0 / 3)
Deinen Standort teilen
Gib den Text aus dem Bild ein. Nicht zu erkennen?