Zum Inhalt springen

Sammelthema für Template if/elseif/else Logik


Empfohlene Beiträge

Hallo zusammen,

da mich mal wieder das Thema eingeholt hat und ich wußte das ich bei IPS die Fragen schon einmal gestellt hatte, ist es mein Ansinnen solches Wissen auch vielleicht gebündelt zu Sammeln.

In welcher Form das passiert überlasse ich den Admins hier.. :zany-face:

---------------------------------------------------------------------------

Mein erstes Thema hierzu war die folgende Frage, die sich mir stellte: Ich will etwas auf einer bestimmten Seite anzeigen lassen und sonst nirgends, wie mache ich die richtige Abfrage dazu?

Dazu muss ich erst einmal schauen wo befinde ich mich überhaupt in meinem IPS. Hier kann man schön in den Quelltext sehen und sich auf den BODY-Tag beziehen. Dort stehen einige Informationen in welchem Template ich mich befinde.

2130479425_Screenshot2020-07-2018_10_57.png.fc2cf41ba5536bb7227dff5190ac609f.png

  • data-pageapp="forums" => Ich befinde mich in der App "Forum"
  • data-pagelocation="front" => Im Frontend der App "Forum"
  • data-pagemoduls="forums" => Im Modul Foren der App "Forum"
  • data-pagecontroller="index" => Auf der Indexseite der Foren in der App "Forum", hier könnte auch stehen "forums" für Kategorien/Foren oder "topic" für die einzelnen Themen.

Dies kann man mit allen anderen Apps von IPS genauso weiterführen. Nun habe ich meine Informationen wo ich bin und kann meine IF/ELSE Abfrage starten.

Bei mir ging es z.B. darum ein Werbebanner im Template advertisementImage für die Anzeige innerhalb der Themen mit einer zusätzlichen CSS-Klasse zu versehen. Ich weiß nun wo ich bin und was ich dort eintragen will. Somit kann ich die Abfrage generieren.

{{if request.module === 'forums' && request.controller === 'topic'}}ipsBox ipsComment ipsAds_highlighted{{endif}}

Ich frage hier einfach ab ob ich im Modul Foren bin und im Controller Topic, also der Themen. Wenn Ja, dann füge die CSS-Klassen hinzu.

Das Ergebnis sieht dann wie folgt aus. Natürlich habe ich dazu vorher Ads angelegt und die CSS-Klassen in de custom.css angepasst.

Normaler Style...

956833233_Screenshot2020-07-2018_24_55.thumb.png.214cee41840335703b6eaebbe2923ec6.png

Innerhalb der Themen...

415575357_Screenshot2020-07-2018_24_39.thumb.png.22e87b916f6a88b48a6131f3f582854d.png

Bearbeitet von McAtze
  • Like 3
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb McAtze:

... auch vielleicht gebündelt zu Sammeln.

Du meinst wie die Conditionals Threads bei XF? Sind ja über die offizielle Dokumentation verstreut eigentlich schon drin, nur nicht als Liste untereinander.

Die könnte man hier im Thread verlinken bzw. ergänzen, oder auch eine extra Seite in unserer Doku einrichten, wo die dann alle auf einen Blick sind. 

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dann fange ich morgen früh, wenn ich wieder am PC bin mal an.

[update] In unserer Übersetzung haben wir zu dem Thema noch nichts drin und Verlinkungen ins englische Forum finde ich jetzt nicht so gut.

Ab morgen habe ich aber erstmal 2 days off, dann habe ich mehr Zeit und werde eine Seite anlegen und mal sehen was sich bei mir in Boostnote so alles angesammelt hat.

Diesen Thread werde ich im Supportbereich oben anpinnen. Ihr könnt ja schonmal eure Fragen hier reinschreiben...

  • Like 1
  • Cool 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • V0RT3X hat Thema angepinnt

So wäre jetzt mein Ansatz das Thema umzusetzen...

praxisbeispiele.png

Also einfach den Miniartikel aus der Originaldokumentation mit "Praxisbeispielen" zu erweitern. Was zusammengehört kommt dann in einen eigenen Code-Block. Benutzer, Benutzergruppen, Foren, Anwendungen usw., ist so glaube ich am übersichtlichsten.

  • Like 2
  • Love 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

 Teilen

  • Wer ist Online   0 Benutzer

    • Keine registrierten Benutzer online.
×
×
  • Neu erstellen...

Wichtige Information

Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.