2014-12-02 2 views
1

나는 이것이 내가 바라보고있는 간단한 무엇인가 바라고있다. 우리는 인 Plone 사이트 3 개를 가지고 있는데,은 코어 설치에서 정확히 동일하고 설치된 특정 제품 및 실제 내용과 다를뿐입니다. 우리 번역이 다른 사이트가 아니라 한 사이트에서만 작동하고있는 것을 보았습니다. 지금까지 나는 어떤 차이점을 찾을 수 없습니다.Plone Translations - i18ndude Preferred Language

Plone 4.3.2에서 i18ndude (버전 3.3.3)를 사용하고 있습니다. 우리는 자체 도메인을 가진 맞춤형 제품/유형을 보유하고 있지만 작동하지 않는 것 이상의 것이 사이트의 모든 것입니다.

테스트를 위해 브라우저의 언어를 잡아서 인쇄 해 보았습니다. 나는 context.REQUEST['LANGUAGE']context.portal_languages.getPreferredLanguage()을 모두 사용했습니다. 나는 우리가 현재 지원하고있는 언어 인 'es', 'en'및 'pt'를 시도 할 때마다 브라우저 언어를 설정합니다. 각 사이트의 사이트 언어는 영어로 설정됩니다. 여기에 내 테스트 결과가 있습니다 :

Browser Language set to 'es': 
Site A: returned 'es' 
Site B: returned 'en' 
Site C: returned 'en' 

Browser Language set to 'en': 
Site A: returned 'en' 
Site B: returned 'en' 
Site C: returned 'en' 

Browser Language set to 'pt': 
Site A: returned 'en' 
Site B: returned 'en' 
Site C: returned 'en' 

사이트 A와 B는 모두 같은 서버에 있으므로 누락 된 서버 패키지를 믿지 않습니다. 빌드 아웃은이 둘에 대해 거의 동일하지만 차이점은이 문제와 관련이없는 몇 개의 알에만 불과합니다.

왜 나는 업데이트 된 브라우저 언어를 전혀 감지하지 못하는지 이해하지 못합니다. 사이트의 기본 설정 언어로 되돌아갑니다. 한 사이트에서 하나의 시나리오 제외. 이상한 점은 이것들이 모두 내가 아는 한 잘 작동하는 데 사용되었으며, 언제 멈추게되었는지 확신 할 수 없습니다.

내가 사용하고있는 것들이 거기에 있는지 확인하기 위해 context.portal_languages.getAvailableLanguages()을 확인했습니다. 또한 로케일 & i18n 디렉토리의 소유권과 사용 권한을 확인했습니다. 사이트 전체에서 일치하고 정확하게 설정되었습니다. 먼저 가장 높은 우선 순위별로 나열이 실행시

pl = context.portal_languages 
langs = [str(language) for language in pl.getAvailableLanguages().keys()] 
print langs 
print "Preferred: ", pl.getPreferredLanguage() 

ts = context.translation_service 
print "Request Language: ", context.REQUEST['LANGUAGE'] 
print "Accept Language: ", context.REQUEST['HTTP_ACCEPT_LANGUAGE'] 

return printed 

이 내 브라우저 언어 설정입니다 :

편집

이 내가 빨리 플론 (Plone)가 점점 무엇을 모든 값을보고 쓴 스크립트입니다 :

  1. PT-BR
  2. PT
  3. ES
  4. EN-US

그리고 이것은 내 결과 (포르투갈어 스페인어를 인식하는 것 같다 사이트 A, 아니지만)입니다 : 사이트에 대한

['gv', 'gu', 'gd', 'ga', 'gn', 'gl', 'lg', 'lb', 'ty', 'ln', 'tw', 'tt', 'tr', 'ts', 'li', 'tn', 'to', 'tl', 'lu', 'tk', 'th', 'ti', 'tg', 'as', 'te', 'ta', 'yi', 'yo', 'de', 'ko', 'da', 'dz', 'dv', 'qu', 'kn', 'lv', 'el', 'eo', 'en', 'zh', 'ee', 'za', 'uk', 'eu', 'zu', 'es', 'ru', 'rw', 'kl', 'rm', 'rn', 'ro', 'bn', 'be', 'bg', 'ba', 'wa', 'wo', 'bm', 'jv', 'bo', 'bh', 'bi', 'br', 'bs', 'ja', 'om', 'oj', 'la', 'oc', 'kj', 'lo', 'os', 'or', 'xh', 'ch', 'co', 'ca', 'ce', 'cy', 'cs', 'cr', 'cv', 'cu', 'ps', 'pt', 'lt', 'pa', 'pi', 'ak', 'pl', 'hz', 'hy', 'an', 'hr', 'am', 'ht', 'hu', 'hi', 'ho', 'ha', 'he', 'mg', 'uz', 'ml', 'mo', 'mn', 'mi', 'mh', 'mk', 'ur', 'mt', 'ms', 'mr', 'ug', 'my', 'ki', 'aa', 'ab', 'ae', 've', 'af', 'vi', 'is', 'vk', 'iu', 'it', 'vo', 'ii', 'ay', 'ik', 'ar', 'km', 'io', 'et', 'ia', 'az', 'ie', 'id', 'ig', 'ks', 'nl', 'nn', 'no', 'na', 'nb', 'nd', 'ne', 'ng', 'ny', 'kw', 'nr', 'nv', 'kv', 'fr', 'ku', 'fy', 'fa', 'kk', 'ff', 'fi', 'fj', 'ky', 'fo', 'ka', 'kg', 'ss', 'sr', 'sq', 'sw', 'sv', 'su', 'st', 'sk', 'kr', 'si', 'sh', 'so', 'sn', 'sm', 'sl', 'sc', 'sa', 'sg', 'se', 'sd'] 
Preferred: es 
Request Language: es 
Accept Language: pt-br,pt;q=0.8,es;q=0.6,en;q=0.4,en-us;q=0.2 

