Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > TypoScript практикум

Ответ
 
Опции темы Опции просмотра
Старый 18.08.2007, 16:01   #1
jax
Продвинутый
 
Аватар для jax
 
Регистрация: 28.02.2006
Сообщений: 61
Отправить сообщение для jax с помощью ICQ Отправить сообщение для jax с помощью Skype™
По умолчанию RealURL и многоязычный сайт

Имеем typo3 сайт с 3 языками в одном дереве. Сайт доступен под 3 разными доменами: www.domain.com, www.domain.de и www.domain.ru. Первый показывает контент на английском, второй - немецком и третий на рксском соответственно.
Реализавано сие через следующий TS:
Код:
[globalString= IENV:HTTP_HOST = *domain.de]
config.sys_language_uid = 1
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de
config.baseURL = {$baseURL_DE}
...
[global]
Работает отлично, нареканий нет.
Далее подключаем RealURL:
Код:
...
        'pagePath' => array(
                'type' => 'user',
                'rootpage_id' => 52,
                'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
                'spaceCharacter' => '-',
                'languageGetVar' => 'L',
                'expireDays' => 15
...
И тут возникает проблема в том, что имена для страниц class.tx_realurl_advanced берет всегда английские (defaul язык), т.к. в моем слючае переменная L в GET всегда не определена (язык меняется исключительно в TS на основании значения HTTP_HOST, см. выше).

Как можно разрешить эту проблему?
jax вне форума   Ответить с цитированием
Старый 18.08.2007, 22:13   #2
jax
Продвинутый
 
Аватар для jax
 
Регистрация: 28.02.2006
Сообщений: 61
Отправить сообщение для jax с помощью ICQ Отправить сообщение для jax с помощью Skype™
По умолчанию

Пока получилось сделать немного через ж...

В localcof.php дабавил такой код:
Код:
if (!isset($_GET['L'])) { 
    if ( stripos($_SERVER['HTTP_HOST'], '.de') <> false ) 
        $_GET['L']=1; 
}
Правда есть побочный эффект ко всем ссылкам теперь добавляется ?L=1. Так, что скорее всего надо писать свой userFunction
jax вне форума   Ответить с цитированием
Старый 18.08.2007, 22:27   #3
Valery Romanchev
Administrator
 
Аватар для Valery Romanchev
 
Регистрация: 23.08.2003
Адрес: Moscow, Russia
Сообщений: 1,926
Отправить сообщение для Valery Romanchev с помощью Skype™
По умолчанию

Я не давно ответил в листе рассылки.
Сделал точно также

?L=1 - к ссылкам не добавляется. Из-за настроек RealURL
Цитата:
array(
'GETvar' => 'L',
'noMatch' => 'bypass',
),


My site runs on two languages that are attached to a domain each.

Like this:

domain.dk: danish (default language)
domain.com: english
I have this configured on
www.wciom.ru
www.wciom.com



1) I put in index.php (I think possible to put this in localconf.php)

if (!isset($_GET['L'])) {

if ($_SERVER['HTTP_HOST'] == 'wciom.ru') $_GET['L']=0;
if ($_SERVER['HTTP_HOST'] == 'wciom.com'|| $_SERVER['HTTP_HOST'] == 'www.wciom.com' ) {

$_GET['L']=1;
}
}


2) TS

#-----------------------------------------------------------------------
# Language
#-----------------------------------------------------------------------

#config.sys_language_mode = content_fallback
config.sys_language_mode = strict

config.sys_language_overlay = hideNonTranslated
config.sys_language_overlay = 1
config.sys_language_softMergeIfNotBlank = tt_content:image, tt_content:header


# defining the default language
config{
sys_language_uid = 0
language = ru
locale_all = ru_RU
htmlTag_langKey = ru
}

# Setting up the language variable "L" to be passed along with links
config.linkVars = L
[globalVar = GP:L = 0]
config{
sys_language_uid = 0
language = ru
locale_all = ru_RU
htmlTag_langKey = ru
}
[global]

[globalVar = GP:L = 1]
config{
sys_language_uid = 1
language = en
locale_all = en_En
htmlTag_langKey = en
}
[global]



