- Accueil
- Info légales
- Aide (FAQ)
- Les tags de ce site
- Bloc note
- Articles techniques
- Notes system
- Divers articles
- Drupal
- Notes ITIL 2007
- Notes MS
- Dans le quartier...
- Emploi
- Recettes de cuisine et adresses gourmandes
- mes applis ubuntu préferées
- Divers acronymes du monde social
- Internet 2018
- P2 meublé à louer - quartier du Poteau 75018
- apcos - réseaux sociaux et outils
- Articles techniques
- Divers liens
- Fun
- Mon CV IT
- Nouveautés
module multilink (Multi-Language Link and Redirect)
multilink est pour Multi-Language Link and Redirect. Ici version 7.x-2.9 (2.10 en oct 214)
Particulièrement utile pour un site majoritairement francais, avec quelques pages en anglais.
Présentation des sous modules, et introduction
Il a 3 sous modules: un input filter, un redirecteur et un pour le cache (MultiLink Redirect Cached).
Le README n'a rien d'interressant. La doc anglaise se trouve à https://drupal.org/node/907514
Ci dessous, on parle de node/123 mais le processus est le meme avec un alias.
input filter
en créant un lien avec [100: more information] ce lien sera convertit en <a href="http://example.com/node/100">more information</a>
ou vers 101 (si c'est la v fr du 100 et browser fr), vers 102 (si v es et browser es)... Et le titre du lien (au survol) affichera le titre du lien traduit (de destination).
avec [100: $] le survol du lien affiche le titre de la destination.
essayer {100|Title} ou ::100/Title::
redirection
Avec la conf par défaut de multilink, si un user italien logué (browser italien) demande une page et il n'y a pas de chemin:
il demande | langue du contenu | redirection |
---|---|---|
it/node/123 | it | aucune |
en/node/123 | it | vers it/node/123 |
en/node/123 |
|
vers it/node/124 (trad it du 123) |
en/node/123 |
|
it/node/125 ** |
en/node/123 |
|
it/node/123 |
** 125 sera une trad dans une autre langue, l'ordre étant déterminé par l'ordre des langues
MultiLink Redirect Cached
Pour les anonymes, c'est selon l'état de la page dans le cache de drupal : si la page est dans le cache, ils ne sont pas redirigés.
Si MultiLink Redirect Cached est activés, ils seront redirigés comme les users logués.
Il génère des erreurs PHP "Notice : Undefined offset: 0 dans _multilink_redirect_cached_language_from_url() ligne 70 dans ...modules/multilink/multilink_redirect_cached/multilink_redirect_cached.module" => désactivé.
autres modules
Des tas d'autres modules sont cités. Je ne parle que de ceux que je connais:
Avec Global redirect : modifier weight dans la table systeme pour affiner.
Conf
droits: un seul "Bypass MultiLink Redirect" Disable redirect and display a message showing where the user would be redirected to."
Comment MultiLink génère les url?
définitions |
commentaires |
---|---|
New depuis 2.5 ou selected |
quand on use le bloc drapeau général (par ex clic "en"), il considère alors l'anglais comme langue favorite du user |
User's preferred-language ou preferred |
vient de la préférence du compte user (drupal) ou sinon des pref du browser |
url-language | si fr/node/123 alors c'est fr (quelque soit la langue du contenu) |
default-language du site | |
node-language | si fr/node/123 alors que 123 est en anglais, alors sera en |
result-language | choisi par Multilink (dépend de la présence ou non de trads et de la sélection de l'ordre des langues) |
Comportement
Choix selon le préfixe (pour voir l'interface dans sa langue préférée).
Il choisit "au mieux" (result-language) selon la présence (ou non) de traductions (voir ** s'il n'existe pas de trad pour sa langue mais une pour d'autres langues).
Puis il redirige (si le sous module de "redirection" a été activé) de url-language/content-in-node-language
vers preferred-language/content-in-result-language
Il ne redirige pas que les nodes: url-language/user
ira vers preferred-language/user.
** ordre des langues par défaut: selected, preferred, browser, current, content, url et défaut
Le choix réalisé par drupal pour current et content est lié à l'ordre de admin/config/regional/language/configure
Peut-être modifié dans le settings.php: $conf['multilink_language_order'] = array(
'selected',
'preferred',
'current',
'default'
);
DL le module à https://drupal.org/project/multilink
La doc anglaise se trouve à https://drupal.org/node/907514