Drupal multilingue: Com visualitzar blocks segons els idiomes?

Drupal és un cms molt complert i fàcil d'utilitzar. No obstant té algunes mancances a nivell de funcionalitats, com per exemple, el fet que no es pugui escollir de mostrar un block segons l'idioma en el qual es navega. No obstant, donat el caràcter lliure d'aquest cms es pot, fàcilment, efectuar una modificació per a tal.

Cal per això retocar el fitxer /modules/block.module i afegir les següents línies:

if (module_exist('i18n'))
$lang=_i18n_get_lang();
else
$lang=$user->language;
if ($block['pages'] == $lang)
$page_match = true;

De manera que la funció block_list quedarà de la següent manera:

...
// Match path if necessary
if ($block['pages']) {
$path = drupal_get_path_alias($_GET['q']);
$regexp = '/^('. preg_replace(array('/(\r\n?|\n)/', '/\\\\\*/', '/(^|\|)\\\\($|\|)/'), array('|','.*','\1'.preg_quote(variable_get('site_frontpage','node'),'/').'\2'),preg_quote($block['pages'], '/')) .')$/';
$page_match = !($block['visibility'] xor preg_match($regexp, $path));
if (module_exist('i18n')){
$lang=_i18n_get_lang();
}
else{
$lang=$user->language;
}
if ($block['pages'] == $lang){
$page_match = true;
}

}
else {
$page_match = TRUE;
}
...

Aquesta modificació és funcional per a un Drupal 4.6.4 amb el mòdul i18n instal·lat!

Si us arrisqueu a provar aquesta modificació, no us deixeu de comentar els èxits o fracassos!

Blog reactions

No reactions yet.
Tags:

Ho tindré en compte :)
Et volia donar un petit consell per quan fiquis codi font.

Crec que si el fiques entre o com s'escribi ara no m'en recordo, el formateja de forma guay del paraguay :) Crec, dependrà segurament de la fulla de estíl pero aconsegueixen un aspecte molt clar :)

Otro blog para la lista, os odio a los 3!!

Cagu en deu, l'ha esborrat!!
Entre blocquote, queria decir, no ha salido en el comentario anterior

Te queremos, es una prueba

Error, no era blocquote, fallo fallo, creo que era el tag pre, hago otra prueba a ver:

Espero k funcione

No funciona, lo dejo :P, en mi blog funciona.

manu_drac no te canses, que tampoco lo voy a usar. Tengo cosas más importantes que éstas que hacer. Quién quiera ver el código bien que cópie y pegue en un editor de texto.

Si si, y yo de estar provando pa na, es igual un tonteria. Saludos, esta mñn entre el sueño y k pensava k no parabas (no sabia k habia cola) no me acerké... voy mu sobao

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
1 + 15 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.