Aller au contenu

Drupal 7 et le multilinguisme


MarvinLeRouge

Sujets conseillés

Salut,

Je suis un newbie en Drupal, et j'ai de petits pbs de multilinguisme :

Question 1

  • sur ma page d'accueil, j'ai un bloc qui contient les 3 dernières actus, ainsi qu'un lien vers "toutes les actus"
  • je souhaite que l'intitulé et l'url de ce lien tienne compte du multilinguisme. Ex : href="/en/news", intitulé "All the news" si on est en anglais, href="/fr/actualites", intitulé "Toutes les actualités" si on est en français

$news_by_nid = drupal_lookup_path("source", "actualites", "fr");
$news_path = $language->language . "/" . drupal_get_path_alias($news_by_nid, $language->language);

J'ai cherché à récupérer le node id de la page en question dans une langue donnée grâce à drupal_lookup_path, et drupal_get_path_alias pour avoir le chemin équivalent dans la langue courante, mais apparemment je m'y prends mal, vu que ceci ne marche que pour la langue fournie à drupal_lookup_path.

Je suppose que c'est dû au fait que la page actus a un node id différent dans chaque langue.

Question 2 :

La page qui liste les actualités est logiquement une vue, puisque c'est une synthèse. Mais dois-je considérer que c'est une page standard (et multilingue), avec un titre notamment, qui inclut une vue (la liste des articles), OU que c'est une vue tout court (auquel cas comment gérer le problème de l'alias d'url différent suivant la langue) ?

Question 3 :

Je souhaite que la page qui liste les produits ait une pagination un peu spéciale; si le nombre total d'items est impair, c'est en page 1 qu'il doit y avoir un nombre impair (mettons 9) produits, et le premier doit être sur 2 colonnes (grâce à la classe css qui va bien). Comment obtenir ça, sachant que j'ai déjà eu l'occasion de tester le système de templates sur les vues ?

D'avance merci à celui qui m'expliquera ça.

Lien vers le commentaire
Partager sur d’autres sites

Euh... qu'est-ce que tu utilises pour gérer le multilinguisme ? i18n, ou tu te débrouilles avec les champs et les vues de Drupal 7 ?

Sinon, si tu as le plugin pathauto, tu dois pouvoir utiliser le token [node:language] dans tes schémas d'urls. Cela ne marche que si la langue est déclarée systématiquement. Et tu peux donc créer un schéma d'url du type [node:language]/[node:title] ce qui a l'air de correspondre à ce que tu cherches à faire.

Les "tokens" sont dans le core de Drupal maintenant. Si tu veux avoir la liste des syntaxes de token utilisable, le meilleur moyen est d'installer le plugin "tokens" qui te donnera la liste des chaines token réutilisables dans tous les modules compatibles.

Sinon tu as cette liste, mais qui n'est pas complète :
/>http://drupal.org/node/390482#drupal7tokenslist

Lien vers le commentaire
Partager sur d’autres sites

Salut,

J'utilise i18n et pathauto. Ce que je cherchais à faire, c'est obtenir pour une page donnée, à partir de son alias dans la langue par défaut, son alias dans la langue courante. Typiquement, si une page a pour alias "actualites" dans la langue par défaut (fr), je souhaitais obtenir "news" (qui est l'alias de cette page dans la langue courante, à savoir "en").

J'ai pu le faire grâce à une fonction maison qui fait directement une requête sur la table node, mais je pense qu'il doit être possible de le faire "plus proprement".

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...