및 결과 B와 C :

['en-mp', 'gv', 'gu', 'fr-dj', 'fr-gb', 'en-na', 'en-ng', 'en-nf', 'zh-hk', 'gd', 'pt-br', 'ga', 'gn', 'gl', 'en-nu', 'en-fm', 'en-ag', 'ms-my', 'ty', 'tw', 'tt', 'tr', 'ts', 'ko-kp', 'tn', 'to', 'tl', 'tk', 'th', 'ti', 'tg', 'te', 'zh-sg', 'ta', 'fr-mq', 'de', 'da', 'ar-ae', 'es-ni', 'dz', 'en-kn', 'fr-ml', 'dv', 'en-ms', 'fr-mg', 'fr-sc', 'fr-vu', 'qu', 'ar-qa', 'es-bo', 'en-nz', 'fr-bj', 'en-ws', 'fr-bi', 'zh', 'en-lr', 'fr-ch', 'fr-bf', 'za', 'fr-be', 'en-lc', 'fr-rw', 'zu', 'ch-mp', 'ar-ly', 'en-gb', 'en-nr', 'es-pr', 'tr-bg', 'en-gh', 'en-gi', 'fr-km', 'es-py', 'en-gm', 'es-pe', 'es-pa', 'en-gu', 'en-gy', 'sw-tz', 'ms-sg', 'wa', 'pt-st', 'wo', 'pt-ao', 'jv', 'fr-cd', 'ja', 'en-vu', 'es-ar', 'fr-td', 'fr-tg', 'da-dk', 'ch', 'co', 'en-vg', 'en-bz', 'ca', 'en-us', 'ce', 'en-ai', 'en-bm', 'en-vi', 'cy', 'en-bn', 'cs', 'cr', 'fr-ci', 'cv', 'cu', 'en-bb', 'ps', 'ln-cg', 'pt', 'en-au', 'zh-tw', 'es-mx', 'de-de', 'pa', 'es-ve', 'en-as', 'en-er', 'pi', 'de-dk', 'pl', 'en-sb', 'ch-gu', 'es-hn', 'en-sc', 'fr-nc', 'it-hr', 'ar-eg', 'mg', 'pt-pt', 'ml', 'mo', 'mn', 'mi', 'mh', 'mk', 'mt', 'ms', 'mr', 'fr-fr', 'hu-si', 'my', 'sv-fi', 'fr-re', 'en-pk', 've', 'vi', 'is', 'vk', 'iu', 'it', 'vo', 'ii', 'ik', 'en-io', 'fr-cm', 'io', 'ia', 'ie', 'id', 'ig', 'es-cu', 'hu-hu', 'es-cr', 'es-cl', 'es-co', 'fr-wf', 'pt-mz', 'en-il', 'it-it', 'de-be', 'fr', 'en-ke', 'fr-ga', 'fr-pf', 'es-do', 'ar-ps', 'fy', 'fr-gn', 'fr-pm', 'en-ki', 'en-ug', 'fa', 'fr-gp', 'ff', 'fi', 'fj', 'fo', 'ar-kw', 'bn-sg', 'ss', 'sr', 'sq', 'sw', 'sv', 'su', 'st', 'sk', 'si', 'sh', 'so', 'sn', 'sm', 'sl', 'sc', 'sa', 'sg', 'se', 'sd', 'bn-in', 'fr-mc', 'sv-se', 'ar-bh', 'lg', 'lb', 'la', 'ln', 'lo', 'ss-za', 'li', 'lv', 'lt', 'lu', 'sw-ke', 'en-bw', 'yi', 'en-ph', 'en-pn', 'yo', 'en-ie', 'en-pg', 'pt-cv', 'hr-ba', 'bn-bd', 'en-pr', 'en-pw', 'ss-sz', 'ar-iq', 'de-ch', 'ar-il', 'es-sv', 'el', 'eo', 'en', 'ar-dz', 'ee', 'tn-bw', 'es-gq', 'fr-gf', 'es-gt', 'eu', 'et', 'de-lu', 'es', 'ru', 'rw', 'zh-cn', 'ar-td', 'nl-nl', 'it-sm', 'it-si', 'rm', 'rn', 'ro', 'ar-sa', 'be', 'bg', 'ur-pk', 'ba', 'fr-ca', 'bm', 'bn', 'bo', 'bh', 'bi', 'fr-cg', 'fr-cf', 'es-us', 'el-cy', 'en-vc', 'sd-pk', 'ta-sg', 'br', 'bs', 'nl-an', 'sd-in', 'cs-cz', 'om', 'oj', 'fr-lb', 'en-fk', 'en-fj', 'oc', 'ln-cd', 'fr-lu', 'ar-om', 'de-at', 'os', 'or', 'tr-cy', 'xh', 'el-gr', 'de-li', 'ar-sy', 'en-jm', 'es-ec', 'ar-so', 'it-ch', 'en-ls', 'ar-sd', 'es-es', 'en-rw', 'tn-za', 'ar-jo', 'en-ky', 'en-bs', 'hz', 'ar-ma', 'da-gl', 'hy', 'en-mt', 'en-mu', 'nl-aw', 'en-mw', 'hr', 'en-tt', 'en-zw', 'ht', 'hu', 'en-to', 'ar-mr', 'hi', 'en-tk', 'ho', 'hr-hr', 'ha', 'en-tc', 'pt-gw', 'he', 'en-dm', 'fr-it', 'uz', 'en-et', 'ur-in', 'ur', 'tr-tr', 'uk', 'ms-bn', 'ug', 'aa', 'en-so', 'en-sl', 'ab', 'ae', 'en-sh', 'af', 'en-sg', 'ak', 'am', 'ko-kr', 'an', 'as', 'ar', 'en-sz', 'nl-be', 'ay', 'az', 'ar-lb', 'nl', 'nn', 'no', 'na', 'nb', 'nd', 'ne', 'ng', 'ny', 'ta-in', 'fr-yt', 'en-za', 'nr', 'nv', 'ar-ye', 'ar-tn', 'en-cm', 'en-ck', 'sr-ba', 'en-ca', 'ka', 'kg', 'en-gd', 'es-uy', 'kk', 'kj', 'ki', 'ko', 'kn', 'km', 'kl', 'ks', 'kr', 'fr-ad', 'kw', 'kv', 'ku', 'en-zm', 'ky', 'fr-ht', 'nl-sr'] 
Preferred: en 
Request Language: en 
Accept Language: pt-br,pt;q=0.8,es;q=0.6,en;q=0.4,en-us;q=0.2 

