Inserting of different position possibilities of the banners - #189
in-session wants to merge 14 commits into
Conversation
|
Hi Chris, thanks a lot for your pull request. I would have suggested to use categories for your requirement. I used this in several projects, where the banners are placed in different sections of a website. Just assign a banner one or multiple categories, then add the plugin to the selected content area and select the required category there. What of course is missing is the possibility to add different layouts to banners (e.g. like in ext:news or ext:sf_event_mgt) I rather think it will suit more, if we just add a "templateLayout" select field to the Banner plugin, which then can be used in the Fluid templates. Then there is no need for an additional selection criteria for the banners (like "section" in your PR). What do you think of this solution? Best regards |
|
Hi Torben, ich schreibe dir jetzt einfach mal auf deutsch zurück :-) Also im Prinzip ist das Feld "sectionLayout" ja ein Template Layout Switch wie bei News. Ich habe es jetzt so programmiert das man bei den einzelnen Banner sagen kann das es zum Beispiel für die Sitebar ist und im Plugin dann mittels Dropdownfeld nur die Banner anzeigen welche für die Sitebar sind. Ich hatte noch eine andere Idee aber da bin ich jetzt leider noch nicht weitergekommen, hier war der Gedanke zusagen wenn z.B. kein Sidebarbanner zur Verfügung steht lade einen externen Anbieter für die Sidebar. Aber da komme ich nicht weiter da der Javascript mir da noch ein Strich durch die Rechnung macht, eine vorherige Abfrage zumachen, da die Banner ja erst nach dem Script rein geladen werden. Grüße Christoph Noch ein kleiner Nachtrag:
|
|
Hallo Christoph, ich habe nun etwas über der Thema nachgedacht, finde jedoch nach wie vor die Lösung nur ein Template Switch im Plugin festzulegen am besten. In ext:news legt man ja auch nicht pro News-Item fest, welches Layout dieses haben soll, sondern steuert dieses über das Plugin zusammen mit der Datenselektion. Ähnlich würde ich das auch für das Banner Management umsetzen. Es wird im Plugin ein layout switch definiert, welchen man per PageTS mit möglichen Werten ergänzen kann und in den Templates kann man dann per Da man im Plugin bereits Banner nach Kategorie und nach Sys-Folder selektieren kann, finde ich eine dritte Selektions-Möglichkeit eher verwirrend als hilfreich. Das genannte (also Template Layout im Plugin) kann ich gerne so umsetzen/integrieren. Layout direkt in den Banner Datensätzen würde ich aber leider nicht integrieren. Passt das für dich? Beste Grüße |
|
Hallo Torben, aber sicher, es war nur ein Grundgedanke von mir nicht über unterschiedliche Sysfolder zugehen. Meinst du es gib eine Möglichkeit so ein Fallback einzufügen? Also wenn BannerRepository = 0 dann mache das. Wäre ja im Prinzip ähnlich wie bei den News, wenn keine News vorhanden kommt die Meldung "Keine News". Somit könnte man einen externen Anbieter migrieren falls für das gesetzte templateLayout aktuell kein Banner beinhaltet. Grüße Christoph |
|
Hey Christoph, sorry, das Ticket/der PR hier ist leider vollkommen untergegangen. Implementiert werden müsste dann ja lediglich folgendes
An den Templates würde ich nichts verändern, da die Nutzung der TemplateLayouts ja nur optional ist. Kann ich gerne einbauen oder du erstellst einen PR. Viele Grüße |
Hi thanks for the EXT.
I still missed the possibility to assign the banners to different areas, e.g. sidebar, footer, header etc.. With this it should now be possible to control which area it is and only display these banners.
Now the frontend output can also be adjusted by fluid, let's assume it's the sidebar with skyscraper banner. Then you could now make a template switch here and also define the image sizes in the fluid and make other adjustments.
Unfortunately, my knowledge is not sufficient for a hook, so the settings still have to be made in the TCA.
Better would be an itemsProcFunc here, maybe you can think of something else here?
TCA Settings Example:
#Add section layouts to content flexform settings
TCEFORM.tt_content.pi_flexform.sfbanners_pi1.sDEF.settings.displaySection.addItems {
30 = Sidebar (Skyscraper Banner)
40 = Footer (Large Leaderboard)
}
#Add section layouts to plugin settings (must be the same as the content flexform settings)
TCEFORM.tx_sfbanners_domain_model_banner.section.addItems {
30 = Sidebar (Skyscraper Banner)
40 = Footer (Large Leaderboard)
}
Cheers Chris