Jurgen Vandw
Jurgen Vandw

Reputation: 651

Multilingual drupal website with views

I'm trying to make a multilingual website in Drupal. My languages that I need are german, dutch, english and french. I've added the i18n module and added the languages.

I work with views to show my content on the website. For the moment I have one page that I want to translate in the 4 languages. I've created a view for each translation. Now I want to link my view to the correct node. Therefore I use a view field in my content node.

PROBLEM: My problem lies in the url. The first time everything is fine. my url: localhost/?q=nl/activiteiten

Now when I select english in my language bar the language changes but not the url. my url: localhost/?q=en/activiteiten

Here "activiteiten" must be "activities". How do I solve this?

I've searched a while for this problem on the drupal forums but I can't seem to find a good solution to this problem. The only thing I've found is working with a view field in the content node or with input_views in the body of your node. These two won't work for me.

Upvotes: 1

Views: 1986

Answers (3)

wimvds
wimvds

Reputation: 12850

Well, just reading your own answer I think you've taken a wrong turn somewhere (or you're trying to do something else and I didn't quite catch on).

To create multilingual views for pages (which is what I think you want to do) you would first create a page view (duh), specify what you want to be shown and define a path to it. Then you enable (if it's not enabled already) the URL-alias ("URL-aliassen") module and define aliases for each language (ie. FR : activites - I don't like accents in URLs :p - NL : activiteiten, DE : aktivitaten - if memory serves me right anyway, again with accents removed :p). These aliases will be used as the path from that moment on.

For an article describing this process refer to : Translating Views paths in Drupal.

BTW You could also use the Pathauto module to create these aliases based on the title of your nodes of course instead of defining them manually, you can even (re)create them in batch when you alter the settings.

Upvotes: 0

Jurgen Vandw
Jurgen Vandw

Reputation: 651

Eventually I've solved my problem with a view field. I've made my view and in my node I've selected that view in the list. Then in the body you can type something for that language.

Upvotes: 0

Maquinante
Maquinante

Reputation: 46

i18 module with no need to create a view for each language, you have to translate content using the i18, then charge between changing the language. You can have problems from the beginning did not use the module all languages ​​declared, you have to edit each content and save it to associate it well.

Upvotes: 1

Related Questions