Modul in Artikel

  • Hallo in die Runde,


    gibt es für Joomla 4 eine Erweiterung wo es möglich ist, dass bei der Artikelansicht immer an gleicher Stelle (z.B. nach dem ersten Absatz) eine Modulposition für Banner o.ä. eingefügt ist? Für WP gibt es so etwas, leider habe ich es für Joomla nicht gefunden. Das manuelle Einfügen von Modulpositionen in die Artikel kenne ich, wäre aber bei der Vielzahl zu aufwendig. Das sollte also irgendwie automatisch gehen. Hat da jemand eine Idee?

  • Unterscheidliche Module oder immer das selbe?


    So oder so bräuchte man bisschen (oder mehr) PHP-Kenntnisse.


    Man kann das in einem Template-Override für den Artikel-View einbauen. Bspw. so, dass nach dem Introtext (das Readmore-Intro) ein paar Zeilen Code das Modul rendern. Da gäbe es mehrere Möglichkeiten, je nachdem, ob unterschiedliche Modulinhalte oder immer das selbe oder ... .


    Problem dabei ist, dass man in den article-Ausgaben anstatt $article->text sowohl $article->introtext als auch $article->fulltext getrennt ausgeben muss. "Problem" deshalb, weil alle drei für den Artikel-View unterschiedlich aufbereitet sein könnten. Folgt also ggf. ein Rattenschwanz...

  • Vorrangig geht es um das Bannermodul. Also wenn es einfacher ist, würde das reichen. Ich hatte gehofft, dass es eine einfache Lösung wie in WP gibt, die ich nur nicht gefunden haben.


    Das würde dann aber sehr wahrscheinlich auch alle Artikel betreffen.

    Ja, idealerweise könnte man dann noch die Kategorien auswählen.

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von Der Wolf mit diesem Beitrag zusammengefügt.

  • Vielleicht hilft das: https://wicked-software.de/mod…nsfeld-an-und-ausschalten + "Einfach" per Override einfügen (z.B. indem du den Text bis zum ersten </p> ausgibst, dann den Code hinzufügt und dann Rest des Textes)


    Edith sagt: natürlich kann das Custom Feld auch in die Kategorie gepackt werden um ein/auszuschalten oder du überprüfst einfach ganz normal auf die Kategorie-ID.

  • wo man z.B. Banner nach x-Absätzen automatisch erscheinen lassen kann.

    Das tönt sehr unpraktisch. Je nachdem wie der Redakteur seine Texte formatiert erscheint das Banner dann irgendwo im Text.


    Dann würde ich mir lieber mit custom fields und template overrides ein vernünftiges Schema ausdenken und implementieren, sodass die Artikel einigermassen gleich daher kommen.

    JoomGallery::friends ist aktuell noch auf der Suche nach Helfern für die JoomGallery 4 Entwicklung!

    Gesucht sind Leute für die PHP-Entwicklung, zum Testen, Übersetzen und Dokumentieren.

    Bei Interesse melde dich per PM oder Mail bei mir (Elfangor93).

  • Vielleicht hilft das: https://wicked-software.de/mod…nsfeld-an-und-ausschalten + "Einfach" per Override einfügen (z.B. indem du den Text bis zum ersten </p> ausgibst, dann den Code hinzufügt und dann Rest des Textes)


    Edith sagt: natürlich kann das Custom Feld auch in die Kategorie gepackt werden um ein/auszuschalten oder du überprüfst einfach ganz normal auf die Kategorie-ID.

    Das sieht auf dem ersten Blick schon sehr hilfreich aus. Das werde ich mir noch genauer anschauen und Testen. Danke!
    Gibt es unterschiede im Override, da es in Joomla 4 eingesetzt werden soll?


    Das tönt sehr unpraktisch. Je nachdem wie der Redakteur seine Texte formatiert erscheint das Banner dann irgendwo im Text.


    Dann würde ich mir lieber mit custom fields und template overrides ein vernünftiges Schema ausdenken und implementieren, sodass die Artikel einigermassen gleich daher kommen.

    Gleich würden sie eigentlich so schon aussehen, wenn man z.B. es so einstellt, dass die Position immer nach dem ersten Absatz kommt.
    Und wer ohne Absätze schreibt, bekommt ohnehin auf die Finger evilgrin

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von Der Wolf mit diesem Beitrag zusammengefügt.

  • Zitat

    Gibt es unterschiede im Override, da es in Joomla 4 eingesetzt werden soll?

    Eigentlich nicht, das ist ja recht neutral gehalten.


    Zitat

    Gleich würden sie eigentlich so schon aussehen, wenn man z.B. es so einstellt, dass die Position immer nach dem ersten Absatz kommt.

    Und wer ohne Absätze schreibt, bekommt ohnehin auf die Finger


    Der erste Absatz kann ja alles sein, zwischen einer Zeile und einem halben Meter Text, oder?









  • Ja, der erste Absatz kann unterschiedlich sein. Wobei der "halbe Meter Text" eigentlich auch nicht sein soll. Aber nach dem ersten Absatz kommt immer der "Read More" Marker, d.h. das Modul wäre erst zu sehen wenn der Artikel aufgerufen wird.

  • Hi Der Wolf,


    das geht auch mit einem kleinen Content-Plugin! Ich habe so etwas Ähnliches früher schon mal gemacht (da sollte der Banner stets in der Mitte des Artikels eingeblendet werden).


    Erstelle ein Content-Plugin und manipuliere den Artikeltext über das onContentPrepare Event: https://docs.joomla.org/Plugin…/Content#onContentPrepare

  • Hi Der Wolf,


    das geht auch mit einem kleinen Content-Plugin! Ich habe so etwas Ähnliches früher schon mal gemacht (da sollte der Banner stets in der Mitte des Artikels eingeblendet werden).


    Erstelle ein Content-Plugin und manipuliere den Artikeltext über das onContentPrepare Event: https://docs.joomla.org/Plugin…/Content#onContentPrepare

    Danke. Sieht auf den ersten Blick (für mich) kompliziert aus, aber ich werde es mir mal genauer ansehen.,

  • Vielleicht hilft das: https://wicked-software.de/mod…nsfeld-an-und-ausschalten + "Einfach" per Override einfügen (z.B. indem du den Text bis zum ersten </p> ausgibst, dann den Code hinzufügt und dann Rest des Textes)


    Edith sagt: natürlich kann das Custom Feld auch in die Kategorie gepackt werden um ein/auszuschalten oder du überprüfst einfach ganz normal auf die Kategorie-ID.

    Ich habe das gerade mal ausprobiert. Leider funktioniert es nicht (bei mir). Der Artikel wird dann in der Vollansicht nicht mehr angezeigt. Kann es sein, dass Joomla 4 dort anders reagiert? Ich nutze das Android Template. Da die Seite noch nicht online ist, kann ich leider auch kein Link zur Verfügung stellen.