Typo3 lästiges (Kopie 1) verhindern

Hallo zusammen,
wer kennt das nicht, wenn man ein tt_content object ohne Headline Kopiert, dann bekommt man immer so eine “(Kopie 1)” und so weiter angezeigt.
Wenn man das aber nicht mehr möchte, kann man sich einer kleinen Einstellung im System zu gunsten machen 😉

TCEMAIN.table.tt_content.disablePrependAtCopy = 1

Diese Zeile kann einfach in das Feld TSConfig (Seiteneigenschaften -> Optionen) eingefügt werden. Durch die rekursive Anwendung kann damit der Zusatz auf nur einer einzelnen Seite oder einem ganzen Seitenbaum angewendet werden

TemplaVoila – Selectbox mit Ausgabe über Typoscript

Hallo zusammen, so kann man mit TypoScript und TemplaVoila direkt etwas an den Content rendern.
Hier die genauen Schritte wie das gemacht wird.

Erst gehen wir in TemplaVoila in die Edit-Ebene:

1) Erstellen eines Feldes in TemplaVoila “Not mapped”
1a) fieldname: field_checker
2) Element Preset: Selecter Box
3) unter Form die Parameter angeben

<type>select</type>
<items type="array">
	<numIndex index="0" type="array">
		<numIndex index="0">nein</numIndex>
		<numIndex index="1">0</numIndex>
	</numIndex>
	<numIndex index="1" type="array">
		<numIndex index="0">ja</numIndex>
		<numIndex index="1">1</numIndex>
	</numIndex>
</items>
<default>1</default>

Wobei: numIndex index=”0″ der Wert ist, den man im Backend sieht, und der numIndex index=”1″, der Wert womit gearbeitet wird.

Nach dem das fertig ist, gehen wir in unser TemplaVoila-Feld wo wir in meinem Beispiel, etwas einfügen wollen.
Es geht auch so, dass man sich ein eigenes Feld macht.

Mein Feld ist ein Plugin, welches eingeladen werden soll, wenn der Wert auf “Ja” also “1” gesetzt ist.

# default by templaVoila
	 5 = LOAD_REGISTER

	 10 = RECORDS
	 10.source.current=1
	 10.tables = tt_content
	 # 10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->

	 15 = RESTORE_REGISTER
# default - end

70 = COA
70 {
	 if.value = 1
	 if.equals.field = field_checker
	 insertData = 1
	 10 = TEXT
	 10.value = Das sehe ich wenn das Feld "Ja" ausgewählt ist
}

75 = COA
75 {
	 if.value = 0
	 if.equals.field = field_checker
	 insertData = 1
	 10 = TEXT
	 10.value = Das sehe ich wenn das Feld "nein" ausgewählt ist
}

Somit haben wir zudem die Möglichkeiten einen Text, Class oder sogar ein Modul einzuladen.
Dazu ist es für die Redakteure am einfachsten mit einer Select-box das Verhalten auszuwählen.

Liebe Grüße
Marc

TYPO3 – WT Directory RealURL

Mit dem kleinen Code unter euren postVars macht ihr WT Directory SEO-Freundlich.

