Zum Inhalt springen

Kategorien per TS / Template / TSConfig per Default setzen

Erstellt am 13. April 2007 · 6 Antworten · letzte Antwort am 16. Januar 2009

Tags: Kategorien, tt_news, Frage

impact ·

Hi!

Hab hier im Forum zwar zwei Threads gefunden, aber leider ohne jegliche Antworten / Ansätze.

Die Site meines Projektes hat mehrere Bereiche. In jedem Bereich gibt es jeweils nen News-Ordner. Und die dort erstellten News sollen immer den richtigen Kategorien zugeordnet sein.

Ich muss also tt_news.category irgendwie vorab definieren, damit auf jeden Fall die Kategorie gesetzt ist. Die Redakteure vergessen dies derzeit immer wieder und so verschwinden News bzw. tauchen in Bereichen auf wo das nicht passieren soll.

thanks
lg
impact

moeppie ·

Hi,

habe die gleiche Herausforderung. Finde auch keine Lösung.
Normalerweise sollte es so funktionieren.

TCAdefaults.tt_news.category = id der category

Funzt aber nicht, da anscheinend die Kategorien nicht in dem Tabellenfeld zugeordnet werden. Ich wäre auch für eine Lösung überaus dankbar.

just2b ·
moeppie schrieb

Wie ich das verstehe, gibt es da keine Möglichkeit, so wie die ext. aufgesetzt ist. 😢

nicht wie die ext aufgesetzt ist sondern wie typo3 das handhabt, nämlich noch) gar nicht.
also schauen obs einen eintrag im bugtracker einen feature-wish gibt, wenn nicht, dann eintragen, vielleicht sogar inkl. patch oder einer donation

georg

impact ·

hab auch noch ein wenig geforscht. aber bin ebenso nur partiell fündig geworden. der post im bugtracker besagt quasi nur dass es nicht geht, und so wie es aussieht ist diese funktion auch nicht angedacht.

muss mal schauen ob ich da nen patch hinbekomm. Geht ja im Prinzip nur darum dem Form von Anfang an eine ausgewählte Kategorie mitzugeben.

melde mich zurück wenn ich was finden sollte.

lg
impact

dawjdh ·

TS in Parent Ordner:

TCAdefaults.meineTabelle.meinFeld := meinePhpFunktion()

Neue Extension anlegen.
class.meineKlasse.php anlegen.

class.meineKlasse.php:

<?php

class tx_meineKlasse_parseFuncs {

/**
* The main method of the PlugIn
*
* @param string $content: The PlugIn content
* @param array $conf: The PlugIn configuration
* @return The content that is displayed on the website (Header)
*/
function meinePhpFunktion($params=array(),$ref='') {

$current_page_id = $_GET['id'];

$dbResult = $GLOBALS['TYPO3_DB']->exec_SELECTquery("*","tx_meineTabelle_company","deleted != 1 AND sysfolderid = '".$current_page_id."'");
$myRow = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($dbResult);

return $myRow["uid"]; // return whatever you want to !

}
}

?>

Bearbeiten der ext_localconf.php in der Extension:

<?php

if (!defined ("TYPO3_MODE")) die ("Access denied.");

/**
* Register hooks in TCEmain:
*/

$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tsparser.php']['preParseFunc']['meinePhpFunktion'] = 'EXT:meine_extension/class.meineKlasse.php:&tx_meineKlasse_parseFuncs->meinePhpFunktion';

?>

Funktioniert bei mir sehr gut und dementiert damit die Aussage aus http://bugs.typo3.org/view.php?id=2140

Mein Problem ist jetzt nur dass diese php Funktion nur einmal aufgerufen wird und be jedem weiteren Aufruf eine Art gecachter Wert genommen wird !?

Viel Spaß !