2013-03-21 57 views
2

我使用此配置跟隨HTML5boilerplate。TYPO3:lang屬性在html標記中已更改(HTML5boilerplate樣式)

config{ 
    doctype = html_5 

    doctype(
     <!doctype html> 
     <!--[if lt IE 7 ]> <html lang="de" class="no-js ie6"> <![endif]--> 
     <!--[if IE 7 ]> <html lang="de" class="no-js ie7"> <![endif]--> 
     <!--[if IE 8 ]> <html lang="de" class="no-js ie8"> <![endif]--> 
     <!--[if IE 9 ]> <html lang="de" class="no-js ie9"> <![endif]--> 
     <!--[if (gt IE 9)|!(IE)]><!--> 
    ) 
    htmlTag_setParams = lang="de" class="no-js no-ie"><!--<![endif]-- 
} 

問題是,當我有一個網站有幾種替代語言時,lang屬性不會更新。

有沒有人有一個想法如何解決這個問題?

+0

只是爲了記錄:paul irish html標籤也可以在「pageRendererTemplateFile」中設置,從typo3/sysext/cms/tslib/templates/tslib_page_frontend.html複製並通過config.pageRendererTemplateFile進行設置。我第一次以爲它會解決你的問題,但我不知道如何訪問這個模板中的標記(有很多,但可能你不能添加你自己的) – Urs 2013-03-22 20:42:04

回答

2

使用普通TS條件設置你可能使用了用於切換語言的正確config.htmlTag_setParams ...

[globalVar = GP:L = 1] 
    config.sys_language_uid = 1 
    config.language = en 
    config.htmlTag_setParams = lang="en" class="no-js no-ie"><!--<![endif]-- 
[GLOBAL] 
+0

是的,我想到了,但似乎很多重複的代碼,因爲語言的數量可能會增長很多。有沒有像{page:language}和insertData之類的解決方案?我知道那些人不工作,可悲的是... – 2013-03-21 14:20:52

1

也許相當多以前,但我會回答的Google員工。 除了@ biesior對條件的建議之外,還可以使用常量來避免不必要的重複代碼。

設置:

config { 
    doctype (
    <!--[if lt IE 7 ]> <html lang="{config.language}" class="no-js ie6"> <![endif]--> 
    ... 
    ) 
} 

常量:

[globalVar = GP:L = 1] 
    config { 
     language = en 
    } 
[global] 
[globalVar = GP:L = 2] 
    config { 
     language = de 
    } 
[global] 
... 
3

嘗試:

config { 

    htmlTag_stdWrap { 
    setContentToCurrent = 1 
    cObject = COA 
    cObject { 
     appendMeTemp = TEXT 
     appendMeTemp.append = TEXT 
     appendMeTemp.append.char = 10 
     appendMeTemp.current = 1 

     // IE7 
     20 < .appendMeTemp 
     20.addParams.class = ie ie7 
     20.wrap = <!--[if IE 7 ]>|<![endif]--> 

     // IE8 
     30 < .appendMeTemp 
     30.addParams.class = ie ie8 
     30.wrap = <!--[if IE 8 ]>|<![endif]--> 

     // IE9 
     40 < .appendMeTemp 
     40.addParams.class = ie ie9 
     40.wrap = <!--[if IE 9 ]>|<![endif]--> 

     60 < .appendMeTemp 
     60.wrap = <!--[if (gte IE 9)|!(IE)]> # <![endif]--> 
     60.wrap.splitChar = # 
     } 
    }   
} 

然後標準:

config { 
    htmlTag_langKey = de 
}