Zum Inhalt springen

Autorenbereich in Template integrieren

Erstellt am 6. Mai 2008 · 8 Antworten · letzte Antwort am 6. Mai 2008

Tags: Templates & Layouts, Seiten & Seitenbaum, Frage

Aldarin ·

Hallo,

ich hätte einmal eine Frage...

Ich werde demnächst meine Typo3 Seite mit mehreren Redakteuren versehen und möchte dafür dann in gewissen Gebieten (z.B. Tutorials, Testberichte, etc.) ein kleines Div in den oberen Bereich hinterlegen um dort dann den Autorennamen auszugeben und direkt daneben (falls vorhanden) ein dazugehöriges Bild anzeigen.

Natürlich soll nicht jeder Autor dafür erst ein Contentelement anlegen, sondern es soll automatisch angezeigt werden.

Gibt es irgendwie die Möglichkeit das ich in das UserTS einen Wert hineinlegen kann (z.b. Bild = /fileadmin/autoren/portrait1.jpg)und dann auf dem Webseiten Template entscheiden lassen kann ob dieser Wert gesetzt ist oder nicht und die Grafik des jeweiligen Autors auslese. Dafür müsste ich dann ja wieder auf die Seiteneigenschaften zugreifen und den Autor herauslesen.

Gibts dafür ne Extension oder lässt es sich (was mir lieber wäre) mit TypoScript regeln?

Hat irgendjemand eine Idee?

Beste Grüße,
Daniel

d.​walter ·

Ich kann dir nicht sagen wie das genau geht, aber ich könnte mir vorstellen, dass du vielleicht folgendes machen kannst:

Im Template einen Marker anlegen und den dann über entsprechende Conditions füllen.

Dazu auf das Feld Autor in den Seiteneigenschaften zugreifen.

Über die Conditions kannst du ja dann für jeden Autor auch gleich das passende Bild mit ausgeben lassen.

Daniel

Aldarin ·

Hey Daniel,

erst einmal besten Dank für die Ideen. Was mir jetzt nur Gedanken macht. Ist die Menge an Conditions. Es kann sein, dass es so um die 20 Redakteure werden. Wenn ich dann jeden Redakteur dahin packe, könnte das ein wenig überfüllt werden. Außerdem weiß ich nicht wie das dann mit dem Cache ist, ob der dadurch nicht evtl. unnötig gefüllt wird.

Am liebsten wäre es mir, wenn es eine Methode gäbe mit der ich dann einfach eine Art Variable fülle.

Beispiel:
UserTS
author-pic = /fileadmin/author/dwalter/pic1.jpg

Marker im Template:
###AUTHORINFO###

und im Haupttemplate einfach den Marker oder Subpart mit dem HTML-code füllen und an der passendenstelle (<img src="user_ts.author-pic" style="whatever..." />) und dann halt noch den Authorenamen abrufen etc.
Und evtl. noch irgendwie das ganze so gestalten, wenn ein Redakteur irgendwo einen Artikel unterbringt schreibt er in das SeitenTS einfach "Autorinfo = 1" oder dergleichen und im Template wird dieser Wert abgerufen und überprüft ob dann nun eine Autoreninfo mit eingebettet werden soll oder ob der Marker einfach mit " " gefüllt wird.

Jedoch hab ich von solchen Sachen leider noch nicht ganz so viel Ahnung.

Wäre das mit TS zu aufwendig/kompliziert? Wäre da eine Extension leichter zu bauen?

Grüße,
Daniel

just2b ·

Hallo,

also eine Ext braucht es auf alle Fälle: Die macht eine Relation auf die vorhandenen be_users.
Die Ausgabe kannst du per TS mittels cObj RECORDS machen

das ganze sollte keine 15min dauern

Georg

Aldarin ·

Okay, zwar noch nie wirklich was damit gemacht und eher ein PHP-Dau, aber so schwer wird PHP schon nicht sein. Ich bin zwar eher so auf Compiler ausgelegt und arbeite Ewigkeiten mit C und C++, aber PHP sieht ja der ganzen Sache relativ ähnlich. Mal mein Glück probieren. Auch wenn ich noch nicht ganz genau weiß was du mit dem cObj meinst, aber ich hoffe ich find das gleich mal in der TSref.

Aldarin ·

Wenn ich das ganze Teil nun als ein Frontentplugin entwerfe aber nicht in die Pluginliste einfügen lasse sondern einfach direkt so in jedes Template integriere, wie läuft das dann wenn ich nun noch ein Feld in den Seiteneinstellungen haben will. Also einfach nur eine Checkbox in den Seiteneinstellungen Autor [x] oder Autor [ ]. Wie bring ich das dem guten stück bei?

Aldarin ·

mkay...

also einfach nur eine extension die mir in die be_users dann noch was dranhängt.

Und in dieses Feld mach ich dann den Pfad zu dem Userbild, richtig? Danach muss ich mit TS irgendwie an diesen Wert kommen und den gesamten HTML-code + Userbildpfad im TS zusammenwürfeln und Beispielsweise in ne lib reinschieben und diese lib z.b. als basis template oder whatever anhängen.

ich hoffe ich habs diesmal so halbwegs verstanden.