Archive

Archives pour la catégorie ‘Wordpress’

WPML 1.7.1

La mise à jour de WPML 1.7.1 est en ligne … et corrige enfin la gestion de la fonction bloginfo(‘home’) : du coup mon article indiquant comment « patcher » WPML et modifier son thème pour gérer le multi-linguisme au niveau du moteur de recherche devient obsolète ! Plus besoin de modifier quoi que ce soit, tout fonctionne du premier coup.

Catégories:Wordpress Etiquettes:

Mise à jour de WPtouch 1.9.8.3

La version 1.9.8.3 de WPtouch vient de sortir… mais il ne s’agit que de corrections de bugs : aucune nouvelle chaine de caractères dans cette version. Vous pouvez donc utiliser le fichier de traduction de la version 1.9.8.1 sans aucune modification.

Catégories:Wordpress Etiquettes:

WPtouch en français – Mise à jour 1.9.8.1

La traduction pour la version de WPtouch 1.9.8.1 est disponible en téléchargeant le fichier de traduction.

Il reste quelques phrases qui ne sont pas prévues pour être gérées en multi-lingue… par exemple le « Search… » qui apparaît si vous cliquez sur le bouton « Rechercher » dans WPtouch. Pour corriger cela, il suffit de modifier le fichier wp-content/plugins/wptouch/themes/default/header.php pour remplacer la ligne

<input type="text" value="Search..."
onfocus="if (this.value == "Search...")
{this.value = ''}" name="s" id="s" />

par

<input type="text" value="<?php _e('Search...', "wptouch"); ?>"
onfocus="if (this.value == "<?php _e('Search...', "wptouch"); ?>")
{this.value = ''}" name="s" id="s" />

Si vous voyez d’autres endroits qui ne sont pas traduits, merci de m’en faire part !

De plus, si vous gérer plusieurs langues sur votre site, je vous suggère de modifier le fichier wp-content/plugins/wptouch/themes/core/core-functions.php pour remplacer la requête SQL ci-dessous dans la fonction bnc_get_ordered_cat_list() :

$sql = "select * from " . $table_prefix .
          "term_taxonomy inner join " . $table_prefix .
          "terms on " . $table_prefix .
          "term_taxonomy.term_id = " . $table_prefix .
          "terms.term_id where taxonomy =
          'category' order by count desc";

par

$sql = "SELECT " . $table_prefix . "terms.term_id, count,
           CASE WHEN INSTR( name, '@' ) >0 THEN
           TRIM( LEFT( name, INSTR( name, '@' ) -1 ) ) ELSE
           TRIM( name ) END AS name FROM " . $table_prefix .
           "icl_translations INNER JOIN " . $table_prefix .
           "term_taxonomy ON " . $table_prefix .
           "term_taxonomy.term_taxonomy_id = " . $table_prefix .
           "icl_translations.element_id INNER JOIN " .
           $table_prefix . "terms ON " . $table_prefix .
           "term_taxonomy.term_id = " . $table_prefix .
           "terms.term_id WHERE element_type = 'category'
           AND taxonomy = 'category' AND
           language_code = '" . get_bloginfo('short_language') .
           "' ORDER BY count DESC";

Ainsi le menu WPtouch « Catégorie » affichera uniquement le catégorie de la langue en cours…

Catégories:Wordpress Etiquettes:

WPtouch en français : admin

A la demande générale… voici la suite de la traduction de ce plugin : les pages d’administrations du plugin.

Vous pouvez télécharger un fichier de langue globale qui contient la traduction du frontoffice et du backoffice dans un fichier unique.

Pour l’intégration dans WPtouch il suffit d’ajouter dans le fichier wptouch.php sous la ligne
define( 'WPTOUCH_PROWL_APPNAME', 'WPtouch');

/** l10n */
function wptouch_plugin_localization(){
  load_plugin_textdomain('wptouch', false, 'wptouch/locale');
}
add_action ('init', 'wptouch_plugin_localization');

