MacBook Banner 728x90
< TYPO3 Extension phpmyadmin Sicherheitsupgrade

Per TypoScript HTML Sitemap für tt_news erstellen

17.01.2009
Lina Wolf
HTML Sitemap insklusive tt_news Nachrichten Einträge
Seitenbaum im Beispiel der news Sitemap

Zunächst erzeugt man ein normales HMENU. Das HMENU wird zur Sitemap, indem auf jeder Ebene des Menüs durch expAll = 1 das Menü vollständig ausgeklappt wird.

Nun müssen wir die Seite herausfinden, unterhalb derer die News angezeigt werden sollen. In dem vorliegenden Beispiel ist dies Seite 11 auf Ebene 1. Daher wird auf Ebene 1 der Output der Sitemap durch cObject, genauer durch ein cObject vom TYP CASE ersetzt. Mit diesem wird die uid der Seite abgefragt. Wenn diese nicht 11 ist (sonder default) wird einfach normal die Seite verlinkt ausgegeben. Andernfalls geben wir die Untersitemap für die News aus.

Die Unterseitemap der tt_news Kategorien und Einzelnews wird über zwei verschachtelete cObjects vom TYP CONTENT realisiert. Das äußere wählt alle News aus, das innere stellt die jeweils zur Kategorie gehörenden News dar.

												
  1. lib.sitemap = HMENU
  2. lib.sitemap {
  3. 1 = TMENU1{
  4. wrap = <ul>|</ul>
  5. expAll = 1
  6. NO{
  7. wrapItemAndSub= <li>|</li>
  8. doNotLinkIt = 1
  9. stdWrap.cObject = CASE
  10. stdWrap.cObject{
  11. key.field = uid # alle anderen Seiten auf Level 1 ausgeben
  12. default = TEXT
  13. default{
  14. field = title
  15. typolink.parameter.field = uid
  16. }
  17. ####################
  18. # Newsseiten ausgeben
  19. ####################
  20. 11 = COA
  21. 11{
  22. 10 = TEXT10{
  23. field = title
  24. typolink.parameter.field = uid
  25. }
  26. 20 = CONTENT
  27. 20{
  28. ####################################
  29. # Kategorie auswählen und ausgeben
  30. ####################################
  31. stdWrap.wrap = <ul>|</ul>
  32. table = tt_news_cat
  33. select{
  34. # pid in der die Kategorien liegen
  35. pidInList = 2
  36. # Nach Titel sortieren
  37. orderBy = title
  38. }
  39. renderObj = COA
  40. renderObj{
  41. # News Kategorie ausgeben und verlinken
  42. wrap = <li>|</li>
  43. 10 = TEXT
  44. 10.field = title
  45. 10.typolink{
  46. parameter = 11
  47. additionalParams=&tx_ttnews[cat]={field:uid}
  48. additionalParams.insertData=1
  49. }
  50. 20 = CONTENT
  51. 20{
  52. # Zur Kategorie gehörige Einzelseiten auswählen
  53. stdWrap.wrap = <ul>|</ul>
  54. table = tt_news
  55. select{
  56. # pid in der die News liegen
  57. pidInList = 2
  58. # nach Titel sortieren orderBy = title
  59. # überprüfen ob News zur Kategorie gehört
  60. andWhere= uid_foreign={field:uid}
  61. andWhere.insertData=1
  62. join = tt_news_cat_mm ON (tt_news.uid=tt_news_cat_mm.uid_local)
  63. }
  64. # News ausgeben
  65. renderObj = COA
  66. renderObj{
  67. wrap = <li>|</li>
  68. 1= TEXT
  69. 1{
  70. field = title
  71. typolink{
  72. parameter = 10
  73. additionalParams=&tx_ttnews[tt_news]={field:uid}
  74. additionalParams.insertData=1
  75. }
  76. }
  77. }
  78. }
  79. }
  80. }
  81. }
  82. }
  83. }
  84. }
  85. 2 = TMENU
  86. 2{
  87. wrap = <ul>|</ul>
  88. expAll = 1
  89. NO.wrapItemAndSub= <li>|</li>
  90. }
  91. 3 = TMENU
  92. 3{
  93. wrap = <ul>|</ul>
  94. expAll = 1
  95. NO.wrapItemAndSub= <li>|</li>
  96. }
  97. 4 = TMENU
  98. 4{
  99. wrap = <ul>|</ul>
  100. expAll = 1NO.wrapItemAndSub= <li>|</li>
  101. }
  102. }

Zu "Per TypoScript HTML Sitemap für tt_news erstellen"

Gravatar: felix Zu
Hi,

eine sehr schön Idee hast du da. Ich wollte das auch für meine Page einrichten, doch leider habe ich nich noch nicht so viel erfahrung. Kannst du mir sagen wo ich diesen Code einfügen muss und wie ich in ihn auf die Seite bekommen kann?

Hoffe du kannst mir helfen...

Felix

Kommentar hinzufügen

* - Pflichtfeld

*




*