나는 방금 사용 가능한 언어 목록 portal_languages의 예는 해당 사이트에 따라 다릅니다. 이상한 것에 추가하는 것, 그러나 아마도 범인에 대한 암시?

죄송합니다. 긴 게시물을 보내 주시면 최대한 많은 정보를 제공하려고 노력하고 있습니다.

답변

1

내가 간과하고있는 것이 무언가 간단하다는 의심이 옳았다. 내 찾기를 게시 여기에.

는 ZMI에서 portal_languages으로 이동하여 설정을 확인 :
  • 허용 언어
    • 지원되는 모든 언어를 선택해야합니다

      • 기본 언어.
    • 은 협상 제도는
      • 이 있는지 "를 사용하여 브라우저 언어 요구 협상"
    • 체크되어 있는지 확인

    내 문제에만 기본 언어허용 언어에서 선택한 것을 선택 목록. 왜 이런 식으로 다시 설정되는지 잘 모르겠습니다. 언어 설정 제어판을 사용할 때 허용 된 언어 옵션이 표시되지 않으면 ZMI로 이동해야했습니다.

    hvelarde에 의해 언급 된 변경 사항은이 설정을 업데이트하지 않았습니다.

  • 0

    빌드 아웃의 인스턴스 부분에서 환경 변수 zope_i18n_allowed_languages을 검색하십시오. 이것은 po 파일이로드되는 언어를 제한하여 Zope 시작 시간을 높이고 더 적은 메모리를 사용하기 위해 사용됩니다. 다음과 같이 경우

    , 당신은 그것을 설정해야합니다

    [instance] 
    ... 
    environment-vars = 
        PTS_LANGUAGES en es pt 
        zope_i18n_allowed_languages en es pt 
        zope_i18n_compile_mo_files true 
    

    자세한 내용은 Maurits 반리스 'Internationalization in Plone 3.3 and 4.0를 확인합니다.

    +0

    각 인스턴스에 해당 변수를 추가하고 기본 실행 후 다시 시작했습니다. 아무것도 변하지 않았다. 사이트가 아직 번역되지 않고 있으며, 스크립트에서 브라우저 언어가 'en'으로 표시됩니다. 자세한 내용은 내가 실행중인 정확한 스크립트로 내 게시물을 편집합니다. – rain2o

    +0

    좋아, 나는 내가 오해하고있는 것 같아. 사이트 설정에서 사이트 언어가 영어로 설정되어 있지만 모든 제품과 위의 환경 변수에 스페인어 번역본을 제공하는 경우 사용자가 스페인어로 설정된 브라우저 언어로 내 사이트를 방문하면 스페인어로 표시되어야합니다. – rain2o

    +0

    내가 기억하는 것은'portal_languages' 도구를 어떻게 사용자 정의 했느냐에 달려 있지만 ZMI 안에 들어가야한다. Plone 레벨에 노출되지 않은 구성이 있습니다. –