#--------------------------------------------------------
# RealURL
#--------------------------------------------------------

config {
baseURL = http://wciom.ru/
}

[globalString = ENV:HTTP_HOST=*wciom.com]
config.baseURL = http://wciom.com/
[global]

[globalVar = GP:L = 1]
config.baseURL = http://wciom.com/
[global]



3) RealURL

$TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tstemplate.php'] ['linkData-PostProc'] [] =
'EXT:realurl/class.tx_realurl.php:&tx_realurl->encodeSpURL';

$TYPO3_CONF_VARS['SC_OPTIONS'] ['tslib/class.tslib_fe.php'] ['checkAlternativeIdMethods-PostProc'] [] =
'EXT:realurl/class.tx_realurl.php:&tx_realurl->decodeSpURL';

$TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables']
['tx_realurl_urldecodecache'] = 'tx_realurl_urldecodecache';

$TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables']
['tx_realurl_urlencodecache'] = 'tx_realurl_urlencodecache';
$TYPO3_CONF_VARS['FE'] ['addRootLineFields'] .= ',tx_realurl_pathsegment,alias,nav_title,title';



$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
'init' => array(
'enableCHashCache' => 1,
'appendMissingSlash' => 'ifNotFile',
'enableUrlDecodeCache' => 0,
'enableUrlEncodeCache' => 1,
'respectSimulateStaticURLs' => 0,
'postVarSet_failureMode'=>'redirect_goodUpperDir',
),
'redirects_regex' => array (

),
'preVars' => array(

/*
array(
'GETvar' => 'no_cache',
'valueMap' => array(
'no_cache' => 1,
),
'noMatch' => 'bypass',
),
*/
array(
'GETvar' => 'L',
// 'valueMap' => array( 'en' => '1', ),
'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,
),



'postVarSets' => array(


'_DEFAULT' => array(
/**********************/
// news archive parameters

// news pagebrowser
'all' => array(
array(
'GETvar' => 'tx_ttnews[all]',
),
),

'ntype' => array(
array(
'GETvar' => 'tx_ttnews[typeOfNews]',
),
),


// news pagebrowser
'browse' => array(
array(
'GETvar' => 'tx_ttnews[pointer]',
),
),

// news categories
'select_category' => array (
array(
'GETvar' => 'tx_ttnews[cat]',
),
),
// news articles and searchwords

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

),

// '99' => '_DEFAULT',

/*******************************/

),

'fileName' => array(
'defaultToHTMLsuffixOnPrev'=>1,
'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,
),
),
),
),
);


$TYPO3_CONF_VARS['EXTCONF']['realurl']['wciom.ru'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['wciom.ru']['pagePath']['rootpage_id']= 1;
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.wciom.ru'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.wciom.ru']['pagePath']['rootpage_id']= 1;


$TYPO3_CONF_VARS['EXTCONF']['realurl']['wciom.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['wciom.com']['pagePath']['rootpage_id']= 1;

$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.wciom.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.wciom.com']['pagePath']['rootpage_id']= 1;




Regards,
Valery
www.typo3lab.ru
__________________
Веб-студия ТТЛАБ
www.ttlab.ru
Valery Romanchev вне форума   Ответить с цитированием
Старый 19.08.2007, 01:59   #4
jax
Продвинутый
 
Аватар для jax
 
Регистрация: 28.02.2006
Сообщений: 61
Отправить сообщение для jax с помощью ICQ Отправить сообщение для jax с помощью Skype™
По умолчанию

Минут 20 назад нашел это сообщение в рассылке
Спасибо за ответ
jax вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Редиректы в RealURL и .htaccess AleXUnder Общие вопросы 4 08.08.2007 11:00
Многоязычный сайт с нуля norn Общие вопросы 4 30.06.2007 05:13
RealUrl - смена хоста Alexa Общие вопросы 4 13.04.2007 11:20
как я делал сайт с Imgmenu Alek-Tronic TypoScript практикум 4 19.10.2006 14:02
многоязычный сайт jax Общие вопросы 1 24.09.2006 14:43


Часовой пояс GMT +4, время: 15:54.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория