Jetzt habe ich tatsächlich noch vergessen das Häkchen zu setzten.
Manchmal habe ich das Gefühl ich lasse keine Gelegenheit aus um mich als Depp zu outen...
Jetzt habe ich tatsächlich noch vergessen das Häkchen zu setzten.
Manchmal habe ich das Gefühl ich lasse keine Gelegenheit aus um mich als Depp zu outen...
Den oberen JavaScript-Fehler hättest du wahrscheinlich über die Webkonsole/Fehlerkonsole/Inspektor/Entwicklerwerkzeuge deines Browsers rausbekommen können ("not defined").
Du hast natürlich wieder mal vollkommen recht. Im Quellcode inspector ist der Feher ziemlich offensichtlich.
Jetzt funktioniert alles wie es soll. Nochmal ein dickes Danke!
Ich markiere das Thema als erledigt, auch wenn die Hälfte davon technisch gesehen im falschen Unterforum ist.
Irgendwie bekomme ich keinen Script zum laufen.
Auch nicht wenn ich die $html fülle.
// Nur zusammensammeln, wenn Werte in Eigenem Feld mit id 1.
if (!empty($row->jcfields[1]->value))
{
$materialname = $row->jcfields[1]->value;
$html = '<svg viewbox="0 0 465 572">';
$html .='<image width="465" height="572" xlink:href="/images/Background.png"></image>';
$html .='<text id='.$title_id.' x="232" y="35" style="text-anchor: middle; font-size: 35px; fill: #ffffff; stroke: #aaaaaa;">'.$materialname.'</text>';
$html .='<image id='.$flat_inactive_id.' x="24" y="75" width="45" height="48" xlink:href="/images/flat_inactive.png" style.display="block"></image>';
$html .='<image id='.$flat_active_id.' x="24" y="75" width="45" height="48" xlink:href="/images/flat_active.png" style.display="none"></image>';
$html .='<image id='.$sphere_active_id.' x="70" y="75" width="47" height="48" xlink:href="/images/sphere_active.png" style.display="none"></image>';
$html .='<image id='.$sphere_inactive_id.' x="70" y="75" width="47" height="48" xlink:href="/images/sphere_inactive.png" style.display="block"></image>';
$html .='<image id='.$complex_active_id.' x="118" y="75" width="46" height="48" xlink:href="/images/complex_active.png" style.display="none"></image>';
$html .='<image id='.$complex_inactive_id.' x="118" y="75" width="46" height="48" xlink:href="/images/complex_inactive.png" style.display="block"></image>';
$html .='<image id='.$sphereimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Sphere0001.png" style.display="none"></image>';
$html .='<image id='.$compleximage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Complex0001.png" style.display="none"></image>';
$html .='<image id='.$flatimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Flat0001.png" style.display="block"></image>';
$html .='<text x="232" y="542" style="text-anchor: middle; font-size: 25px; fill: #ffffff; stroke: #aaaaaa;">Show Node-Setup</text>';
$html .='<rect id='.$nodebutton_id.' x="30" y="512" width="405" height="50" style="fill:rgba(0,0,0,0);"/>';
$html .='</svg>';
$html .= '<script type="text/javaScript">';
$html .= 'document.getElementById('.$title_id.').innerHTML="script works";';
$html .= '</script>';
}
// Code einsetzen oder einfach nur Tag entfernen
$row->text = str_replace('{materialpreview}', $html, $row->text);
Alles anzeigen
Das Auslesen der felder klappt ohne Probleme. Aber der Titeltext wird nie geändert obwohl document.getElementById('.$title_id.').innerHTML="script works"; im Script steht.
Was mache ich falsch??
Ich habe es noch etwas einfacher gehalten. Ohne Felder.
Im Beitrag steht {materialpreview};name=matname;path=matpath
Dan zerlege ich den String entsprechend und habe alle Werte die ich brauche.
Hier der Plugin Code:
<?php
defined('_JEXEC') or die;
class plgContentMaterialPreview extends JPlugin
{
public function onContentPrepare($context, &$row, &$params, $page = 0)
{
//store whole line for removal
$commandstring = $row->text;
if (strpos($row->text, '{materialpreview}') !== false)
{
//split commandstring into array
$parameter = explode(";", $commandstring);
//get name and path
foreach ($parameter as &$value) {
if (strpos($value,'name=') !== false){
$materialname=str_replace('name=','',$value);
}
if (strpos($value,'path=') !== false){
$materialpath=str_replace('path=','',$value);
}
}
//remove commandstring
$row->text = str_replace($commandstring, "", $row->text);
//setup variables for SVG
$uniqid=uniqid();
$title_id="title".$uniqid;
$flat_inactive_id="flat_inactive".$uniqid;
$flat_active_id="flat_active".$uniqid;
$sphere_inactive_id="sphere_inactive".$uniqid;
$sphere_active_id="sphere_active".$uniqid;
$complex_inactive_id="complex_inactive".$uniqid;
$complex_active_id="complex_active".$uniqid;
$flatimage_id="flatimage".$uniqid;
$sphereimage_id="sphereimage".$uniqid;
$compleximage_id="compleximage".$uniqid;
$nodebutton_id="nodebutton".$uniqid;
//create SVG
echo '<svg viewbox="0 0 465 572">';
echo '<image width="465" height="572" xlink:href="/images/Background.png"></image>';
echo '<text id='.$title_id.' x="232" y="35" style="text-anchor: middle; font-size: 35px; fill: #ffffff; stroke: #aaaaaa;">'.$materialname.'</text>';
echo '<image id='.$flat_inactive_id.' x="24" y="75" width="45" height="48" xlink:href="/images/flat_inactive.png" style.display="block"></image>';
echo '<image id='.$flat_active_id.' x="24" y="75" width="45" height="48" xlink:href="/images/flat_active.png" style.display="none"></image>';
echo '<image id='.$sphere_active_id.' x="70" y="75" width="47" height="48" xlink:href="/images/sphere_active.png" style.display="none"></image>';
echo '<image id='.$sphere_inactive_id.' x="70" y="75" width="47" height="48" xlink:href="/images/sphere_inactive.png" style.display="block"></image>';
echo '<image id='.$complex_active_id.' x="118" y="75" width="46" height="48" xlink:href="/images/complex_active.png" style.display="none"></image>';
echo '<image id='.$complex_inactive_id.' x="118" y="75" width="46" height="48" xlink:href="/images/complex_inactive.png" style.display="block"></image>';
echo '<image id='.$sphereimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/materialpreview/'.$materialpath.'/Sphere0001.png" style.display="none"></image>';
echo '<image id='.$compleximage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/materialpreview/'.$materialpath.'/Complex0001.png" style.display="none"></image>';
echo '<image id='.$flatimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/materialpreview/'.$materialpath.'/Flat0001.png" style.display="block"></image>';
echo '<text x="232" y="542" style="text-anchor: middle; font-size: 25px; fill: #ffffff; stroke: #aaaaaa;">Show Node-Setup</text>';
echo '<rect id='.$nodebutton_id.' x="30" y="512" width="405" height="50" style="fill:rgba(0,0,0,0);"/>';
echo '</svg>';
}
return true;
}
}
Alles anzeigen
Nur an einer Sache hängt es noch. Wo plaziere ich den Script?
Ich habe schon versucht den Script auch per echo Zeile für Zeile auszugeben, aber ohne Erfolg.
Also es soll wirklich nur das Modul im Beitrag stehen, ohne weiteren Text.
Und die Beiträge sollen nie richtig angezeigt werden.
Grundsätzlich bleibt der SVG Code auch gleich wenn ich die Bildernamen durch Variablen ersetzte also aus:
echo '<image id='.$sphereimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Sphere0001.png" style.display="none"></image>';
echo '<image id='.$compleximage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Complex0001.png" style.display="none"></image>';
echo '<image id='.$flatimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Flat0001.png" style.display="block"></image>';
wird dann:
echo '<image id='.$sphereimage_id.' x="25" y="131" width="415" height="370" xlink:href='.$sphereimagefile.' style.display="none"></image>';
echo '<image id='.$compleximage_id.' x="25" y="131" width="415" height="370" xlink:href='.$compleximagefile.' style.display="none"></image>';
echo '<image id='.$flatimage_id.' x="25" y="131" width="415" height="370" xlink:href='.$flatimagefile.' style.display="block"></image>';
Denke aber nicht das es an der Situation viel ändert...
Kann man das Pferd nicht anders herum aufsatteln und Loadmodule mit Parametern ausstatten?
Hab mir vorhin mal das Grundgerüst für ein Plugin angeschaut. Sieht auch nicht wesentlich komplizierter aus als ein Modul.
Kann man ein Plugin auch in einem Beitrag integrieren, oder muss es dann eine Modul / Plugin Kombination sein?
Man findet ja viele Beispiele um Felder zu benutzen, aber immer ist ein $this im Spiel.
Damit komme ich nicht klar. Ich weiß nicht wie ich auf den Artikel zugreifen kann in dem das Modul liegt.
Habe es in der default.php und in meiner mod_material_view.php versucht.
Oder muss ich die Feldabfrage wo anders hinschreiben?
Du hast das Problem bereits gelöst ohne das ich es bemerkt habe.
Du hast geschrieben: Die echo-Geschichten sowie die <script> in die ansonsten leere default.php auslagern.
Ich hatte ja das mod_custom kopiert.
Da steht in der default.php
<div class="custom<?php echo $moduleclass_sfx; ?>" <?php if ($params->get('backgroundimage')) : ?> style="background-image:url(<?php echo $params->get('backgroundimage'); ?>)"<?php endif; ?> >
<?php
echo $module->content;
?>
</div>
Ohne deinem oben genannten Satz wäre ich nie auf die Idee gekommen das mal auszukommentieren.
Und siehe da nur ein Modul pro Artikel!
Jetzt kann ich mich wieder der ursprünglichen Frage witmen.
Ich versuche erst mal so klar zu kommen, aber die Wahrscheinlichkeit ist hoch das ich später noch mal Hilfe brauche.
Danke nochmal für die Mühe!
Alles anzeigen???
Ganz kapiere ich immer noch nicht.
Du fügst ein und das selbe Modul, das garantiert nur 1x angelegt ist, jeweils nur 1x je Beitrags-Editor ein.
Und dann gehst du auf eine Seite, die nur 1 Beitrag anzeigt (keine Kategorieansicht oder so), sondern Menütyp "Einzelner Beitrag" oder eine Unterseite eines Menütyps "Kategorie Blog" oder "Kategorie Liste".
Und Caches sind deaktiviert in Joomla-Konfiguration, sowie Cache-Plugin, sowie in den Meoduleinstellungen.
???
Vielleicht habe ich es nicht richtig erklärt.
Wenn ich das Modul in einem einzelnen Beitrag anzeige funktioniert alles. Dann ist es auch egal ob man eine uniqid hat oder nicht.
Mir geht es aber darum in einer Blogansicht die Module anzuzeigen.
Also ohne das man erst in den Artikel muss. Pro Modul soll man die Vorschaubilder (die später durch Felder pro Artikel festgelegt werden können) umschalten können.
Ich finde leider die Einstellung nicht.
Unter Erweitert habe ich nur:
Module Tag
Bootstrap Size
Header Tag
Header Class
Module Style
Der Cache in den Systemeinstellungen ist deaktiviert.
Ich habe es nicht explizit erwähnt weil ich nicht wusste das es dabei Probleme geben kann.
Bin nicht gerade der PHP Experte.
Der Tipp mit uniqid ist wirklich Gold wert! Tausend Dank!
Jetzt funktioniert es auch grundsätlich, aber ich habe ein anderes Problem.
Das Modul wird (egal ob über loadmodule oder modulplant) öfter geladen.
Beim ersten Artikel nur einmal, beim zweiten zwei mal und so weiter.
Ich wollte eine Abfrage in den Script machen ob das Modul im Beitrag schon geladen ist, aber das EInzige das ich über Google gefunden habe
war:
Wenn ich versuche die Abfrage einzubauen bekomme ich aber die Fehlermeldung.#0 Using $this when not in object context
Leider habe ich keine Ahnung an welche Stelle die Abfrage muss und ob es überhaupt die richtige Funktion ist...
Meine PHP Datei sieht jetzt so aus:
<?php
/**
* @package Joomla.Site
* @subpackage mod_material_view
*
* @copyright Copyright (C) 2005 - 2018 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
$title_id="title".uniqid();
$flat_inactive_id="flat_inactive".uniqid();
$flat_active_id="flat_active".uniqid();
$sphere_inactive_id="sphere_inactive".uniqid();
$sphere_active_id="sphere_active".uniqid();
$complex_inactive_id="complex_inactive".uniqid();
$complex_active_id="complex_active".uniqid();
$flatimage_id="flatimage".uniqid();
$sphereimage_id="sphereimage".uniqid();
$compleximage_id="compleximage".uniqid();
$nodebutton_id="nodebutton".uniqid();
echo '<svg viewbox="0 0 465 572">';
echo '<image width="465" height="572" xlink:href="/images/Background.png"></image>';
echo '<text id='.$title_id.' x="232" y="35" style="text-anchor: middle; font-size: 35px; fill: #ffffff; stroke: #aaaaaa;">Materialname</text>';
echo '<image id='.$flat_inactive_id.' x="24" y="75" width="45" height="48" xlink:href="/images/flat_inactive.png" style.display="block"></image>';
echo '<image id='.$flat_active_id.' x="24" y="75" width="45" height="48" xlink:href="/images/flat_active.png" style.display="none"></image>';
echo '<image id='.$sphere_active_id.' x="70" y="75" width="47" height="48" xlink:href="/images/sphere_active.png" style.display="none"></image>';
echo '<image id='.$sphere_inactive_id.' x="70" y="75" width="47" height="48" xlink:href="/images/sphere_inactive.png" style.display="block"></image>';
echo '<image id='.$complex_active_id.' x="118" y="75" width="46" height="48" xlink:href="/images/complex_active.png" style.display="none"></image>';
echo '<image id='.$complex_inactive_id.' x="118" y="75" width="46" height="48" xlink:href="/images/complex_inactive.png" style.display="block"></image>';
echo '<image id='.$sphereimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Sphere0001.png" style.display="none"></image>';
echo '<image id='.$compleximage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Complex0001.png" style.display="none"></image>';
echo '<image id='.$flatimage_id.' x="25" y="131" width="415" height="370" xlink:href="/images/Flat0001.png" style.display="block"></image>';
echo '<text x="232" y="542" style="text-anchor: middle; font-size: 25px; fill: #ffffff; stroke: #aaaaaa;">Show Node-Setup</text>';
echo '<rect id='.$nodebutton_id.' x="30" y="512" width="405" height="50" style="fill:rgba(0,0,0,0);"/>';
echo '</svg>';
if ($params->def('prepare_content', 1))
{
JPluginHelper::importPlugin('content');
$module->content = JHtml::_('content.prepare', $module->content, '', 'mod_material_view.content');
}
$moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx'), ENT_COMPAT, 'UTF-8');
require JModuleHelper::getLayoutPath('mod_material_view', $params->get('layout', 'default'));
?>
<script>
document.getElementById('<?php echo $title_id;?>').innerHTML='<?php echo $title_id;?>';
document.getElementById('<?php echo $nodebutton_id;?>').onclick=function(){
}
document.getElementById('<?php echo $flat_inactive_id;?>').onclick=function(){
document.getElementById('<?php echo $flat_inactive_id;?>').style.display="none";
document.getElementById('<?php echo $flat_active_id;?>').style.display="block";
document.getElementById('<?php echo $sphere_inactive_id;?>').style.display="block";
document.getElementById('<?php echo $sphere_active_id;?>').style.display="none";
document.getElementById('<?php echo $complex_inactive_id;?>').style.display="block";
document.getElementById('<?php echo $complex_active_id;?>').style.display="none";
document.getElementById('<?php echo $flatimage_id;?>').style.display="block";
document.getElementById('<?php echo $sphereimage_id;?>').style.display="none";
document.getElementById('<?php echo $compleximage_id;?>').style.display="none";
}
document.getElementById('<?php echo $sphere_inactive_id;?>').onclick=function(){
document.getElementById('<?php echo $flat_inactive_id;?>').style.display="block";
document.getElementById('<?php echo $flat_active_id;?>').style.display="none";
document.getElementById('<?php echo $sphere_inactive_id;?>').style.display="none";
document.getElementById('<?php echo $sphere_active_id;?>').style.display="block";
document.getElementById('<?php echo $complex_inactive_id;?>').style.display="block";
document.getElementById('<?php echo $complex_active_id;?>').style.display="none";
document.getElementById('<?php echo $flatimage_id;?>').style.display="none";
document.getElementById('<?php echo $sphereimage_id;?>').style.display="block";
document.getElementById('<?php echo $compleximage_id;?>').style.display="none";
}
document.getElementById('<?php echo $complex_inactive_id;?>').onclick=function(){
document.getElementById('<?php echo $flat_inactive_id;?>').style.display="block";
document.getElementById('<?php echo $flat_active_id;?>').style.display="none";
document.getElementById('<?php echo $sphere_inactive_id;?>').style.display="block";
document.getElementById('<?php echo $sphere_active_id;?>').style.display="none";
document.getElementById('<?php echo $complex_inactive_id;?>').style.display="none";
document.getElementById('<?php echo $complex_active_id;?>').style.display="block";
document.getElementById('<?php echo $flatimage_id;?>').style.display="none";
document.getElementById('<?php echo $sphereimage_id;?>').style.display="none";
document.getElementById('<?php echo $compleximage_id;?>').style.display="block";
}
</script>
Alles anzeigen
Danke für eure Geduld
Jetzt habe ich zumindest herausgefunden wo das Problem liegt.
Das Modul verwendet in jeder Instanz die Selben ID's. Dadurch funktioniert logischerweise immer nur der zuletzt geladene
Script.
Ich denke am besten wäre einen Parameter als Suffix für die ID's festzulegen. Dann muss ich allerdings auch die SVG per PHP generieren.
Das hat zwar nichts mehr mit der ursprünglichen Frage zu tun, aber ich komme darauf zurück wenn ich eine Lösung für mein
Script-Problem gefunden habe.
Bis dahin, vielen Dank an alle Beteiligten. Bis bald...
Mit Modulplant geht trotzdem der Script nur in dem Modul das als erstes angezeigt wird.
Also leider nicht wurst.
Versuche jetzt noch mal per rumtüfteln eine Lösung zu finden. Wenn alles nichts brint kann ich die Seite immer noch hochladen.
@time4mambo:
Liegt derzeit lokal auf einem WAMP-Server. Link gibts also keinen.
Ich habe aber Screenshots gemacht:
Hier mit Modulplant:
Und so über den Modul-Button im Editor:
Der Tipp mit den Feldern klingt schon mal gar nicht schlecht.
Ich habe jetzt mal das mod_custom kopiert und zu mod_material_view gemacht.
Irgendwie will das aber auch nicht so richtig. Wie im Bild oben wird das Modul immer öfter eingetragen.
Deswegen geht vermutlich auch Javascript ab dem 2ten Beitrag nicht mehr.
Die PHP Datei sieht nun so aus:
<svg viewbox="0 0 465 572">
<image width="465" height="572" xlink:href="/images/Background.png"></image>
<text id="title" x="232" y="35" style="text-anchor: middle; font-size: 35px; fill: #ffffff; stroke: #aaaaaa;">Materialname</text>
<image id="flatbutton_inactive" x="24" y="75" width="45" height="48" xlink:href="/images/flat_inactive.png" style.display="none"></image>
<image id="flatbutton_active" x="24" y="75" width="45" height="48" xlink:href="/images/flat_active.png" style.display="block"></image>
<image id="spherebutton_active" x="70" y="75" width="47" height="48" xlink:href="/images/sphere_active.png" style.display="none"></image>
<image id="spherebutton_inactive" x="70" y="75" width="47" height="48" xlink:href="/images/sphere_inactive.png" style.display="block"></image>
<image id="complexbutton_active" x="118" y="75" width="46" height="48" xlink:href="/images/complex_active.png" style.display="none"></image>
<image id="complexbutton_inactive" x="118" y="75" width="46" height="48" xlink:href="/images/complex_inactive.png" style.display="block"></image>
<image id="sphereimage" x="25" y="131" width="415" height="370" xlink:href="/images/Sphere0001.png" style.display="none"></image>
<image id="compleximage" x="25" y="131" width="415" height="370" xlink:href="/images/Complex0001.png" style.display="none"></image>
<image id="flatimage" x="25" y="131" width="415" height="370" xlink:href="/images/Flat0001.png" style.display="block"></image>
<text x="232" y="542" style="text-anchor: middle; font-size: 25px; fill: #ffffff; stroke: #aaaaaa;">Show Node-Setup</text>
<rect id="nodebutton" x="30" y="512" width="405" height="50" style="fill:rgba(0,0,0,0);"/>
</svg>
<script>
document.getElementById('title').innerHTML="Procedural Wood 01"; // Soll später über ein Customfield gefüllt werden
document.getElementById('nodebutton').onclick=function(){
}
document.getElementById('flatbutton_inactive').onclick=function(){
document.getElementById('flatbutton_inactive').style.display="none";
document.getElementById('flatbutton_active').style.display="block";
document.getElementById('spherebutton_inactive').style.display="block";
document.getElementById('spherebutton_active').style.display="none";
document.getElementById('complexbutton_inactive').style.display="block";
document.getElementById('complexbutton_active').style.display="none";
document.getElementById('flatimage').style.display="block";
document.getElementById('sphereimage').style.display="none";
document.getElementById('compleximage').style.display="none";
}
document.getElementById('spherebutton_inactive').onclick=function(){
document.getElementById('flatbutton_inactive').style.display="block";
document.getElementById('flatbutton_active').style.display="none";
document.getElementById('spherebutton_inactive').style.display="none";
document.getElementById('spherebutton_active').style.display="block";
document.getElementById('complexbutton_inactive').style.display="block";
document.getElementById('complexbutton_active').style.display="none";
document.getElementById('flatimage').style.display="none";
document.getElementById('sphereimage').style.display="block";
document.getElementById('compleximage').style.display="none";
}
document.getElementById('complexbutton_inactive').onclick=function(){
document.getElementById('flatbutton_inactive').style.display="block";
document.getElementById('flatbutton_active').style.display="none";
document.getElementById('spherebutton_inactive').style.display="block";
document.getElementById('spherebutton_active').style.display="none";
document.getElementById('complexbutton_inactive').style.display="none";
document.getElementById('complexbutton_active').style.display="block";
document.getElementById('flatimage').style.display="none";
document.getElementById('sphereimage').style.display="none";
document.getElementById('compleximage').style.display="block";
}
</script>
<?php
/**
* @package Joomla.Site
* @subpackage mod_material_view
*
* @copyright Copyright (C) 2005 - 2018 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
if ($params->def('prepare_content', 1))
{
JPluginHelper::importPlugin('content');
$module->content = JHtml::_('content.prepare', $module->content, '', 'mod_material_view.content');
}
$moduleclass_sfx = htmlspecialchars($params->get('moduleclass_sfx'), ENT_COMPAT, 'UTF-8');
require JModuleHelper::getLayoutPath('mod_material_view', $params->get('layout', 'default'));
?>
Alles anzeigen
Den PHP Teil habe ich, bis auf den Modulnamen, so belassen wie er war. Irgendwelche Ideen wie ich das Modul pro Artikel nur ein mal laden kann??
Wenn ich den Modulbutton im Editor benutze, und mehrere Artikel mit dem selben Modul habe wird der Modultitle so oft angezeigt wie viele Artikel es mit dem Modul gibt.
Mit Moduleplant passiert das nicht.
Allerdings funktioniert Javascript nur im ersten geladenen Modul. Alle anderen Instanzen verweigern ihren Dienst.
Ich habe seit bei der Versionsnummer noch eine 1 vorne Stand nichts mehr mit Joomla gemacht.
Bin gerade erst seit ein paar Tagen bei der Version 3.8.8 dabei. Wusste nicht das es mittlerweile so einfach ist ein Modul im Arikel zu haben.
Mit Custom HTML meine ich mod_custom.
Hallo,
für mein derzeitiges Projekt benötige ich ein Modul zur Bildervorschau.
Dazu habe ich in einem CustomHTML Modul eine SVG erstellt in der drei Buttons und drei Bilder eingebettet sind.
Per Javascript schalte ich die Sichtbarkeit der Bilder um, je nachdem welcher Button gedrückt wurde.
Funktioniert soweit auch ganz gut.
Das Ganze habe ich dann mit Moduleplant (https://extensions.joomla.org/extension/module-plant/) in einem Artikel plaziert.
Jetzt müsste ich über den Artikel noch einen String für den Namen, und einen String für den Pfad der Bilder an das Modul übergeben.
Es sollen viele Artikel werden die jeweils die Bilder aus einem anderen Pfad holen.
Jetzt zu meiner Frage:
Lässt sich das über die CustomHTML / Modulplant kombination realisieren, oder komme ich um eine eigene Modulentwicklung nicht herum.
Vielen Dank schon mal im Vorraus.
Mirko