Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
28.08.2012, 13:28 | #1 |
Senior Member
Регистрация: 17.12.2009
Адрес: Moscow
Сообщений: 168
|
ReealUrl и tt_news. Опять
Всем хорошего настроения.
Случилось так, что настроенный конфиг RealURL (проработавший более года нормально), без внешнего вмешательства дал сбой. Т.к. проблему заметили слишком поздно, то откатить дамп не представляется возможным. Итак, что собственно произошло: на сайте установлен tt_news + RealUrl Setup: config { baseURL = http://domain.ru/ simulateStaticDocuments = 0 tx_realurl_enable = 1 xmlprologue = none doctype = xhtml_trans xhtmlDoctype = xhtml_trans index_enable = 1 index_externals = 1 forceCharset = utf-8 metaCharset = utf-8 renderCharset = utf-8 config.uniqueLinkVars = 1 linkVars = L sys_language_mode = content_fallback sys_language_overlay = 1 sys_language_uid = 0 sys_language_softMergeIfNotBlank = tt_content:image, tt_content:header htmlTag_langKey = ru-RU locale_all = ru_RU.UTF8 language = ru sys_language_uid = {$city.uid} disablePrefixComment = 1 no_cache = 0 defaultLanguage_nearCities = {$nearCities} prefixLocalAnchors = all } Localconf.php : $tx_realurl_config = array( 'init' => array( 'enableCHashCache' => true , 'appendMissingSlash' => 'ifNotFile,redirect[301]' , 'adminJumpToBackend' => true , 'enableUrlDecodeCache' => true , 'enableUrlEncodeCache' => true //, 'emptyUrlReturnValue' => true // Allow for proper SEO 404 handling , 'postVarSet_failureMode' => '' , 'reapplyAbsRefPrefix' => true // , 'doNotRawUrlEncodeParameterNames' => true ) , 'redirects' => array() , 'preVars' => array( array( 'GETvar' => 'no_cache' , 'valueMap' => array( 'nc' => 1 ) , 'noMatch' => 'bypass' ), ) , 'pagePath' => array( 'type' => 'user' , 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main' , 'spaceCharacter' => '-' , 'languageGetVar' => 'L' // , 'rootpage_id' => 3 , 'segTitleFieldList' => 'tx_realurl_pathsegment,alias,title,uid' , 'expireDays' => 1095 ) , 'fixedPostVars' => array() , 'postVarSets' => array( '_DEFAULT' => array( // параметры архива новостей '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', ) ) , array( 'GETvar' => 'tx_ttnews[day]' , 'noMatch' => 'bypass', ) , array( 'GETvar' => 'tx_ttnews[pS]' , 'noMatch' => 'bypass', ) , array( 'GETvar' => 'tx_ttnews[pL]' , 'noMatch' => 'bypass', ) ) // проводник по страницам новостей , 'p' => array( array( 'GETvar' => 'tx_ttnews[pointer]' ) ) // категории новостей , 'c' => array ( array( 'GETvar' => 'tx_ttnews[cat]' , 'lookUpTable' => array( 'table' => 'tt_news_cat' , 'id_field' => 'uid' , 'alias_field' => 'title' , 'addWhereClause' => ' AND deleted != 1' , 'useUniqueCache' => 1 , 'autoUpdate' => 1 , 'useUniqueCache_conf' => array( 'strtolower' => 1 ), ), ), ) // элементы новостей , 'article' => array( array( 'GETvar' => 'tx_ttnews[tt_news]' , 'lookUpTable' => array( 'table' => 'tt_news' , 'id_field' => 'uid' // Goolge нравиться уникальные названия , 'alias_field' => 'concat(title, " ", uid)' , 'addWhereClause' => ' AND deleted != 1' , 'useUniqueCache' => 1 , 'autoUpdate' => 1 , 'useUniqueCache_conf' => array( 'strtolower' => 1 , 'spaceCharacter' => '-' ) ) ) , array( 'GETvar' => 'tx_ttnews[swords]' ) ) , 'abp' => array( array( 'GETvar' => 'tx_ttnews[backPid]' ) ) , 'nq' => array( array( 'GETvar' => 'news_search[search_text]' ) ) , 'nqc' => array( array( 'GETvar' => 'news_search[category][]' ) ), ) ) , 'fileName' => array ( 'defaultToHTMLsuffixOnPrev' => 0, 'index' => array( // 'index.html' => array( // 'keyValues' => array( // 'type' => 0, // ) // ) 'print.html' => array( 'keyValues' => array( 'type' => 98, ) ) , 'text.html' => array( 'keyValues' => array( 'type' => 99, ) ) , '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, ) ) // ext:seo_basics overrides this , 'sitemap.xml' => array( 'keyValues' => array( 'type' => 776, ) ) , '_DEFAULT' => array( 'keyValues' => array() ) ) , 'acceptHTMLsuffix' => 1 ) ); Раньше ссылка на новость отображалась в формате: http://domain.ru/specpredlozhenija/n...e/news_name-N/ где N, уникальный номер новости, а теперь в формате: http:// domain.ru/specpredlozhenija/novosti/article/news_name //abp/74/ где 74 это ID страницы отображения полной новости. Собственно вопрос: где искать ошибку? |
28.08.2012, 15:41 | #2 |
Senior Member
|
Могли бы код разместить через соответствующий тэг, что бы глаза не ломать.
У вас у конфиге явно указано что сегмент 'abp' берется из 'tx_ttnews[backPid]. Код:
'abp' => array( array( 'GETvar' => 'tx_ttnews[backPid]' ) |
28.08.2012, 17:46 | #3 |
Senior Member
Регистрация: 17.12.2009
Адрес: Moscow
Сообщений: 168
|
Просмотрел все возможные настройки для tt_news и ничего влияющего на отображение ID (для Single), в ссылке не нашел.
|
28.08.2012, 17:58 | #4 |
Senior Member
|
Где же вы смотрели? Там целая куча параметров влияющих на формирование ссылки на Single. Например вот такой:
Код:
plugin.tt_news { dontUseBackPid = 1 } |
29.08.2012, 13:34 | #5 |
Senior Member
Регистрация: 17.12.2009
Адрес: Moscow
Сообщений: 168
|
Смотрел в сетапе, смотрел в localconf.php, смотрел в Constant Editor, смотрел в "Расширения - tt_news". Ничего не указывает на то, почему вылез этот кусок в урле. Все эти настройки работают на других сайтах и все прекрасно. Переустанавливал и менял версию tt_news на более новую - не помогло. Смотрел также "Инфо - Tsconfig страницы" у страницы с Single - ничего похожего на настройки для отображения дополнительного пути в ссылках не нашел (скорее всего знаний не хватает). Что касается
plugin.tt_news { dontUseBackPid = 1 } то удаление этого кода не урл не влияет. Все эти конфиги tt_news отлично работают на других сайтах. Пошел кривым путем и теперь отсекаю лишнее в ссылке, путем удаления конфига в RealUrl. Пока исправил двойной слеш на одинарный, удалив , array( 'GETvar' => 'tx_ttnews[swords]' ) Как удалить /abp/n/ где n id страницы с Single, ума не приложу |
29.08.2012, 13:46 | #6 |
Senior Member
|
Это задается в TS Setup шаблоне, с помощью TypoScript. В других местах смотреть не нужно.
Код plugin.tt_news.dontUseBackPid = 1 вам нужно не убрать, а добавить! Иначе tt_news добавляет к ссылке Single параметр tx_ttnews[backPid], который RealURL кодирует в /abp/n/ согласно заданного для RealURL конфига. Вот такой код задан по умолчанию в статичном шаблоне tt_news (typo3conf\ext\tt_news\pi\static\ts_new\setup.txt) Код:
# don't add plugin GETvars to the singleview link dontUseBackPid = 1 |
29.08.2012, 14:39 | #7 |
Senior Member
Регистрация: 17.12.2009
Адрес: Moscow
Сообщений: 168
|
Прошу прощения за невнимательность. Меня смутило, что всего два варианта id страниц за /abp/ я подумал, что это страницы Single где отображаются новости двух разных категорий, а это оказались страницы где эти новости выводятся списком (в одном случае LIST, в другом LATEST), причем на странице LIST имеются ВСЕ новости и выводятся как новости с одним id после /abp/ , так и с другим. А на странице с LATEST выводятся все новости с id страницы, где отображаются новости LIST. также страница где отображается LIST, является страницей где хранятся все записи новостей.
Вот такой вот детектив. |
03.09.2012, 18:10 | #8 |
Senior Member
Регистрация: 17.12.2009
Адрес: Moscow
Сообщений: 168
|
Я так понимаю, что никто с похожим не сталкивался и это я такой особенный. Но может кто подскажет как в кофиге RealUrl убрать этот самый /abp/id/ ???
|
03.09.2012, 18:57 | #9 |
Senior Member
|
О господи! Вы наверное такой особенный что не видите о чем я вам пишу уже несколько раз! RealUrl тут вообще не причем, вам нужно править конфиг tt_news. |
04.09.2012, 16:58 | #10 |
Senior Member
Регистрация: 17.12.2009
Адрес: Moscow
Сообщений: 168
|
Спасибо большое. Заработало нормально. Вставлял "plugin.tt_news.dontUseBackPid = 1"сначала в общий Setup сайта, потом на страницы с LIST и LATEST, потом на страницу с хранилищем новостей - не помогало. Затем вставил везде сразу - и все отлично заработало.
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Опять "Файловые ссылки". | Antony_A | Общие вопросы | 15 | 01.11.2010 12:00 |
И опять кракозябры… | logovas | Общие вопросы | 27 | 03.04.2007 14:48 |
ОПЯТЬ Русский язык в Typo3 v4 | DeCibell | Установка | 7 | 02.08.2006 21:20 |
Опять хостинг - сколько коннектов к мускулу? | testuser | TYPO3 хостинг | 3 | 19.08.2005 02:10 |
опять indexed search | massimo | Общие вопросы | 1 | 06.03.2005 01:43 |