Rappel : ces fichiers sont prévus pour la version 1.9.9.8 de WPtouch.

Edit : cette page est maintenant obsolète : il suffit maintenant de suivre les instructions de la page principale WPtouch de mon site.

Catégories:Wordpress Etiquettes:

WPtouch en français – Mise à jour 1.9.5

La traduction pour la version de WPtouch 1.9.5 est disponible en téléchargeant le fichier de traduction.

Catégories:Wordpress Etiquettes:,

Sécuriser votre blog sous WordPress

Un petit truc pour sécuriser vos sites sous WordPress (utilisable avec d’autres CMS d’ailleurs) : il suffit d’ajouter un fichier .htaccess dans votre dossier admin : pour WordPress c’est donc dans wp-admin

Exemple .htaccess

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# whitelist home IP address
allow from mon.ip.per.so
# whitelist work IP address
allow from mon.ip.au.travail
</LIMIT>

Et bien sûr vous modifiez ce fichier pour mettre vos propres adresses IP…

Catégories:Wordpress Etiquettes:,

WPML multi-linguisme et moteur de recherche…

Si vous utilisez WordPress et le plugin WPML pour gérer un site en multi-langue vous avez surement constaté que l’utilisation du moteur de recherche de WordPress affichera alors la liste des résultats pour la langue par défaut… et pas pour la langue actuellement utilisée par votre visiteur.

Pour améliorer cela voici un petit patch… Ce n’est pas très clean mais ça fonctionne (je vous laisse optimiser cela pour utiliser, par exemple, une surcharge de fonction plutôt qu’une modification directe des fichiers standards de WordPress (qui seront écrasés lors d’une mise à jour…)

Modification du fichier wp-includes/general-template.php au niveau de la fonction get_bloginfo

case 'short_language':
  $output = get_locale();
  $short_language = explode("_", $output);
  $output = $short_language[0];
break;

Et ensuite au niveau de votre thème (par exemple iNove dans le fichier wp-content/themes/inove/templates/header.php) :

il suffit de modifier le formulaire comme ceci :

<form action="<?php bloginfo('home'); ?>/<?php bloginfo('short_language'); ?>/"
      method="get">

Amusez vous bien avec WordPress et WPML !

ps : au passage vous pouvez aussi modifier les liens title/home pour ne pas changer de langue quand on clic sur le logo

<h1 id="title">
  <a href="<?php bloginfo('url'); ?>/<?php bloginfo('short_language'); ?>/">
    <?php bloginfo('name'); ?>
  </a>
</h1>

et pour le fil d’ariane…

<a title="<?php _e('Home', 'inove'); ?>"
   href="<?php echo get_settings('home'); ?>/<?php bloginfo('short_language'); ?>/">
  <?php _e('Home', 'inove'); ?>
</a>

L’idée de départ vient de la lecture de cette conversation…

Catégories:Wordpress Etiquettes:,

WPtouch en français !

Si, comme moi, vous utilisez WPtouch pour gérer l’affichage de votre site en mode « iPhone »… je vous invite à utiliser le fichier de traduction que j’ai réalisé.

Il vous suffit d’ajouter le code suivant au début du fichier wptouch.php sous la ligne
define( 'WPTOUCH_PROWL_APPNAME', 'WPtouch');

/** l10n */
function wptouch_plugin_localization(){
  load_plugin_textdomain('wptouch', false, 'wptouch/locale');
}
add_action ('init', 'wptouch_plugin_localization');

Et de décompresser le fichier de traduction pour WPtouch 1.9.17 dans un dossier wptouch/locale

Vous devriez alors avoir l’arborescence suivante :

./wptouch/locale
./wptouch/locale/wptouch-fr_FR.mo
./wptouch/locale/wptouch-fr_FR.po

C’est tout !

L’interface utilisateur et administrateur de WPtouch sera alors traduite en français.

L’utilisation de ce « kit » est libre, n’hésitez pas à l’améliorer et à me faire part de vos commentaires !

Lire aussi :

Catégories:Wordpress Etiquettes:,