#typoscript #typo3-7.6.x #realurl #tx-news
#typoscript #typo3-7.6.x #realurl #tx-новости
Вопрос:
У меня проблема с конфигурацией новостей для realurl.
TYPO3: 7.6.11
realurl: 2.1.4
новости: 5.2.0
Я создал следующее realurl_conf.php . (http://pastebin.com/GsYVaaDr ):
<?php
// realurl naming precedence configuration
$TYPO3_CONF_VARS['FE']['addRootLineFields'] .= 'tx_realurl_pathsegment,alias,title';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['p372493.mittwaldserver.info'] = array(
'init' => array(
'enableCHashCache' => true,
'appendMissingSlash' => 'ifNotFile',
'adminJumpToBackend' => true,
'enableUrlDecodeCache' => true,
'enableUrlEncodeCache' => true,
'emptyUrlReturnValue' => '/',
// Allow for proper SEO 404 handling
'postVarSet_failureMode' => ''
),
'redirects' => array(),
'preVars' => array(
array(
'GETvar' => 'no_cache',
'valueMap' => array(
'nc' => 1
),
'noMatch' => 'bypass'
),
array(
'GETvar' => 'L',
'valueMap' => array(
// Sprachvariable Deutsch
'de' => '0',
),
'noMatch' => 'bypass',
),
),
// PAGEPATH mit Standard-Realurl-Konfiguration
'pagePath' => array(
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:amp;tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'rootpage_id' => 1,
'expireDays' => 30,
// Nimmt Sysordner aus der Rootline (aktuell auskommentiert!)
'excludeDoktypes' => '254',
'segTitleFieldList' => 'tx_realurl_pathsegment,alias,title'
),
'fixedPostVars' => array(
'newsDetailConfiguration' => array(
array(
'GETvar' => 'tx_news_pi1[action]',
'valueMap' => array(
'detail' => '',
),
'noMatch' => 'bypass'
),
array(
'GETvar' => 'tx_news_pi1[controller]',
'valueMap' => array(
'News' => '',
),
'noMatch' => 'bypass'
),
'dateFilter' => array(
array(
'GETvar' => 'tx_newss_pi1[year]',
),
array(
'GETvar' => 'tx_newss_pi1[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',
),
),
array(
'GETvar' => 'tx_newss_pi1[day]',
),
),
array(
'GETvar' => 'tx_news_pi1[news]',
'lookUpTable' => array(
'table' => 'tx_news_domain_model_news',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-'
),
'languageGetVar' => 'L',
'languageExceptionUids' => '',
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'autoUpdate' => 1,
'expireDays' => 180,
),
),
),
),
'postVarSets' => array(
'_DEFAULT' => array(
// NEWS
'newsCategoryConfiguration' => array(
array(
'GETvar' => 'tx_news_pi1[overwriteDemand][categories]',
'lookUpTable' => array(
'table' => 'sys_category',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-'
),
),
),
),
'newsTagConfiguration' => array(
array(
'GETvar' => 'tx_news_pi1[overwriteDemand][tags]',
'lookUpTable' => array(
'table' => 'tx_news_domain_model_tag',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-'
),
),
),
),
'28' => 'newsDetailConfiguration',
# '701' => 'newsDetailConfiguration', // For additional detail pages, add their uid as well
# '71' => 'newsTagConfiguration',
# '72' => 'newsCategoryConfiguration',
'controller' => array(
array(
'GETvar' => 'tx_news_pi1[action]',
'noMatch' => 'bypass'
),
array(
'GETvar' => 'tx_news_pi1[controller]',
'noMatch' => 'bypass'
),
),
// 'archiv' => array(
// 'GETvar' => '',
// noMatch => 'bypass'
// ),
// NEWS
),
),
'fileName' => array (
'defaultToHTMLsuffixOnPrev' => true,
'index' => array(
'sitemap.xml' => array(
'keyValues' => array(
'type' => 841132,
),
),
'feed.rss' => array(
'keyValues' => array(
type => 9818,
),
),
'calender.ical' => array (
'keyValue' => array(
type => 9819,
),
),
'robots.txt' => array(
'keyValues' => array(
'type' => 841133
),
),
'drucken.html' => array(
'keyValues' => array(
'type' => '98',
'print' => '1'
),
),
'index.html' => array(
'keyValues' => array(
'type' => '0',
),
),
),
'defaultToHTMLsuffixOnPrev' => true,
'acceptHTMLsuffix' => true,
),
);
?>
Я настроил новостной плагин следующим образом.
plugin.tx_news {
settings {
backPid = 25
listPid = 25
detail {
showPrevNext = 1
showSocialShareButtons = 0
}
list {
media {
image >
image {
maxWidth = 75
maxHeight = 75
}
}
}
link {
skipControllerAndAction = 1
hrDate = 1
hrDate {
day = d
month = m
year = Y
}
}
paginate {
itemsPerPage = 10
insertAbove = 1
insertBelow = 1
templatePath =
prevNextHeaderTags = 1
maximumNumberOfLinks = 3
}
analytics.social {
facebookLike = 0
facebookShare = 0
twitter = 0
}
}
predefine.archive = 1 Month
}
В этой конфигурации проблемы рассматриваются в следующей форме:
/nachricht/detail/News/news-title/archiv/2016/september.html?tx_news_pi1[day]=2amp;cHash=bc08b3c694b77edd4d3de72396906807
но мне нужен вывод адреса в такой форме:
/nachricht/detail/News/2016/09/02/news-title.html
nachricht — это заголовок страницы. Базовая конфигурация realurl работает нормально.
У кого-нибудь есть идея или может сказать мне, как обновить мою новостную часть конфигурации?
Ответ №1:
Сначала измените ‘enableCHashCache’ => true на ‘enableCHashCache’ => FALSE в вашем realurl_conf.php для удаления cHash=…. из вашего URL-адреса. и измените приведенный ниже код в массиве postVatSets для realurl. Попробуйте это решение и дайте мне знать ваши отзывы. Этот код работает для меня.
'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,
),
),
),
'archive' => array(
array(
'GETvar' => 'tx_ttnews[year]' ,
),
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 (
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[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. Привет, Вимал, я был в отпуске, и завтра вечером я попробую вашу конфигурацию и дам вам ответ. Спасибо за ваш отзыв, и я надеюсь, что это будет полезно для моей проблемы.
2. хорошо, сначала попробуйте и дайте мне знать, работает решение или нет.
3. Спасибо, после этого я смог настроить указатель даты моего news-EXT. Это было полезно.