..
..
        'postVarSets' => array (
            '_DEFAULT' => array (

// WT Directory
              'index' => array(
                  array(
                      'GETvar' => '',
                  ),
              ),
      		'info' => array(
                  array(
                      'GETvar' => 'tx_wtdirectory_pi1[show]',
                                'lookUpTable' => array (
                                        'table' => 'tt_address',
                                        'id_field' => 'uid',
                                        'alias_field' => 'name',
                                        'addWhereClause' => ' AND NOT deleted',
                                        'useUniqueCache' => 1,
                                        'useUniqueCache_conf' => array (
                                                'strtolower' => 1,
                                                'spaceCharacter' => '_',
                                                ),
					),
                  ),
                  array(
                      'GETvar' => 'tx_wtdirectory_pi1[catfilter]',
                  ),
                  array(
                      'GETvar' => 'tx_wtdirectory_pi1[filter][name]',
                  ),
              ),
	'a-z' => array(
		array(
			'GETvar' => 'tx_wtdirectory_pi1[filter][last_name]',
			'valueMap' => array(
				'a'=>'a%',
				'b'=>'b%',
				'c'=>'c%',
				'd'=>'d%',
				'e'=>'e%',
				'f'=>'f%',
				'g'=>'g%',
				'h'=>'h%',
				'i'=>'i%',
				'j'=>'j%',
				'k'=>'k%',
				'l'=>'l%',
				'm'=>'m%',
				'n'=>'n%',
				'o'=>'o%',
				'p'=>'p%',
				'q'=>'q%',
				'r'=>'r%',
				's'=>'s%',
				't'=>'t%',
				'u'=>'u%',
				'v'=>'v%',
				'w'=>'w%',
				'x'=>'x%',
				'y'=>'y%',
				'z'=>'z%',
			),
		),
		array(
			'GETvar' => 'tx_wtdirectory_pi1[pointer]',
		),
	),
// WT Directory : END
     ),
),
..
..

#updatet: 04-07-2011

TYPO3 – CAL – Timeline | Today – +6 Monate dynamisch

Wie versprochen, zeige ich euch hier eine Timeline, die ich mit mit Calender Base erstellt habe.
Ich habe mir viele Gedanken darüber gemacht, wie man das ausschließlich mit Typoscript und ein bisschen jQuery machen kann. Allerdings ist die Geschichte mit dem Calender Base doch etwas komplexer als vielleicht anfangs gedacht. Doch mit etwas Zeit und Ehrgeiz ist auch das eine Hürde, die man nehmen kann ohne komplett zu verzweifeln.

Der Aufbau für dieses kleine Modul besteht aus TypoScript, jQuery und CSS.
Genutzt werden zudem die Extensions: cal (Calender Base) und tscobj* (Content Element From TypoScript)
*optional oder direkt mit TemplaVoila oder in einen Marker.

 

Der TypoScript-Aufbau:

/* Aufbau der CAL’s (6x) + jeweils den Monat
// zum individuellen bearbeiten für jeden CAL
************************************/
lib.month1 < plugin.tx_cal_controller lib.month1 { view { useGetdate = 1 useCustomEndtime = 1 allowedViews = list list.starttime = today #list.starttime = cal:monthstart list.endtime = cal:monthend event.eventViewPid = 75 } } lib.month2 < plugin.tx_cal_controller lib.month2 { view { useGetdate = 1 useCustomEndtime = 1 allowedViews = list list.starttime = cal:monthstart +1 month list.endtime = cal:monthend +1 month event.eventViewPid = 75 } } lib.month3 < plugin.tx_cal_controller lib.month3 { view { useGetdate = 1 useCustomEndtime = 1 allowedViews = list list.starttime = cal:monthstart +2 month list.endtime = cal:monthend +2 month event.eventViewPid = 75 } } lib.month4 < plugin.tx_cal_controller lib.month4 { view { useGetdate = 1 useCustomEndtime = 1 allowedViews = list list.starttime = cal:monthstart +3 month list.endtime = cal:monthend +3 month event.eventViewPid = 75 } } lib.month5 < plugin.tx_cal_controller lib.month5 { view { useGetdate = 1 useCustomEndtime = 1 allowedViews = list list.starttime = cal:monthstart +4 month list.endtime = cal:monthend +4 month event.eventViewPid = 75 } } lib.month6 < plugin.tx_cal_controller lib.month6 { view { useGetdate = 1 useCustomEndtime = 1 allowedViews = list list.starttime = cal:monthstart +5 month list.endtime = cal:monthend +5 month event.eventViewPid = 75 } } /* Generierung der Timeline mit Wraps // Es kann auch anders aufgebaut werden, jedoch // sollten die Class-Names beibehalten werden. ************************************/ lib.eventList = COA lib.eventList { 10 = TEXT 10 { wrap =

|

}

11 = COA
11.1< lib.month1 11.wrap =

|

21 = COA
21.1

|

31 = COA
31.1

|