Climatiseur fixe ou mobile, avec ou sans évacuation, découvrez les critères importants à vérifier avant de passer à l'achat d'un appareil. Pensez également au climatiseur réversible capable de souffler le chaud et le froid.
Pour organiser et décorer votre extérieur, le salon de jardin est un aménagement incontournable. Adapté à vos goûts, il sera du plus bel effet et permettra de profiter des beaux jours. Meubles en palette, en résine ou en aluminium, découvrez le mobilier de votre choix qui sublimera votre jardin.
L'enrouleur permet de maximiser la durée de vie de votre tuyau d'arrosage, en évitant notamment les torsions et les nœuds. Quel enrouleur de tuyau d'arrosage est à privilégier selon vos besoins ? Nous faisons le point avec vous dans notre guide dédié.
Le sac à dos représente une alternative pratique au sac à main. Longchamp, Guess, Desigual ou même Mango, vous trouverez sûrement votre bonheur parmi ces marques tendance. Luxe ou non, en cuir, de petite taille, avec de multiples rangements... Il y a des modèles pour tous les goûts.
Auparavant réservés à la pratique sportive, les sacs à dos sont devenus très tendance. Pour homme ou femme, ils se déclinent en de nombreuses tailles, formes et styles. Les marques Patagonia ou The North Face sont parfaites pour la randonnée, alors que Longchamp est signe d'élégance.
Pour profiter autant que possible de votre extérieur, avoir un bon éclairage est primordial. Connecté, solaire, pour terrasse ou pour jardin, découvrez dans notre guide l'éclairage extérieur à la fois pratique et esthétique qui sublimera votre extérieur.
Trouver le pantalon idéal équivaut à une vraie quête du Graal pour les femmes : taille haute, large, fluide, chic, taille élastique… Il existe des centaines de modèles différents, d'autant plus si vous avez des exigences spécifiques, comme un pantalon pour femme enceinte, grande taille ou pas cher.
Les baskets pour homme font partie des produits les plus recherchés sur le web. Et pour cause : elles conviennent à tous les styles. Que vous soyez en quête de baskets Nike ou Adidas, blanches ou noires, de luxe ou pas cher.
Vous voulez compléter votre garde-robe avec un nouveau pantalon ? Jean, chino, cargo, jogging, pantalon léger pour l'été ou plus habillé pour aller au bureau... Laissez-nous vous présenter les meilleurs modèles de pantalons pour homme. Vous trouverez forcément votre bonheur.
https://www.smashingmagazine.com/2021/10/object-fit-background-size-css/
Plus qu'un simple accessoire, l'échelle de piscine garantit la sécurité de l'accès au bassin. Elle doit donc être choisie avec soin, en fonction de votre situation. Pour vous permettre de trouver le bon modèle, nous faisons le point sur les échelles de piscine dans notre sélection.
La balançoire est le jeu de plein air incontournable. Découvrez la balançoire en bois, avec toboggan, celle en nid d'oiseau ou encore la balançoire adaptée au bébé et à son éveil.
https://rockcontent.com/blog/types-of-artificial-intelligence/
Thermique ou électrique, tractée ou autoportée, la débroussailleuse permet de traiter les moindres recoins de votre jardin. Selon vos besoins, certains modèles seront plus adaptés que d'autres : découvrez notre sélection des meilleurs modèles de débroussailleuses pour entretenir votre jardin.
https://www.figma.com/community/plugin/1027629657711671993/Spirous
Check out this beautiful pack showcasing women in a long dress using high-resolution photos with several patterns, colors, and designs. Find out more mockups collections.
Pour se dépenser, s'amuser et partager dans la joie, le trampoline est un accessoire apprécié des petits comme des grands. De la taille au nombre de ressorts, découvrez notre guide des meilleurs trampolines pour faire de votre jardin un véritable terrain de jeu pour toute la famille.
De bonnes chaussettes, ce n'est pas si facile à trouver… Que vous soyez un homme adepte de chaussettes blanches ou fantaisie, pas cher ou de marque comme Nike, le modèle idéal se mérite.
Pour un rangement agréable et retrouver facilement ce dont vous avez besoin, l'étagère murale est incontournable. De la salle de bain à la cuisine, optimisez votre espace de vie avec notre sélection d'étagères murales à fixer.
Have a look at this snippet featuring a website with a navbar using the scrollspy feature that allows you to jump directly to a section and it changes itself while you scroll. Find out more scrollspy tools.
Le choix de chaussures pour femme est extrêmement large dans le commerce. La saisonnalité, la pointure, le budget, le style, la hauteur du talon : autant de critères déterminants dans la sélection de la paire idéale.
Les États-Unis et la Chine font globalement la course en tête en matière de puissance installée, avec des investissements colossaux pour atteindre les premiers le supercalculateur «exaflopique».
L’article Intel s’allie à la startup française SiPearl pour développer le supercalculateur européen est apparu en premier sur FrenchWeb.fr.
Une app pour les remplacer toutes, c'est ainsi que se définit cette plateforme d'origine américaine. Une version localisée pour l'Hexagone est sur la rampe de lancement.
Data : le mot est sur toutes les lèvres. Il faut dire que l'exploitation des données constitue un enjeu majeur de la performance des entreprises. Selon le cabinet Deloitte, 60% des DSI affirment que l'analyse des données aura un impact sur leurs activités dans les trois prochaines années.
Depuis le début de la pandémie de COVID-19, de nombreux départements IT sont exposés à une double pression : la première est liée aux coûts et la seconde à l'accélération de la transformation digitale. Afin de libérer du budget, les entreprises peuvent optimiser leurs processus, innover ou réduire leurs dépenses actuelles. Or, malgré de nombreux efforts, le potentiel en matière d'économies et d'optimisation reste inexploité dans les entreprises.
Un million de salariés français en burn-out fin 2020, un chiffre alarmant qui amène les entreprises à considérer davantage le bien-être des équipes. Si le constat qu'un salarié heureux est plus productif n'est plus à prouver, les entreprises doivent aujourd'hui trouver les moyens de s'adapter et de les motiver davantage dans ce contexte difficile.
Pris dans une tornade diplomatique entre Européens et Américains, le premier Conseil du Commerce et des Technologies (CCT) portait une ambition nouvelle, qui a pourtant été tuée dans l'œuf. Il est temps que l'enjeu de la souveraineté technologique devienne une branche de la diplomatie privilégiée.
Même à l'ère des smartphones, la montre reste un incontournable de la mode féminine. Découvrez les plus jolies montres pour femme : Fossil, Cluse, Michael Kors, Guess... Toutes les grandes marques sont ici, mais vous trouverez aussi des montres pas chères.
La cosmétique est un marché hyper concurrentiel où grandes marques rivalisent avec nouveaux venus. Mais qui tire son épingle du jeu dans la bataille du référencement naturel ?
[AMAZON BLACK FRIDAY] Chez Amazon, les promotions liées au Black Friday débutent généralement à l'occasion de la Black Week, qui débute cette année le lundi 22 novembre.
Pour accélérer la transformation digitale des réparateurs, Idgarages lève 8 millions d’euros auprès de la Banque des Territoires et de PHE.
L’article CarTech : face à Vroomly, Idgarages lève 8 millions d’euros est apparu en premier sur FrenchWeb.fr.
L'extracteur de jus vous permet de varier votre façon de consommer les fruits et légumes. Pratique pour des recettes saines et délicieuses, il saura trouver sa place dans votre cuisine. Découvrez le modèle adapté à vos besoins dans notre guide.
Loin d'être résumée à sa fonction pratique de maintien du pantalon, la ceinture est un véritable accessoire de mode. Avec notre guide, découvrez nos conseils pour choisir celle qu'il vous faut.
Getaround, Virtuo et Ada ont remporté un appel d'offres de la SNCF pour proposer dans les gares leurs véhicules connectés, louables depuis un smartphone, sans intervention humaine.
https://www.figma.com/blog/prototyping-updates-and-interactive-components/
La fraude financière représente une menace constante pour les entreprises. Selon l'enquête 2020 de PwC sur la criminalité économique et la fraude, 47 % des entreprises dans le monde ont déjà été victimes de fraude – parmi elles, 13 % ont déclaré avoir subi des pertes de plus de 50 millions de dollars.
Dans cette nouvelle émission du JDN, des experts de l'IAB France évoqueront le sujet du digital out of home qui se met au programmatique cette année.
Que vous prévoyiez une dimension internationale dès la conception de votre site web ou que vous rencontriez ce besoin plus tard dans son cycle de vie, il est toujours bon de faire le nécessaire à l'internationalisation (couramment abrégée i18n) dès le départ. Croyez-en mon expérience, personne ne veut être pris de court et repasser sur l'intégralité des fichiers d'un site, plusieurs années après sa création, pour rajouter le support d'autres langues.
Nous n'aborderons ici que la méthode officielle et ne parlerons pas d'extensions dédiées à ce besoin, comme Loco Translate.
Trève de digressions, c'est parti !
Partons du principe que vous n'achetez pas votre thème sur une boutique en ligne, mais que vous le développiez vous-même (les thèmes premium sont très souvent "translation-ready" et s'ils ne le sont pas, fuyez !).
Voici un morceau de code très sommaire permettant d'afficher une liste d'articles et que l'on peut retrouver dans beaucoup de thèmes.
<h2>Actualités</h2>
<ul class="list">
<?php while( have_posts() ) : the_post(); ?>
<li class="list-item">
<h3><?php echo get_the_title(); ?></h3>
<a href="<?php echo get_permalink(); ?>">Voir l'article</a>
</li>
<?php endwhile; ?>
</ul>
<a href="https://www.alsacreations.com/">Voir toutes les actualités</a>
Ici, tous les textes statiques sont écrits directement dans le fichier. Résultat, impossible de les traduire.
Voyons maintenant ce que ça donne si notre thème est correctement développé.
<h2><?php echo __( 'Actualités', 'textdomain' ); ?></h2>
<ul class="list">
<?php while( have_posts() ) : the_post(); ?>
<li class="list-item">
<h3><?php echo get_the_title(); ?></h3>
<a href="<?php echo get_permalink(); ?>">
<?php echo __( 'Voir l\'article', 'textdomain' ); ?>
</a>
</li>
<?php endwhile; ?>
</ul>
<a href="https://www.alsacreations.com/">
<?php echo __( 'Voir toutes les actualités', 'textdomain' ); ?>
</a>
Et voilà ! Avec seulement quelques octets de plus, cette partie du site est maintenant prête pour la traduction ! ð
Et ça change quoi ? ð¤
Pas grand chose, si ce n'est que l'on utilise désormais les fonctions de gettext, la bibliothèque de fonctions de traduction intégrée à WordPress et originaire du système d'exploitation GNU.
On notera l'utilisation de la fonction __()
pour afficher les textes, mais c'est loin d'être la seule !
Gestion des pluriels, échappement des textes pour affichage dans des attributs HTML ou encore _e()
pour économiser les appels à echo
. À chaque usage peut correspondre une fonction, mais il est aussi possible de n'utiliser que la fonction de base __()
et de la combiner avec d'autres fonctions PHP comme on peut le faire habituellement.
Notez également le second paramètre ici appelé textdomain
.
Il est très important et doit être unique pour votre thème, car il définit le domaine de nos traductions à venir.
Ainsi, __( 'Mon texte à traduire', 'domaine1' )
et __( 'Mon texte à traduire', 'domaine2' )
sont 2 chaînes de caractères complètement différentes, même si on ne dirait pas au premier abord.
Choisissez un nom de domaine suffisamment unique pour votre thème sous peine de rencontrer de potentiels conflits avec des extensions installées sur votre site.
C'est là que la marche à suivre se complique un peu et sort du cadre confortable de WordPress.
Il existe 3 types de fichiers dédiés à la traduction : .pot
, .po
et .mo
et chacun à son rôle.
.pot
Tout d'abord, il faut extraire toutes les chaines de caractères dans un catalogue qui servira de base à toutes les futures traductions, peu importe la langue cible.
Ça tombe bien, c'est exactement le rôle des fichiers .pot
!
Plusieurs outils existent pour le faire, dont le plus connu est PoEdit. Cependant, la génération de catalogue est, de mon point de vue, plus facile et directe avec un autre logiciel, EazyPo, que nous utiliserons dans la suite de ce tutoriel.
Une fois EazyPo téléchargé (pas besoin d'installation, c'est un logiciel portable), lancez-le pour vous retrouver face à une interface des plus conviviales.
Cliquez ensuite sur "Extract from source code" ou "File" puis "New from source code files" et sélectionnez le dossier de votre thème. Assurez-vous que la liste des fichiers est correcte si besoin.
Enfin, cliquez sur "Build" pour pouvoir choisir la destination et le nom du fichier qui sera généré.
Note : Une convention commune dans l'écosystème WordPress et d'utiliser le nom du thème à la fois pour le domaine et pour le nom des fichiers de traduction.
Une fois ceci fait, il ne vous reste plus qu'à cliquer sur le gros bouton rouge "Execute command" pour créer le fichier.
ðTADA !ð
La génération terminée, le logiciel ouvre votre catalogue de traductions.
Vous pouvez maintenant fermer ce fichier, nous n'avons plus besoin de le toucher.
Solution alternative : si vous êtes un utilisateur avancé, vous connaissez peut-être WP-CLI, l'interface en ligne de commande de WordPress. La commande make-pot
permet de générer un fichier .pot
en se positionnant dans le dossier de votre thème ou de votre extension (voir la documentation de make-pot
).
.po
et .mo
Maintenant que votre fichier .pot
est prêt, vous allez pouvoir générer les fichiers nécessaires pour chaque langue que vous souhaitez ajouter à votre site.
Sans rentrer dans les détails :
.po
pour les traducteurs/traductrices humains.mo
à destination de la machine.Pour servir d'exemple, nous allons créer un nouveau fichier pour traduire notre thème dans la langue de Shakespeare.
Pour cela, cliquez sur "File" puis "New from file".
Sélectionnez votre catalogue fraichement créé puis à l'étape suivante, choisissez de créer un fichier .po
.
Enfin, choisissez l'emplacement de création de votre fichier et son nom.
Notez que le nommage de vos fichiers est important. En plus d'avoir le même nom que votre fichier .pot
, les fichiers .po
doivent être suffixés de la locale de traduction. Ainsi, le fichier dédié à la langue anglaise doit être nommé nom-de-mon-theme-en_GB.po
(ou nom-de-mon-theme-en_US.po
si vous préférez l'anglais américain).
Une fois votre fichier créé, il ne vous reste plus qu'à le remplir ! ð
Pour mener à bien cette partie fastidieuse, sélectionnez les chaînes de caractères une par une et cliquez dans le cadre en bas à droite pour saisir votre traduction. En fonction de la complexité de votre thème, on ne va pas se mentir, cela peut prendre plus ou moins de temps (pensez à sauvegarder régulièrement !).
Nous y voilà, toutes vos traductions sont prêtes et il ne vous reste plus qu'à faire en sorte que WordPress charge le bon fichier.
Heureusement, le CMS dispose de plusieurs fonctions pour cette tâche et celle qui nous intéresse ici est load_theme_textdomain
(voir la documentation).
Ajoutez ce morceau de code dans le fichier functions.php
de votre thème.
/**
* Chargement des fichiers de traduction
*/
function load_theme_translations(){
load_theme_textdomain( 'textdomain', get_template_directory() . '/lang' );
}
add_action( 'after_setup_theme', 'load_theme_translations' );
Le premier paramètre est le domaine que vous avez choisi. Le second est l'URL vers le dossier qui contient vos fichiers de traduction (ici, on suppose que votre thème contient un dossier /lang
).
Note : Les différentes fonctions de chargement de fichiers de traductions tenteront d'abord de localiser vos fichiers dans le dossier /languages
de WordPress, donc si vous le voulez, vous pouvez les y mettre directement.
Si préparer son thème ne demande que quelques efforts supplémentaires lors du développement, la création des fichiers de traductions peut s'avérer assez laborieuse surtout si c'est quelque chose que l'on rencontre peu dans son quotidien.
Toujours est-il que l'on ne saurait que trop vous recommander de penser à l'internationalisation de vos développements de thèmes ou d'extensions WordPress dès leur conception, sans quoi vous pourriez perdre un temps non négligeable en le faisant a posteriori, si c'est un besoin qui n'apparait que tardivement dans un projet.
Pour approfondir le sujet et connaitre, par exemple, la marche à suivre pour proposer des traductions pour des thèmes ou extensions, l'équipe de traduction de WordPress met à disposition ce guide.
Le processus reste relativement similaire, mais pour éviter d'allonger un article déjà bien complet, nous ne rentrerons pas dans les détails ici. Toutefois, si vous souhaitez un nouveau tutoriel dédié, faites-le nous savoir !
En attendant, vous pouvez visiter la documentation officielle proposée par WordPress.
Que vous prévoyiez une dimension internationale dès la conception de votre site web ou que vous rencontriez ce besoin plus tard dans son cycle de vie, il est toujours bon de faire le nécessaire à l'internationalisation (couramment abrégée i18n) dès le départ. Croyez-en mon expérience, personne ne veut être pris de court et repasser sur l'intégralité des fichiers d'un site, plusieurs années après sa création, pour rajouter le support d'autres langues.
Nous n'aborderons ici que la méthode officielle et ne parlerons pas d'extensions dédiées à ce besoin, comme Loco Translate.
Trève de digressions, c'est parti !
Partons du principe que vous n'achetez pas votre thème sur une boutique en ligne, mais que vous le développiez vous-même (les thèmes premium sont très souvent "translation-ready" et s'ils ne le sont pas, fuyez !).
Voici un morceau de code très sommaire permettant d'afficher une liste d'articles et que l'on peut retrouver dans beaucoup de thèmes.
<h2>Actualités</h2>
<ul class="list">
<?php while( have_posts() ) : the_post(); ?>
<li class="list-item">
<h3><?php echo get_the_title(); ?></h3>
<a href="<?php echo get_permalink(); ?>">Voir l'article</a>
</li>
<?php endwhile; ?>
</ul>
<a href="https://www.alsacreations.com/">Voir toutes les actualités</a>
Ici, tous les textes statiques sont écrits directement dans le fichier. Résultat, impossible de les traduire.
Voyons maintenant ce que ça donne si notre thème est correctement développé.
<h2><?php echo __( 'Actualités', 'textdomain' ); ?></h2>
<ul class="list">
<?php while( have_posts() ) : the_post(); ?>
<li class="list-item">
<h3><?php echo get_the_title(); ?></h3>
<a href="<?php echo get_permalink(); ?>">
<?php echo __( 'Voir l\'article', 'textdomain' ); ?>
</a>
</li>
<?php endwhile; ?>
</ul>
<a href="https://www.alsacreations.com/">
<?php echo __( 'Voir toutes les actualités', 'textdomain' ); ?>
</a>
Et voilà ! Avec seulement quelques octets de plus, cette partie du site est maintenant prête pour la traduction ! ð
Et ça change quoi ? ð¤
Pas grand chose, si ce n'est que l'on utilise désormais les fonctions de gettext, la bibliothèque de fonctions de traduction intégrée à WordPress et originaire du système d'exploitation GNU.
On notera l'utilisation de la fonction __()
pour afficher les textes, mais c'est loin d'être la seule !
Gestion des pluriels, échappement des textes pour affichage dans des attributs HTML ou encore _e()
pour économiser les appels à echo
. À chaque usage peut correspondre une fonction, mais il est aussi possible de n'utiliser que la fonction de base __()
et de la combiner avec d'autres fonctions PHP comme on peut le faire habituellement.
Notez également le second paramètre ici appelé textdomain
.
Il est très important et doit être unique pour votre thème, car il définit le domaine de nos traductions à venir.
Ainsi, __( 'Mon texte à traduire', 'domaine1' )
et __( 'Mon texte à traduire', 'domaine2' )
sont 2 chaînes de caractères complètement différentes, même si on ne dirait pas au premier abord.
Choisissez un nom de domaine suffisamment unique pour votre thème sous peine de rencontrer de potentiels conflits avec des extensions installées sur votre site.
C'est là que la marche à suivre se complique un peu et sort du cadre confortable de WordPress.
Il existe 3 types de fichiers dédiés à la traduction : .pot
, .po
et .mo
et chacun à son rôle.
.pot
Tout d'abord, il faut extraire toutes les chaines de caractères dans un catalogue qui servira de base à toutes les futures traductions, peu importe la langue cible.
Ça tombe bien, c'est exactement le rôle des fichiers .pot
!
Plusieurs outils existent pour le faire, dont le plus connu est PoEdit. Cependant, la génération de catalogue est, de mon point de vue, plus facile et directe avec un autre logiciel, EazyPo, que nous utiliserons dans la suite de ce tutoriel.
Une fois EazyPo téléchargé (pas besoin d'installation, c'est un logiciel portable), lancez-le pour vous retrouver face à une interface des plus conviviales.
Cliquez ensuite sur "Extract from source code" ou "File" puis "New from source code files" et sélectionnez le dossier de votre thème. Assurez-vous que la liste des fichiers est correcte si besoin.
Enfin, cliquez sur "Build" pour pouvoir choisir la destination et le nom du fichier qui sera généré.
Note : Une convention commune dans l'écosystème WordPress et d'utiliser le nom du thème à la fois pour le domaine et pour le nom des fichiers de traduction.
Une fois ceci fait, il ne vous reste plus qu'à cliquer sur le gros bouton rouge "Execute command" pour créer le fichier.
ðTADA !ð
La génération terminée, le logiciel ouvre votre catalogue de traductions.
Vous pouvez maintenant fermer ce fichier, nous n'avons plus besoin de le toucher.
Solution alternative : si vous êtes un utilisateur avancé, vous connaissez peut-être WP-CLI, l'interface en ligne de commande de WordPress. La commande make-pot
permet de générer un fichier .pot
en se positionnant dans le dossier de votre thème ou de votre extension (voir la documentation de make-pot
).
.po
et .mo
Maintenant que votre fichier .pot
est prêt, vous allez pouvoir générer les fichiers nécessaires pour chaque langue que vous souhaitez ajouter à votre site.
Sans rentrer dans les détails :
.po
pour les traducteurs/traductrices humains.mo
à destination de la machine.Pour servir d'exemple, nous allons créer un nouveau fichier pour traduire notre thème dans la langue de Shakespeare.
Pour cela, cliquez sur "File" puis "New from file".
Sélectionnez votre catalogue fraichement créé puis à l'étape suivante, choisissez de créer un fichier .po
.
Enfin, choisissez l'emplacement de création de votre fichier et son nom.
Notez que le nommage de vos fichiers est important. En plus d'avoir le même nom que votre fichier .pot
, les fichiers .po
doivent être suffixés de la locale de traduction. Ainsi, le fichier dédié à la langue anglaise doit être nommé nom-de-mon-theme-en_GB.po
(ou nom-de-mon-theme-en_US.po
si vous préférez l'anglais américain).
Une fois votre fichier créé, il ne vous reste plus qu'à le remplir ! ð
Pour mener à bien cette partie fastidieuse, sélectionnez les chaînes de caractères une par une et cliquez dans le cadre en bas à droite pour saisir votre traduction. En fonction de la complexité de votre thème, on ne va pas se mentir, cela peut prendre plus ou moins de temps (pensez à sauvegarder régulièrement !).
Nous y voilà, toutes vos traductions sont prêtes et il ne vous reste plus qu'à faire en sorte que WordPress charge le bon fichier.
Heureusement, le CMS dispose de plusieurs fonctions pour cette tâche et celle qui nous intéresse ici est load_theme_textdomain
(voir la documentation).
Ajoutez ce morceau de code dans le fichier functions.php
de votre thème.
/**
* Chargement des fichiers de traduction
*/
function load_theme_translations(){
load_theme_textdomain( 'textdomain', get_template_directory() . '/lang' );
}
add_action( 'after_setup_theme', 'load_theme_translations' );
Le premier paramètre est le domaine que vous avez choisi. Le second est l'URL vers le dossier qui contient vos fichiers de traduction (ici, on suppose que votre thème contient un dossier /lang
).
Note : Les différentes fonctions de chargement de fichiers de traductions tenteront d'abord de localiser vos fichiers dans le dossier /languages
de WordPress, donc si vous le voulez, vous pouvez les y mettre directement.
Si préparer son thème ne demande que quelques efforts supplémentaires lors du développement, la création des fichiers de traductions peut s'avérer assez laborieuse surtout si c'est quelque chose que l'on rencontre peu dans son quotidien.
Toujours est-il que l'on ne saurait que trop vous recommander de penser à l'internationalisation de vos développements de thèmes ou d'extensions WordPress dès leur conception, sans quoi vous pourriez perdre un temps non négligeable en le faisant a posteriori, si c'est un besoin qui n'apparait que tardivement dans un projet.
Pour approfondir le sujet et connaitre, par exemple, la marche à suivre pour proposer des traductions pour des thèmes ou extensions, l'équipe de traduction de WordPress met à disposition ce guide.
Le processus reste relativement similaire, mais pour éviter d'allonger un article déjà bien complet, nous ne rentrerons pas dans les détails ici. Toutefois, si vous souhaitez un nouveau tutoriel dédié, faites-le nous savoir !
En attendant, vous pouvez visiter la documentation officielle proposée par WordPress.
Que vous prévoyiez une dimension internationale dès la conception de votre site web ou que vous rencontriez ce besoin plus tard dans son cycle de vie, il est toujours bon de faire le nécessaire à l'internationalisation (couramment abrégée i18n) dès le départ.
Croyez-en mon expérience, personne ne veut être pris de court et repasser sur l'intégralité des fichiers d'un site, plusieurs semaines ou années après sa création, pour ajouter le support d'autres langues.
Nous n'aborderons ici que la méthode officielle pour un thème WordPress et ne parlerons pas d'extensions dédiées à ce besoin, comme Loco Translate.
Trève de digressions, c'est parti !
Partons du principe que vous n'achetez pas votre thème sur une boutique en ligne, mais que vous le développiez vous-même (les thèmes premium sont très souvent "translation-ready" et s'ils ne le sont pas, fuyez !).
Voici un morceau de code très sommaire permettant d'afficher une liste d'articles et que l'on peut retrouver dans beaucoup de thèmes.
<h2>Actualités</h2>
<ul class="list">
<?php while( have_posts() ) : the_post(); ?>
<li class="list-item">
<h3><?php echo get_the_title(); ?></h3>
<a href="<?php echo get_permalink(); ?>">Voir l'article</a>
</li>
<?php endwhile; ?>
</ul>
<a href="https://www.alsacreations.com/">Voir toutes les actualités</a>
Ici, tous les textes statiques sont écrits directement dans le fichier. Résultat, impossible de les traduire.
Voyons maintenant ce que ça donne si notre thème est correctement développé.
<h2><?php echo __( 'Actualités', 'textdomain' ); ?></h2>
<ul class="list">
<?php while( have_posts() ) : the_post(); ?>
<li class="list-item">
<h3><?php echo get_the_title(); ?></h3>
<a href="<?php echo get_permalink(); ?>">
<?php echo __( 'Voir l\'article', 'textdomain' ); ?>
</a>
</li>
<?php endwhile; ?>
</ul>
<a href="https://www.alsacreations.com/">
<?php echo __( 'Voir toutes les actualités', 'textdomain' ); ?>
</a>
Et voilà ! Avec seulement quelques octets de plus, cette partie du site est maintenant prête pour la traduction ! ð
Et ça change quoi ? ð¤
Pas grand chose, si ce n'est que l'on utilise désormais les fonctions de gettext, la bibliothèque de fonctions de traduction intégrée à WordPress et originaire du système d'exploitation GNU.
On notera l'utilisation de la fonction __()
pour afficher les textes, mais c'est loin d'être la seule !
Gestion des pluriels, échappement des textes pour affichage dans des attributs HTML ou encore _e()
pour économiser les appels à echo
. À chaque usage peut correspondre une fonction, mais il est aussi possible de n'utiliser que la fonction de base __()
et de la combiner avec d'autres fonctions PHP comme on peut le faire habituellement.
Notez également le second paramètre ici appelé textdomain
.
Il est très important et doit être unique pour votre thème, car il définit le domaine de nos traductions à venir.
Ainsi, __( 'Mon texte à traduire', 'domaine1' )
et __( 'Mon texte à traduire', 'domaine2' )
sont 2 chaînes de caractères complètement différentes, même si on ne dirait pas au premier abord.
Choisissez un nom de domaine suffisamment unique pour votre thème sous peine de rencontrer de potentiels conflits avec des extensions installées sur votre site.
C'est là que la marche à suivre se complique un peu et sort du cadre confortable de WordPress.
Il existe 3 types de fichiers dédiés à la traduction : .pot
, .po
et .mo
et chacun à son rôle.
.pot
Tout d'abord, il faut extraire toutes les chaines de caractères dans un catalogue qui servira de base à toutes les futures traductions, peu importe la langue cible.
Ça tombe bien, c'est exactement le rôle des fichiers .pot
!
Plusieurs outils existent pour le faire, dont le plus connu est PoEdit. Cependant, la génération de catalogue est, de mon point de vue, plus facile et directe avec un autre logiciel, EazyPo, que nous utiliserons dans la suite de ce tutoriel.
Une fois EazyPo téléchargé (pas besoin d'installation, c'est un logiciel portable), lancez-le pour vous retrouver face à une interface des plus conviviales.
Cliquez ensuite sur "Extract from source code" ou "File" puis "New from source code files" et sélectionnez le dossier de votre thème. Assurez-vous que la liste des fichiers est correcte si besoin.
Enfin, cliquez sur "Build" pour pouvoir choisir la destination et le nom du fichier qui sera généré.
Note : Une convention commune dans l'écosystème WordPress et d'utiliser le nom du thème à la fois pour le domaine et pour le nom des fichiers de traduction.
Une fois ceci fait, il ne vous reste plus qu'à cliquer sur le gros bouton rouge "Execute command" pour créer le fichier.
ðTADA !ð
La génération terminée, le logiciel ouvre votre catalogue de traductions.
Vous pouvez maintenant fermer ce fichier, nous n'avons plus besoin de le toucher.
Solution alternative : si vous êtes un utilisateur avancé, vous connaissez peut-être WP-CLI, l'interface en ligne de commande de WordPress. La commande make-pot
permet de générer un fichier .pot
en se positionnant dans le dossier de votre thème ou de votre extension (voir la documentation de make-pot
).
.po
et .mo
Maintenant que votre fichier .pot
est prêt, vous allez pouvoir générer les fichiers nécessaires pour chaque langue que vous souhaitez ajouter à votre site.
Sans rentrer dans les détails :
.po
pour les traducteurs/traductrices humains.mo
à destination de la machine.Pour servir d'exemple, nous allons créer un nouveau fichier pour traduire notre thème dans la langue de Shakespeare.
Pour cela, cliquez sur "File" puis "New from file".
Sélectionnez votre catalogue fraichement créé puis à l'étape suivante, choisissez de créer un fichier .po
.
Enfin, choisissez l'emplacement de création de votre fichier et son nom.
Notez que le nommage de vos fichiers est important. En plus d'avoir le même nom que votre fichier .pot
, les fichiers .po
doivent être suffixés de la locale de traduction. Ainsi, le fichier dédié à la langue anglaise doit être nommé nom-de-mon-theme-en_GB.po
(ou nom-de-mon-theme-en_US.po
si vous préférez l'anglais américain).
Une fois votre fichier créé, il ne vous reste plus qu'à le remplir ! ð
Pour mener à bien cette partie fastidieuse, sélectionnez les chaînes de caractères une par une et cliquez dans le cadre en bas à droite pour saisir votre traduction. En fonction de la complexité de votre thème, on ne va pas se mentir, cela peut prendre plus ou moins de temps (pensez à sauvegarder régulièrement !).
Nous y voilà, toutes vos traductions sont prêtes et il ne vous reste plus qu'à faire en sorte que WordPress charge le bon fichier.
Heureusement, le CMS dispose de plusieurs fonctions pour cette tâche et celle qui nous intéresse ici est load_theme_textdomain
(voir la documentation).
Ajoutez ce morceau de code dans le fichier functions.php
de votre thème.
/**
* Chargement des fichiers de traduction
*/
function load_theme_translations(){
load_theme_textdomain( 'textdomain', get_template_directory() . '/lang' );
}
add_action( 'after_setup_theme', 'load_theme_translations' );
Le premier paramètre est le domaine que vous avez choisi. Le second est l'URL vers le dossier qui contient vos fichiers de traduction (ici, on suppose que votre thème contient un dossier /lang
).
Note : Les différentes fonctions de chargement de fichiers de traductions tenteront d'abord de localiser vos fichiers dans le dossier /languages
de WordPress, donc si vous le voulez, vous pouvez les y mettre directement.
Si préparer son thème ne demande que quelques efforts supplémentaires lors du développement, la création des fichiers de traductions peut s'avérer assez laborieuse surtout si c'est quelque chose que l'on rencontre peu dans son quotidien.
Toujours est-il que l'on ne saurait que trop vous recommander de penser à l'internationalisation de vos développements de thèmes ou d'extensions WordPress dès leur conception, sans quoi vous pourriez perdre un temps non négligeable en le faisant a posteriori, si c'est un besoin qui n'apparait que tardivement dans un projet.
Pour approfondir le sujet et connaitre, par exemple, la marche à suivre pour proposer des traductions pour des thèmes ou extensions, l'équipe de traduction de WordPress met à disposition ce guide.
Le processus reste relativement similaire, mais pour éviter d'allonger un article déjà bien complet, nous ne rentrerons pas dans les détails ici. Toutefois, si vous souhaitez un nouveau tutoriel dédié, faites-le nous savoir !
En attendant, vous pouvez visiter la documentation officielle proposée par WordPress.
Retrouvez l'intégralité de ce tutoriel en ligne sur Alsacreations.com
Pour soulager les ménages face à l'inflation, Jean Castex a annoncé ce jeudi 21 octobre mettre en place une aide financière de 100 euros. Elle s'adresse aux Français qui touchent moins de 2 000 euros net imposable par mois.
Pour soulager les ménages face à l'inflation, Jean Castex a annoncé jeudi 21 octobre mettre en place une aide financière de 100 euros. Elle s'adresse aux Français qui touchent moins de 2 000 euros net imposable par mois.
Considering numerous search engine factors is a new normal of today’s SEO. It is not enough to cram your website with many relevant and even irrelevant keywords to hit the top position in the search results. User experience has become an essential factor in present-day SEO practices. One of the great examples of the connection […]
The post How SE Ranking’s Website Audit Can Help You Improve User Experience first appeared on Line25.https://www.androidpolice.com/adobe-photoshop-and-illustrator-are-coming-to-the-web-with-big-chromebook-implications/
Aide financière proposée pour l'achat d'un véhicule "propre" neuf, le bonus écologique permet d'abaisser le coût d'acquisition, afin de le rendre plus abordable. Son montant varie en fonction des émissions et du prix TTC du modèle.
De plus en plus d’entreprises trouvent leurs clients sur les réseaux sociaux. Instagram est d’ailleurs une très bonne plateforme pour se lancer. Cependant, comment optimiser votre profil ? Quel contenu proposer ? Comment s’organiser ? Comment créer une communauté engagée ? Comment démarcher par … Lire la suite
L’article Prospecter sur Instagram : 7 astuces pour trouver des clients est apparu en premier sur Miss SEO Girl.
La bourse des collèges est une aide versée sous conditions de ressources. Voici les critères et les montants fixés pour l'année scolaire 2021-2022.
Rent the Runway (RTR) annonce la fixation du prix de son introduction en Bourse au niveau le plus élevé de la fourchette, soit 21 dollars chacune.
L’article Retail: Rent the Runway lève 357 millions de dollars pour son IPO est apparu en premier sur FrenchWeb.fr.
Le collecteur d'eau séduit par son aspect écologique. Pour bien le choisir, il est primordial de prendre en compte votre situation. Ainsi, vous pourrez opter pour un collecteur pour balcon, avec trop-plein, en zinc ou en PVC... Avec notre sélection, trouvez le collecteur d'eau qu'il vous faut.
A massive package with 1300+ animated textures, isolated abstract shapes, and liquid glass textures and masking effects. Includes looped animations, transparent background shapes as well as backgrounds and textures, everything delivered in 4K resolution
Learn how to create convincing transparent, glass-like and plastic-like materials in Three.js.
The post Creating the Effect of Transparent Glass and Plastic in Three.js appeared first on Codrops.
Les données sont au cœur de la supervision de tout environnement informatique industriel. Sur ce terrain, elles existent au sein de divers équipements, systèmes et capteurs, qu'il s'agisse des domaines de l'OT, de l'IIoT ou de l'IT.
Le géant japonais Nintendo et Niantic, éditeur du célèbre "Pokémon Go", ont lancé mardi un nouveau jeu mobile en réalité augmentée au concept similaire, appelé "Pikmin Bloom".
L’article Réalité augmentée: après le succès de « Pokémon Go », Nintendo veut réitérer l’exploit est apparu en premier sur FrenchWeb.fr.
Les responsables politiques de France et d'Allemagne se sont récemment accordés sur la nécessité de créer des champions européens du cloud, afin de disposer d'alternatives aux fournisseurs de clouds américains ou chinois.
Pour mettre sur orbite le groupe nouvellement créé, une levée de fonds de 10 millions d’euros a été bouclée.
L’article Marketing : pourquoi D-AIM fusionne avec Splio est apparu en premier sur FrenchWeb.fr.
The post Product Grid Style 202 appeared first on Best jQuery.
The post CSS Text Effect Style 125 appeared first on Best jQuery.
Grab these fabulous design assets featuring gradients, curves, and several layer styles of a chrome text effect that you can implement on your designs. Find out more graphic design assets & tools.