2012-06-29 15 views
5

मैं एक साइट है जो अंग्रेजी में है के साथ काम करने plone.app.multilingual पाने के लिए कोशिश कर रहा हूँ, लेकिन आंशिक रूप से अनुवाद हो जाएगा। मैं नहीं बल्कि क्योंकि निपुणता सामग्री साइट है जो LinguaPlone का समर्थन नहीं करता द्वारा इस्तेमाल किया प्रकार के अधिक परिचित LinguaPlone से plone.app.multilingual उपयोग कर रहा हूँ।आंशिक रूप से अनुवादित साइटों के लिए plone.app.multilingual काम कर सकते हैं?

मेरे पास खेलने के लिए एक परीक्षण साइट है। जैसे ही मैं एक पृष्ठ का अनुवाद करता हूं, ऐसा लगता है कि यह अंग्रेजी सामग्री के लिए एक/एन फ़ोल्डर और फ्रेंच के लिए (उदा।)/Fr एक बनाता है। मैं आगे और पीछे पृष्ठ के दो भाषा वेरिएंट बीच स्विच कर सकते, लेकिन एक बार मैं फ्रेंच भाषा में हूँ मैं अन्य सभी अंग्रेजी पृष्ठों नहीं देख सकता। साइट विज़िटर के रूप में इसका कोई उपयोग नहीं होता है और यह इस तथ्य को अनदेखा करता है कि हालांकि ब्राउज़र को फ्रेंच पसंद करने के लिए सेट किया जा सकता है, लेकिन यह अंग्रेजी स्वीकार भी कर सकता है। मैं चयन किया है कि मैं क्या प्रासंगिक विकल्प डिफ़ॉल्ट साइट भाषा को वापस आने की अनुमति देने के होने के लिए विश्वास करते हैं और यह मुझे उन्हें देख अगर मैं पृष्ठ का URL पता देता है, लेकिन इतना उपयोग करता है, तो मैं नहीं दिख रहा है कि सामग्री है नहीं है पहली जगह में।

plone.app.multilingual इस तरह से है कि एक उपयोगकर्ता कुछ भाषा में सामग्री की एक पृष्ठ देख सकते हैं, भले ही वह अपने स्वयं के नहीं है, या अपने ही उपयोग करने के लिए साइट बदलने का विकल्प है में काम करने के लिए बनाया जा सकता है आद्यरूप?

धन्यवाद।

उत्तर

2

लिंगुआप्लोन इस मामले को उसी तरह से संभाल लेगा: सभी सामग्री 'भाषा तटस्थ' बनाएं, सिवाय इसके कि कोई अनुवाद कहां है।

अपनी सभी सामग्री 'भाषा तटस्थ' को चिह्नित करके, यह अंतिम उपयोगकर्ता को मिलेगा और प्रदर्शित होगा चाहे कोई भी भाषा वरीयता निर्धारित न हो। अब, यदि आपकी कोई भी सामग्री अनुवाद है, तो आपको मूल संस्करण के लिए भाषा के रूप में अंग्रेजी सेट करने की आवश्यकता है ताकि यह केवल अंग्रेज़ी के चयन के दौरान प्रदर्शित किया जा सके।

ऐसा करने के लिए, आप शायद plone.multilingual.events.IObjectTranslatedEvent पर एक ग्राहक का उपयोग कर सकते हैं।

अपनी सामग्री के लिए en/ और fr/ स्थानों के निर्माण का सवाल है, कि ITranslationLocator अनुकूलक का कार्य है (plone.multilingual.interfaces से, आप पाएंगे कि अनुकूलक अपने खुद के विकल्प प्रदान करने ओवरराइड कर सकते हैं। इस की क्रियाविधि के लिए default implementations देखें।

+0

इस उत्तर के लिए धन्यवाद। मुझे वास्तव में कोई फर्क नहीं पड़ता कि सामग्री तब तक रखी जाती है जब तक लोग इसे देख सकें, हालांकि मुझे नहीं लगता कि यह कैसे हो सकता है कि एक बार जब आप अंदर हों/fr/आप बाहर कोई सामग्री देखेंगे - ऐसा लगता है कि साइट की जड़ उस बिंदु पर सेट है। –

+0

इसका एक उदाहरण - मेरे पास "भाषा तटस्थ" घटनाएं और समाचार है जो सभी को दिखाई देता है यदि मैं साइट रूट देख रहा हूं (जो कठिन है क्योंकि यह मुझे रीडायरेक्ट करना चाहता है करने के लिए /), हालांकि, जो भी भाषा मैं चुनता हूं, मैं केवल उस भाषा की उपनिर्देशिका की सामग्री देखूंगा। मुझे इस उपयोग के साथ काम करने में कोई फर्क नहीं पड़ता, लेकिन फिलहाल मैं नहीं देखता कि यह किसी के लिए कैसे काम करेगा। –

+0

@RichardW: यह नेविगेशन रूट के रूप में सेट है, और खोज स्वचालित रूप से उस के लिए विवश है। –