5

現在英語のサイトで plone.app.multilingual を動作させようとしていますが、部分的に翻訳される予定です。LinguaPlone がサポートしていないサイトで使用される Dexterity コンテンツ タイプのため、より馴染みのある LinguaPlone ではなく plone.app.multilingual を使用しています。

遊ぶためのテストサイトがあります。1 ページを翻訳するとすぐに、英語のコンテンツ用に /en フォルダーが作成され、(たとえば) フランス語用の /fr フォルダーが作成されるようです。ページの 2 つの言語バリアントを切り替えることはできますが、フランス語に切り替えると、他のすべての英語のページを表示できなくなります。サイトの訪問者として、これは役に立たず、ブラウザーがフランス語を優先するように設定されていても、英語も受け入れる可能性があるという事実を無視しています。デフォルトのサイト言語へのフォールバックを許可する関連オプションと思われるものを選択しました。ページの URL がわかっている場合は表示できますが、コンテンツがそこにあることがわからない場合はあまり役に立ちません。そもそも。

plone.app.multilingual を、ユーザーが自分の言語でなくてもコンテンツのページを表示できるようにすることはできますか? またはサイトを変換して Archetypes を使用する唯一のオプションですか?

ありがとう。

4

1 に答える 1

2

LinguaPlone はこのケースを同じように処理します。翻訳がある場合を除いて、すべてのコンテンツを「中立言語」にします。

すべてのコンテンツを「中立言語」とマークすることで、設定されている言語に関係なく、エンド ユーザーに表示されます。コンテンツに翻訳がある場合は、英語を選択した場合にのみ表示されるように、元のバージョンの言語として英語を設定する必要があります

これを行うには、おそらく へのサブスクライバーを使用できますplone.multilingual.events.IObjectTranslatedEvent

コンテンツの作成en/fr/場所については、アダプターのタスクですITranslationLocator( からplone.multilingual.interfaces、そのアダプターをオーバーライドして、独自の選択肢を提供できます。これが現在どのように機能するかについては、既定の実装を参照してください。

于 2012-06-30T06:33:02.297 に答える