das wäre dann die Schlussfolgerung meiner Tat gewesen, aber immer schön eins nach dem andern 😃 😃 😃
*lol*
gruss theis
das wäre dann die Schlussfolgerung meiner Tat gewesen, aber immer schön eins nach dem andern 😃 😃 😃
*lol*
gruss theis
Danke für eure Bemühungen.
Aber entweder ich kann mich nicht mitteilen, oder ich stehe total auf dem Schlauch.
Wieso muß ich das News-Template bearbeiten? Die News an sich wird ja genau so dargestellt wie ich möchte.
Ich versuche nochmal mein Problem genauer zu beschreiben:
Ich habe mehrere Contentelemente auf meiner Seite (sollen variabel und von Redakteur veränderbar bleiben):
1: eine Überschrift
2: das News-Plugin
3: Text mit Bild
Wenn ich nun in der LATEST Ansicht auf eine News klicke wird die Seite richtig angezeigt. Also:
1: eine Überschrift
2: die News (das News-Plugin)
3: Text mit Bild
Wenn ich aber über einen Link in der Hauptnavigation auf die Newsseite gehe (keine Auswahl einer speziellen News) passiert folgendes:
2: die News (das News-Plugin)
1: eine Überschrift
3: Text mit Bild
Das passiert eben weil ich mir aus der Datenbank die letzte News hole und diese anzeigen lasse.
10 = CONTENT
10.table = tt_news
10.select {
# Alle pid aus denen News geholt werden sollen angeben
# das Rekursiv-Feld hat keinen Einfluß auf diese Auswahl
pidInList = 31
orderBy = datetime desc
max = 1
where = type = 0
}
Vorher wird der Seitencontent (1: eine Überschrift; 3: Text mit Bild) in ein temp-Objekt gelegt
tmp.pagecontent < page.10.marks.CONTENT
und dann HINTER der News wieder eingefügt.
Einfügen des Objektes "10." (nur wenn keine SINGLE news ausgewählt)
10.stdWrap.if.isFalse.data = GPvar:tx_ttnews|tt_news
# Einfügen des oben erstellten Temp-Objektes hinter der News
20 < tmp.pagecontent
Mein Problem ist die Realisierung eines differenzierten Zugriffs auf die vorhandenen Contentelemente "1: eine Überschrift" und "3: Text mit Bild".
Also sowas wie (funktioniert nicht):
tmp.pagecontentHeader < page.10.marks.CONTENT.header
(das Contentelement Überschrift)
tmp.pagecontentText < page.10.marks.CONTENT.text
(das Contentelement Text mit Bild)
und das baue ich dann so wieder zusammen:
5 < tmp.pagecontentHeader
Einfügen des Objektes "10." (nur wenn keine SINGLE news ausgewählt)
10.stdWrap.if.isFalse.data = GPvar:tx_ttnews|tt_news
# Einfügen des oben erstellten Temp-Objektes hinter der News
20 < tmp.pagecontentText
Ich hoffe ich habe klarer beschrieben was ich möchte. Falls die Lösung doch im ändern des Templates liegt bitte ich um detailiertere Beschreibung wie ich das Template verändern muß.
Danke
Martin
Hast du ne seite online?
Kannst du mal den Link posten.
gruss theis
Warum bastelst du eigentlich im Typoscript rum???
Lass doch einfach alles so wie es ist und schmeiss einfach das Plugin rein!
gruss theis
Leider ist die Seite noch nicht soweit das ich sie online stellen kann (darf).
Ich habe aber in einer anderen Seite das Problem nachgestellt (nur temporär, werde ich wieder zurückstellen):
http://www.werkstaette-walder.at.
Unter dem Menüpunkt "Unternehmen" gibt es "Aktuelle Themen" mit einem Weihnachtsgruß. Wenn ich dort auf [mehr] klicke komme ich auf die Newsseite so wie sie gehört (1: Textelement; 2: News).
Es gibt auch die Möglichkeit die Newsseite "direkt" über das Hauptmenü aufzurufen. Wenn ich das mache wird der Weihnachtsgruß auch angezeigt allerdings vor dem Textelement - und das soll nicht sein.
Warum ich im Typoscript rumbastle ist einfach:
Laut Dokumentation kann ich mir die letzte News anzeigen lassen wenn ich keine spezielle News auswähle und damit das "Keine News_id übergeben" vermeiden. Das funktioniert auch, bis auf den kleinen Schönheitsfehler daß eben der restliche Content nur nach der News eingebunden wird.
Aber ich muß doch irgendwie auf einzelne Contentelemente zugreifen können um die Seite so zu rendern wie sie sein soll.
Irgendwie habe ich das Gefühl das ich da wieder einiges lernen kann. 🙂
Danke für Deine Geduld.
Martin
ok,
soweit ich das richtig verstehe, musst du die News als plugin einfügen, und nicht direkt via page.10.....
du must deine veränderungen also auch unter plugin.tt_news... vornehmen.
gruss theis
hat es geklappt?
gruss theis
Hallo Theis,
entschuldige die späte Antwort, hatte viel um die Ohren die letzten Tage.
Ich bin mir nicht sicher, ob ich deinen letzten Hinweis richtig verstanden habe. (natürlich habe ich die News als Plugin eingefügt, aber das Inhaltselement "Überschrift" hat ja nichts mit dem Inhaltselement "Plugin einfügen -> News" zu tun, deshalb brauche ich doch das page.10....., oder?)
Jedenfalls habe ich eine wenn auch nicht 100% zufriedenstellende Lösung:
Hier der Code (im root-Template als Bedingung für die Newsseite (id=5)):
##########################################
#AUSWAHL NEWS #
##########################################
[globalVar = TSFE:id=5]
# .....und zeigt die letzte eingetragene News an
# Einstellen der tt_news singlePid auf die aktuelle Seite
plugin.tt_news.singlePid = 5
# den Inhalt der Hauptspalte in ein Temp-Objekt einfügen
tmp.pagecontent < page.10.marks.CONTENT
# Löschen des Inhaltes der Hauptspalte
page.10.marks.CONTENT >
# Ein neues Objekt für die Hauptspalte anlegen (als content-object-array)
page.10.marks.CONTENT = COA
page.10.marks.CONTENT {
# Die Überschrift des ersten Contentelements. (auch wenn versteckt)
# In diesem Fall die versteckte Überschrift des NewsPlugin
5 = CONTENT
5.table = tt_content
5.select {
pidInList=this
orderBy = sorting
where = colPos=0
begin = 0
max = 1
}
5.renderObj = TEXT
5.renderObj.field = header
5.renderObj.wrap = <h1>|</h1>
# Die erste bzw. letzte News
10 = CONTENT
10.table = tt_news
10.select {
# Alle pid aus denen News geholt werden sollen angeben
# das Rekursiv-Feld hat keinen Einfluß auf diese Auswahl
pidInList = 31
orderBy = datetime desc
max = 1
where = type=0
}
# Einfügen des Objektes "10." (nur wenn keine SINGLE news ausgewählt)
10.stdWrap.if.isFalse.data = GPvar:tx_ttnews|tt_news
# Einfügen des oben erstellten Temp-Objektes hinter der News
20 < tmp.pagecontent
}
[global]
Deshalb nicht 100% zufriedenstellend, weil ich "nur" auf die Überschrift des ersten Contentelements zugreife (egal ob versteckt oder nicht).
Lieber wäre mir ich könnte auf das gesamte erste Contentelement zugreifen (nur wenn es eingeblendet ist).
Aber es wird wohl so auch reichen (müssen).
Also nochmal vielen Dank.
p.s. Sollte irgendjemand von euch in Zukunft mal eine Lösung finden wäre ich froh wenn er die hier posten würde.
hallo mafl,
nein, ich habe meine news auch auf jeder seite trotzdem mache ich folgendes:
page.10.marks.CONTENT.10 < plugin.tt_news
page.10.marks.CONTENT.10 {
code >
code = LATEST
}
wie du hier siehst, habe ich das plugin eingefügt und es dann nach meinen wünschen angepasst.
gruss theis
Ahh! (Grosses Lichtaufgehn!) o.O
Aber wie verhält sich das bei Dir, wenn du auf die SINGLE-Ansicht über einen LATEST-Link kommst?
Das ist ja die Möglichkeit die ich ebenfalls erhalten möchte (auf einer Seite)
Vielleicht kannst du mir da mal einen Auszug (möglicherweise etwas umfangreicher) aus deinem TS zur Verfügung stellen.
Auf alle Fälle werde ich mit Deinem Ansatz mal rumspielen.
Vielen Dank
weiss nicht ob dir es hilft, aber kann mal alles posten:
plugin.tt_news {
pid_list = 23
singlePid = 27
archiveTypoLink.parameter = 26
displaySingle.image.imageLinkWrap.width >
displaySingle.image.file.maxH >
displaySingle.image.imageLinkWrap.height = 700
displayLatest.image.imageLinkWrap < plugin.tt_news.displaySingle.image.imageLinkWrap
displayList.image.imageLinkWrap < plugin.tt_news.displaySingle.image.imageLinkWrap
}
plugin.tt_news.templateFile = fileadmin/template/tmpl/tt_news.htm
temp.news < plugin.tt_news
temp.news {
code >
code = LATEST
}
page.10.subparts.POS-BORDER.20 < temp.news
in der datei tt_news.htm sieht single und latest wie folgt aus:
<!-- ###TEMPLATE_LATEST### begin
This is the template for the latest news, typically displayed on a frontpage
-->
<div class="box news-latest">
<div class="box-title">###LATEST_HEADER###</div>
<div class="box-content">
<!-- ###CONTENT### begin
This is the part of the template substituted with the list of news:
-->
<!-- ###NEWS### begin
Template for a single item
-->
<div class="right small">###NEWS_DATE### ###NEWS_TIME###<br />###TEXT_CAT_LATEST### ###NEWS_CATEGORY###</div>
<h3>###NEWS_TITLE###</h3>
###NEWS_IMAGE###
###NEWS_SUBHEADER###
<!--###LINK_ITEM###-->###MORE###<!--###LINK_ITEM###-->
<hr />
<!-- ###NEWS### end-->
<!-- ###CONTENT### end -->
<div class="news-latest-gotoarchive"><!--###LINK_ARCHIVE###-->###GOTOARCHIVE###<!--###LINK_ARCHIVE###--></div>
</div>
</div>
<!-- ###TEMPLATE_LATEST### end -->
<br />
<br />
<br />
<br />
<hr />
<br />
<br />
<br />
<h3>TEMPLATE_SINGLE</h3>
<em>This subpart is used to display single news items</em><br />
<br />
<br />
<!-- ###TEMPLATE_SINGLE### begin
This subpart is used to display single news items
-->
<div class="news-single-item">
<div class="box news-single-infos">
<div class="box-title">Infos</div> Datum: ###NEWS_DATE### ###NEWS_TIME### <br /> ###TEXT_NEWS_AGE### ###NEWS_AGE### ###NEWS_AUTHOR### ###CATWRAP_B### ###TEXT_CAT### ###NEWS_CATEGORY### ###NEWS_CATEGORY_IMAGE### ###CATWRAP_E###</div>
<h1>###NEWS_TITLE###</h1>
###NEWS_SUBHEADER###
###NEWS_IMAGE###
###NEWS_CONTENT###
<hr class="clear" />
###ADDINFO_WRAP_B###
###TEXT_RELATED###
###NEWS_RELATED###
###TEXT_FILES###
###FILE_LINK###
###TEXT_LINKS###
###NEWS_LINKS###
###TEXT_RELATEDBYCATEGORY###
###NEWS_RELATEDBYCATEGORY###
###ADDINFO_WRAP_E###
###NEWS_SINGLE_PAGEBROWSER###
<hr />
<div class="news-single-backlink">
<!--###LINK_ITEM###-->###BACK_TO_LIST###<!--###LINK_ITEM###-->
</div>
</div>
<!-- ###TEMPLATE_SINGLE### end -->
ich hoffe es hilft dir etwas.
es ist gleich ob ich über latest oder list zu single komme.
gruss theis