• Wenn du hier im Forum ein neues Thema erstellst, sind schon Punkte aufgeführt die du ausfüllen musst. Das dient im Allgemeinen dazu die notwendigen Informationen direkt mit der Frage bereitzustellen.
    Da in letzter Zeit immer wieder gerne das Formular gelöscht wurde und erst nach 3 Seiten Nachfragen die benötigten Infos für eine Hilfe kommen, werde ich nun jede Fragestellung die nicht einmal annähernd das Formular benutzt, sofort in den Sondermüll schicken.
    Füllt einfach die abgefragte Daten aus und alle können euch viel schneller helfen.

Widget Framework - Positionierung

Heffalump

Bekanntes Mitglied
Lizenzinhaber
Registriert
6. Apr. 2014
Beiträge
945
Punkte
158
XF Version
  1. 2.1.2
PHP-Version
7.3
Provider/Hoster
FC-Hosting
Auf der Forumhome-Seite habe ich einige Widgets ausgegeben, die Informationen zu Neuigkeiten aus meinem CMS-Bereich enthalten. (Screenshot)

Dafür verwende ich die Hook-Position: hook:forum_list_nodes

Jetzt möchte ich die Widgets gern an der gleichen Position, aber nur auf der "Neue-Beiträge-Seite" (Template:
find_new_posts) anzeigen lassen. Dafür gibt es aber zum einen keinen Hook, und zum anderen kann ich es auch nicht über das Template ansprechen, weil dann alles in der rechten Sitebar angezeigt wird.

Gibt es dafür eine Lösung oder muss ich mir was anderes überlegen?

Dankeschön
 

Anhänge

  • widget_news.jpg
    widget_news.jpg
    92,3 KB · Aufrufe: 16
Und wenn du dir mit TMS deinen eigenen Hook in das Template find_new_post setzt und diesen dann aufrufst?
 
Den Gedanken hatte ich auch schon und werde das mal testen.
Momentan habe ich gerade den Code direkt ins Template geschrieben. Dann sieht es so aus wie es sollte.

Die Hook-Lösung ist aber sicher die bessere Lösung und ich muss nicht für jedes Widget eine TM erstellen.

Ähm...
Wie integriert man so einen Hook? Wie sieht der aus?
 

Anhänge

  • widget_news2.jpg
    widget_news2.jpg
    129,9 KB · Aufrufe: 8
Jetzt habe ich ein TMS Problem.
Das Template find_new_posts endet mit:

Code:
<xen:pagenav link="find-new/posts" linkdata="{$search}" page="{$page}" perpage="{$perPage}" total="{$totalThreads}" />
</div>

Das möchte ich ersetzen mit:

Code:
<xen:pagenav link="find-new/posts" linkdata="{$search}" page="{$page}" perpage="{$perPage}" total="{$totalThreads}" />
</div>
<xen:hook name="news_find_new_posts">
        </xen:hook>

Leider kommt diese Passage zweimal im Template vor und mein (hoffentlich richtiger) Hook wird zweimal eingebunden.

Gibt es die Möglichkeit dem TMS einfach mitzuteilen, er solle es ans Ende des Templates anhängen?
 
Ich habe es jetzt gelöst indem ich den Hook direkt ins Template integriert habe, also ohne TMS.
Ist das jetzt beim nächsten update weg oder nicht?

Ich habe diesen Guide gefunden:

Summary
  • Use Template Modifications if you're an add-on developer. For general styling and day-to-day template changes, you do not need to use Template Modifications.
  • For general styling and day-to-day changes, always use direct template edits.
  • If you make a mistake, use the template history to compare versions.
  • Don't call it TMC. Call it "Template Modifications" or TMs or "the TM system". Every time you refer to it as TMC, Brogan kills a kitten.

Demnach sollte man für alltägliche Templateänderungen das TMS sowieso nicht verwenden.
Ist das noch Up to date?

Auf jeden Fall danke für den Tipp mit dem Hook. Ist ja ne ziemlich einfache Sache... wenn man es erst einmal kapiert hat. :cool:
 
Freut mich wenn es passt. Inwieweit jemand das TMS nutzt ist wohl auch eher eine Glaubensfrage .. ;)
Ich persönlich mache Änderungen direkt im Template, nehme dafür aber nicht direkt den Style, sondern erstelle denselben Style nochmal als "Child". Somit kann man den Parentstyle updaten und verliert nicht seine eigenen Änderungen.
 
Gibt es die Möglichkeit dem TMS einfach mitzuteilen, er solle es ans Ende des Templates anhängen?
Ja:

In Suche das komplette Template oder zumindest größere Teile davon vom Ende des Template und in Ersetze dann zB.:
Code:
$0
... dein Code am Ende des Templates

Das $0 ist ein Platzhalter für den gesamten gesuchten Code...
 
Zuletzt bearbeitet:
Danke euch.
Werde das alles mal testen. Bin ja noch in der XF-Findungsphase. :cool:
 
Nächstes Problem:

Ich habe mir das Fussball-Tippspiel installiert. Da ich eine permanente rechte Sidebar habe und das Tippspiel eine zusätzliche linke Sidebar besitzt, wird es bei meinem fixen Style zu eng in der Mitte.
Jetzt möchte ich die rechte Sidebar (Widget Framework) nur für das Tippspiel abschalten. In den FAQ habe ich keine Möglichkeit gefunden einzelne Addons auszuschließen.
Die Position der Sidebar ist "all".
Gibt es dafür eine Lösung - also wie ich eine Sidebar überall anzeigen kann, außer in einem Addon (Addon-ID?)

sidebar_xfsoccer.jpg
 
Aus der deutschen Übersetzung...........
Oder du kannst eine kommagetrennte Liste mit Templates, auf denen das Widget angezeigt werden soll, eingeben. Beliebte Templates: forum_list (Seitenindex), forum_view (Forumansicht), thread_view Themenansicht).
Machst du anstatt Position "all" eine Liste mit deinen Seiten wo es angezeigt werden soll.
 
Ok, aber wenn sie eigentlich überall angezeigt werden soll und nur in einem Addon nicht, wäre ja eine ausschließende Option sinniger, dachte ich so.
Dann versuche ich mal rauszufinden welche Templates "alle bis auf..." sind. :cool:

Noch cooler wäre es, wenn man die Tippspiel-Sidebar in ein Widget knallen könnte. Aber damit werde ich AA im Moment nicht nerven - er hat viel gearbeitet und das sehr, sehr geil gemacht. :)
 
Es gibt für einen Coder bestimmt ne Möglichkeit eine Seite für ein Widget auszuschließen, ich bin keiner.
 
Weil du nur laut knatternd durch die gegen fährst und alte Leute (wie mich) erschreckst. :bounce:
 
Ja, hätte ich Zeit würde ich das tun.
Wenn dann mach ich Krach auf der Renne, da gibt´s keine alten Leute, außer mich :oops:
 
Zurück
Oben