Franz Holzinger

autor  
6-06-17 14:28:52 Sprechende URLs
Björn Hahnefeld
Ich würde gerne tt_products so nutzen, dass die kryptischen URLs verschwinden zugunsten von sprechenden URLs.

Zudem würde ich mir wünschen, dass die Detailseite nicht immer gleich lautet, sondern bespielsweise produkt1/details und produkt2/details, um die SEO sinnvoll pro Produkt betreiben zu können.
6-06-17 21:08:07 realurl für tt_products
Franz Holzinger
Die Pfade lauten dann pfad/produkt1titel und pfad/produkt2titel .

Innerhalb von postVarSets eintragen:

// products
'products' => array(
array(
'GETvar' => 'tt_products[product]',
'lookUpTable' => array(
'table' => 'tt_products',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),

tt_products arbeitet gleich wie tt_news. Man kann also auch nach tt_news Realurl Einstellungen suchen und alles analog für tt_products einstellen.
7-06-17 08:58:26 Leider nicht
Björn Hahnefeld
Meine Konfiguration sieht nun so aus und leider funktioniert es überhaupt nicht - gleiches Ergebnis wie zuvor:

--
<?php

/**
*
* dix_UrlTool default realurl configuration
* based on realurl-configuration of news.typo3.org
* http://news.typo3.org/about/realurl-configuration/
*
*/

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array (
'_DEFAULT' => array (
'init' => array (
'enableCHashCache' => '1',
'appendMissingSlash' => 'redirect',
'enableUrlDecodeCache' => '1',
'enableUrlEncodeCache' => '1',
),
'redirects' => array (
),
'preVars' => array (
'0' => array (
'GETvar' => 'no_cache',
'valueMap' => array (
'nc' => '1',
),
'noMatch' => 'bypass'
),
'1' => array (
'GETvar' => 'L',
'valueMap' => array (
'de' => '0',
'en' => '1',
),
'noMatch' => 'bypass',
),
'2' => array (
'GETvar' => 'lang',
'valueMap' => array (
'de' => 'de',
'en' => 'en',
),
'noMatch' => 'bypass',
),
),
'pagePath' => array (
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'expireDays' => '7',
'rootpage_id' => '1',
),
'fixedPostVars' => array (
),
'postVarSets' => array (
'_DEFAULT' => array (
'archive' => array (
'0' => array (
'GETvar' => 'tx_ttnews[year]',
),
'1' => array (
'GETvar' => 'tx_ttnews[month]',
'valueMap' => array (
'january' => '01',
'february' => '02',
'march' => '03',
'april' => '04',
'may' => '05',
'june' => '06',
'july' => '07',
'august' => '08',
'september' => '09',
'october' => '10',
'november' => '11',
'december' => '12',
),
),
),
'browse' => array (
'0' => array (
'GETvar' => 'tx_ttnews[pointer]',
),
),
'select_category' => array (
'0' => array (
'GETvar' => 'tx_ttnews[cat]',
),
),
'article' => array (
'0' => array (
'GETvar' => 'tx_ttnews[tt_news]',
'lookUpTable' => array (
'table' => 'tt_news',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => '1',
'useUniqueCache_conf' => array (
'strtolower' => '1',
'spaceCharacter' => '-',
),
),
),
'1' => array (
'GETvar' => 'tx_ttnews[swords]',
),
),
),
),
'fileName' => array (
//
// if you don't want .html-URLs set the following to "false" (e.g. 'defaultToHTMLsuffixOnPrev' => false,)
// then you get http://www.yourdomain.com/imprint/ instead of http://www.yourdomain.com/imprint.html
//
'defaultToHTMLsuffixOnPrev' => false,
'index' => array (
'rss.xml' => array (
'keyValues' => array (
'type' => '100',
),
),
'rss091.xml' => array (
'keyValues' => array (
'type' => '101',
),
),
'rdf.xml' => array (
'keyValues' => array (
'type' => '102',
),
),
'atom.xml' => array (
'keyValues' => array (
'type' => '103',
),
),
'_DEFAULT' => array (
'keyValues' => array (
'type' => '0',
),
),
),
),
),
// products
'products' => array(
array(
'GETvar' => 'tt_products[product]',
'lookUpTable' => array(
'table' => 'tt_products',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
);

?>
--
24-09-17 08:36:43 Funktionierende Konfigration für tt_products mit tt_news
Maximilian Fasel

//tt_news
$conf = unserialize($TYPO3_CONF_VARS['EXT']['extConf']['realurlsettings']);

if ($conf['useRealURLSettings'] === 'tt_news') {
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
'init' => array(
'enableCHashCache' => 1,
'enableUrlDecodeCache' => 1,
'enableUrlEncodeHash' => 1,
'postVarSet_failureMode' => 'redirect_goodUpperDir',
),
'rewrite' => array(
),
'preVars' => array(

array(
'GETvar' => 'L',
'valueMap' => array(
'de' => '0',
'en' => '1',
'nl' => '2',
),
'valueDefault' => 'de',
),

),
'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'expireDays' => 3
),
'fileName' => array (
'defaultToHTMLsuffixOnPrev' => 1,
'index' => array(
'page.html' => array(
'keyValues' => array (
'type' => 1,
),
),
),
'print.html' => array(
'keyValues' => array (
'type' => 98,
),
),
),
'fixedPostVarSets' => array(),

'postVarSets' => array(
'_DEFAULT' => array(
//archive
'period' => array (
array (
'condPrevValue' => -1,
'GETvar' => 'tx_ttnews[pS]',
//'valueMap => array()
),
array (
'GETvar' => 'tx_ttnews[pL]',
//'valueMap => array()
),
array (
'GETvar' => 'tx_ttnews[arc]',
'valueMap' => array(
'non-archived' => -1,
),
),
),
'browse' => array (
array (
'GETvar' => 'tx_ttnews[pointer]',
),
),
'select' => array (
array (
'GETvar' => 'tx_ttnews[cat]',
'lookUpTable' => array (
'table' => 'tt_news_cat',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause'=> 'AND NOT deleted',
'useUniqueCache'=> 1,
'useUniqueCache_conf' => array (
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
'article' => array(
array (
'GETvar' => 'tx_ttnews[backPid]',
// 'valueMap => array(
// ),
),
array (
'GETvar' => 'tx_ttnews[tt_news]',
'lookUpTable' => array (
'table' => 'tt_news',
'id_field' => 'uid',
'alias_field' => 'title',
'maxLength' => 20,
'addWhereClause'=> 'AND NOT deleted',
'useUniqueCache'=> 1,
'useUniqueCache_conf' => array (
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
),
),
),
);
}
else if (strlen($conf['useRealURLSettings'])>0) {
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'expireDays' => 3
),
'fileName' => array (
'defaultToHTMLsuffixOnPrev'=> 1
),
);
}

if ($conf['useRealURLCaching'] == 1) {
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass']['realurlsettings'] = 'EXT:realurlsettings/class.tx_realurlsettings_hooks.php:tx_realurlsettings_hooks';
}


$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(

'init' => array(
'useCHashCache' => '0',
'enableCHashCache' => 1,
'respectSimulateStaticURLs' => 'TRUE',
'appendMissingSlash' => 'ifNotFile',
'enableUrlDecodeCache' => '1',
'enableUrlEncodeCache' => '1',
),

'preVars' => array(
array(
'GETvar' => 'no_cache',
'valueMap' => array(
'no_cache' => 1,
'nocache' => 1,
),
'noMatch' => 'bypass',
),
array(
'GETvar' => 'L',
'valueMap' => array(
'de' => '0',
'en' => '1',
),
'noMatch' => 'bypass',
),
),


'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'segTitleFieldList' => 'alias,tx_realurl_pathsegment,nav_title,title',
'languageGetVar' => 'L',
'expireDays' => 1,
'disablePathCache' => 1,
'rootpage_id' => 1,
),

'fileName' => array(
'index' => array(
'rss.xml' => array(
'keyValues' => array(
'type' => 100,
),
),
'rss091.xml' => array(
'keyValues' => array(
'type' => 101,
),
),
'rdf.xml' => array(
'keyValues' => array(
'type' => 102,
),
),
'atom.xml' => array(
'keyValues' => array(
'type' => 103,
),
),
),
),



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



's' => array(
array( 'GETvar' => 'tx_ttnews[pointer]', 'valueMap' => array('weiter' => '1','weiter' => '2',)),),


// news kategorien

'kategorie' => array (
array( 'GETvar' => 'tx_ttnews[cat]', 'lookUpTable' => array('table' => 'tt_news_cat', 'id_field' => 'uid', 'alias_field' => 'title', 'addWhereClause' => ' AND NOT deleted', 'useUniqueCache' => 1, 'useUniqueCache_conf' => array( 'strtolower' => 1, 'spaceCharacter' => '-', ),),),),


// news artikel

'news' => array(
array('GETvar' => 'tx_ttnews[year]' , ),

array('GETvar' => 'tx_ttnews[month]' , ),
array('GETvar' => 'tx_ttnews[day]' , ),
array('GETvar' => 'tx_ttnews[tt_news]','lookUpTable' => array( 'table' => 'tt_news', 'id_field' => 'uid', 'alias_field' => 'title', 'addWhereClause' => ' AND NOT deleted', 'useUniqueCache' => 1, 'useUniqueCache_conf' => array( 'strtolower' => 1, 'spaceCharacter' => '-', ),),),),


// tt_products
'kategorie' => array (
array (
'GETvar' => 'tt_products[cat]' ,
'lookUpTable' => array (
'table' => 'tt_products_cat' ,
'id_field' => 'uid' ,
'alias_field' => 'title' ,
'addWhereClause' => ' AND NOT deleted' ,
'languageGetVar' => 'L',
'useUniqueCache' => 1 ,
'useUniqueCache_conf' => array (
'strtolower' => 1 ,
'spaceCharacter' => '-' ,
)
)
)
),
'produkte' => array (
array (
'GETvar' => 'tt_products[product]' ,
'lookUpTable' => array (
'table' => 'tt_products' ,
'id_field' => 'uid',
'alias_field' => 'title' ,
'addWhereClause' => ' AND NOT deleted' ,
'languageGetVar' => 'L',
'useUniqueCache' => 1 ,
'useUniqueCache_conf' => array (
'strtolower' => 1 ,
'spaceCharacter' => '-' ,
)
)
)
),
'seite' => array (
array (
'GETvar' => 'tt_products[pp]' ,
'lookUpTable' => array (
'table' => 'pages' ,
'id_field' => 'uid' ,
'alias_field' => 'title' ,
'addWhereClause' => ' AND NOT deleted' ,
'languageGetVar' => 'L',
'useUniqueCache' => 1 ,
'useUniqueCache_conf' => array (
'strtolower' => 1 ,
'spaceCharacter' => '-' ,
)
)
)
) ,
'zurueck' => array (
array (
'GETvar' => 'tt_products[backPID]' ,
'lookUpTable' => array (
'table' => 'pages' ,
'id_field' => 'uid' ,
'alias_field' => 'title' ,
'addWhereClause' => ' AND NOT deleted' ,
'languageGetVar' => 'L',
'useUniqueCache' => 1 ,
'useUniqueCache_conf' => array (
'strtolower' => 1 ,
'spaceCharacter' => '-' ,
)
)
)
),
),
),
);
?>


Constants: Für tt_news
plugin.tt_news.useHRDatesSingle = 1
plugin.tt_news.useHRDatesSingleWithoutDay = 0
plugin.tt_news.dontUseBackPid = 1
plugin.tt_news.useHRDates = 1


Gruß Maximilian Fasel
< BACK TO FORUM