{"id":106034,"date":"2013-02-21T07:27:21","date_gmt":"2013-02-21T07:27:21","guid":{"rendered":"http:\/\/wpml.org\/documentation-6\/informations-pour-les-developpeurs\/personnaliser-des-themes-multilingues\/"},"modified":"2024-06-07T11:52:46","modified_gmt":"2024-06-07T11:52:46","slug":"personnaliser-des-themes-multilingues","status":"publish","type":"page","link":"https:\/\/wpml.org\/fr\/documentation-6\/informations-pour-les-developpeurs\/personnaliser-des-themes-multilingues\/","title":{"rendered":"Th\u00e8mes multilingues personnalis\u00e9s"},"content":{"rendered":"<div style=\"margin:2em; padding:1em; border: 1pt solid #00FF00; background-color: #F0FFF0;\">\nCet article n&rsquo;est plus d&rsquo;actualit\u00e9. Veuillez vous r\u00e9f\u00e9rer \u00e0 la section <a href=\"https:\/\/wpml.org\/documentation\/support\/achieving-wpml-compatibility-for-your-themes-and-plugins\/\">Obtenir la compatibilit\u00e9 WPML pour vos th\u00e8mes et extensions<\/a>.\n<\/div>\n<p>Ce guide vous montrera comment cr\u00e9er des th\u00e8mes WordPress multilingues. Un th\u00e8me multilingue ne se limite pas \u00e0 envelopper tous les textes dans des appels GetText et \u00e0 fournir un fichier .mo. La localisation des textes du th\u00e8me est une \u00e9tape importante, mais il y a d&rsquo;autres choses \u00e0 faire.<\/p>\n<p>Un th\u00e8me destin\u00e9 \u00e0 un site multilingue doit indiquer les langues disponibles, permettre de s\u00e9lectionner la langue d&rsquo;affichage et s&rsquo;afficher correctement dans chaque langue.<\/p>\n<p><!--more--><\/p>\n<p>Voil\u00e0 ce que nous devrons faire :<\/p>\n<ol>\n<li><a href=\"#gettext\">Fournir une localisation pour diff\u00e9rentes langues<\/a>.<\/li>\n<li><a href=\"#language_switcher\">Permettre aux utilisateurs de passer d&rsquo;une langue \u00e0<\/a> l&rsquo;autre.<\/li>\n<li><a href=\"#content_per_language\">Renvoyer le bon contenu par langue<\/a>.<\/li>\n<li><a href=\"#admin_texts\">Indiquer \u00e0 WPML ce qui doit \u00eatre traduit<\/a>.<\/li>\n<\/ol>\n<h2><a name=\"gettext\"><\/a>Pr\u00e9parer le th\u00e8me pour la traduction<\/h2>\n<p>Pour que le th\u00e8me puisse s&rsquo;afficher dans diff\u00e9rentes langues, les textes doivent \u00eatre traduits avant d&rsquo;\u00eatre affich\u00e9s. WordPress utilise GetText \u00e0 cette fin et votre th\u00e8me devrait en faire autant.<\/p>\n<p>Nous avons \u00e9crit un article sur la <a href=\"\/?p=1470\">localisation des th\u00e8mes WordPress<\/a>. Il explique comment envelopper les textes du th\u00e8me dans des appels GetText, cr\u00e9er des traductions (fichiers .mo) et les appliquer au th\u00e8me.<\/p>\n<h2><a name=\"language_switcher\"><\/a>Passer d&rsquo;une langue \u00e0 l&rsquo;autre<\/h2>\n<p>Un s\u00e9lecteur de langue indique aux visiteurs les langues disponibles et leur permet de choisir.<\/p>\n<p>Les s\u00e9lecteurs de langue peuvent se pr\u00e9senter sous diff\u00e9rents formulaires. Certaines personnes pr\u00e9f\u00e8rent un menu d\u00e9roulant compact avec les noms des langues. D&rsquo;autres affichent des drapeaux de pays et d&rsquo;autres encore des listes horizontales ou verticales de langues.<\/p>\n<p>WPML facilite la mise en \u0153uvre de s\u00e9lecteurs de langue. Il est int\u00e9gr\u00e9 avec son propre <a href=\"https:\/\/wpml.org\/documentation\/getting-started-guide\/language-setup\/\">s\u00e9lecteur de langue d\u00e9roulant<\/a> qui peut \u00e9galement \u00eatre inclus en tant que widget. Ce s\u00e9lecteur de langue peut afficher les drapeaux des pays, les noms des langues et leurs traductions. Il peut \u00eatre configur\u00e9 \u00e0 partir du menu <strong>WPML-&gt;Languages<\/strong>.<\/p>\n<p>Vous pouvez \u00e9galement cr\u00e9er votre propre s\u00e9lecteur de langue personnalis\u00e9 et l&rsquo;ins\u00e9rer \u00e0 diff\u00e9rents endroits du th\u00e8me. La page de manuel du <a href=\"https:\/\/wpml.org\/documentation\/getting-started-guide\/language-setup\/language-switcher-options\/custom-language-switcher\/\">s\u00e9lecteur de langue personnalis\u00e9<\/a> explique comment vous pouvez le cr\u00e9er et fournit des exemples d&rsquo;utilisations courantes. Ajouter un s\u00e9lecteur de langue personnalis\u00e9 \u00e0 votre th\u00e8me peut ajouter du flair et de l&rsquo;\u00e9l\u00e9gance et faire comprendre aux utilisateurs que le th\u00e8me est destin\u00e9 \u00e0 des sites multilingues.<\/p>\n<h2><a name=\"content_per_language\"><\/a>R\u00e9diger le Contenu dans la bonne langue<\/h2>\n<p>De nombreux th\u00e8mes incluent des liens cod\u00e9s en dur vers les pages, les cat\u00e9gories et les \u00e9tiquettes.<\/p>\n<p>WPML s&rsquo;accroche aux fonctions standard de l&rsquo;API de WordPress et les filtre par langue.<\/p>\n<p>Par exemple, lorsque vous appelez :<br \/>\n<code><br \/>\n$args = array( 'category' =&gt; 1 );<br \/>\n$myposts = get_posts( $args );<br \/>\n<\/code><\/p>\n<p>Supposons que la cat\u00e9gorie \u00ab\u00a01\u00a0\u00bb soit une cat\u00e9gorie anglaise et que la traduction en espagnol soit la cat\u00e9gorie \u00ab\u00a04\u00a0\u00bb. Lorsque vous affichez une page en espagnol et que vous ex\u00e9cutez ce code, WPML remplacera le num\u00e9ro de cat\u00e9gorie dans le filtre par \u00ab\u00a04\u00a0\u00bb.<\/p>\n<p>Pour cela, votre code doit utiliser uniquement les appels \u00e0 l&rsquo;API WordPress et ne pas interroger manuellement la base de donn\u00e9es (ce qui est une mauvaise pratique en soi).<\/p>\n<p>Vous pouvez contr\u00f4ler cette fonctionnalit\u00e9 dans <strong>WPML-&gt;Languages<\/strong>. Recherchez l&rsquo;option permettant d&rsquo;ajuster automatiquement les identifiants.<\/p>\n<h2><a name=\"admin_texts\"><\/a>Indiquer \u00e0 WPML ce qui doit \u00eatre traduit<\/h2>\n<p>WPML peut lire un <a href=\"https:\/\/wpml.org\/documentation\/support\/language-configuration-files\/\">fichier de configuration de la langue<\/a>. Ce fichier lui indique tout ce qu&rsquo;il doit savoir sur votre th\u00e8me.<\/p>\n<p>Cela comprend les textes d&rsquo;administration, les champs personnalis\u00e9s et les types personnalis\u00e9s que vous utilisez.<\/p>\n<p>Une fois que vous aurez cr\u00e9\u00e9 ce fichier XML, WPML se configurera automatiquement et permettra aux utilisateurs de g\u00e9rer un site multilingue sans avoir \u00e0 cliquer sur un seul \u00e9cran de r\u00e9glage.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cet article n&rsquo;est plus d&rsquo;actualit\u00e9. Veuillez vous r\u00e9f\u00e9rer \u00e0 la section Obtenir la compatibilit\u00e9 WPML pour vos th\u00e8mes et extensions. Ce guide vous montrera comment cr\u00e9er des th\u00e8mes WordPress multilingues. Un th\u00e8me multilingue ne se limite pas \u00e0 envelopper tous les textes dans des appels GetText et \u00e0 fournir un fichier .mo. La localisation des [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":105281,"menu_order":47,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_uag_custom_page_level_css":"","ep_exclude_from_search":false,"footnotes":""},"related-projects-category":[],"class_list":["post-106034","page","type-page","status-publish","hentry"],"spectra_custom_meta":{"ratings_users":["0"],"ratings_score":["0"],"ratings_average":["0"],"_wp_page_template":["default"],"_icl_translation":["1"],"_views_template":["0"],"_alp_processed":["1717761166"],"_oembed_bbf56b1d4c25ce11481afba39f176f85":["<iframe title=\"Using WPML to translate content created with page builders\" width=\"700\" height=\"394\" src=\"https:\/\/www.youtube.com\/embed\/MSqNzrdPMkE?feature=oembed&enablejsapi=1&origin=https:\/\/wpml.org\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>"],"_oembed_time_bbf56b1d4c25ce11481afba39f176f85":["1631700481"],"_oembed_8b192c37df925cacb831b3922e69595d":["<iframe title=\"Using WPML To Translate Pages Built With Fusion Builder (Avada Theme)\" width=\"700\" height=\"394\" src=\"https:\/\/www.youtube.com\/embed\/_bNqjjBPdGA?feature=oembed&enablejsapi=1&origin=https:\/\/wpml.org\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>"],"_oembed_time_8b192c37df925cacb831b3922e69595d":["1631700481"],"_oembed_085e890236af876c824fa92e59328670":["<iframe title=\"Translating Menus in WPML\" width=\"700\" height=\"394\" src=\"https:\/\/www.youtube.com\/embed\/aFQuEGQs19c?feature=oembed&enablejsapi=1&origin=https:\/\/wpml.org\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>"],"_oembed_time_085e890236af876c824fa92e59328670":["1650818946"],"_wpml_media_featured":["1"],"_wpml_media_duplicate":["0"],"_subscription_coupon_product_id":["0"],"_last_translation_edit_mode":["translation-editor"],"_top_nav_excluded":[""],"_cms_nav_minihome":[""],"_cms_nav_section":["Cr\u00e9ation de sites multilingues"],"_uag_css_file_name":["uag-css-106034.css"],"_uag_page_assets":["a:9:{s:3:\"css\";s:0:\"\";s:2:\"js\";s:0:\"\";s:18:\"current_block_list\";a:1:{i:0;s:14:\"core\/shortcode\";}s:8:\"uag_flag\";b:0;s:11:\"uag_version\";s:10:\"1778948805\";s:6:\"gfonts\";a:0:{}s:10:\"gfonts_url\";s:0:\"\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"gform-image-choice-sm":false,"gform-image-choice-md":false,"gform-image-choice-lg":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false},"uagb_author_info":{"display_name":"Amir","author_link":"https:\/\/wpml.org\/fr\/author\/admingm\/"},"uagb_comment_info":0,"uagb_excerpt":"Cet article n&rsquo;est plus d&rsquo;actualit\u00e9. Veuillez vous r\u00e9f\u00e9rer \u00e0 la section Obtenir la compatibilit\u00e9 WPML pour vos th\u00e8mes et extensions. Ce guide vous montrera comment cr\u00e9er des th\u00e8mes WordPress multilingues. Un th\u00e8me multilingue ne se limite pas \u00e0 envelopper tous les textes dans des appels GetText et \u00e0 fournir un fichier .mo. La localisation des\u2026","_links":{"self":[{"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/pages\/106034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/comments?post=106034"}],"version-history":[{"count":1,"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/pages\/106034\/revisions"}],"predecessor-version":[{"id":15715980,"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/pages\/106034\/revisions\/15715980"}],"up":[{"embeddable":true,"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/pages\/105281"}],"wp:attachment":[{"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/media?parent=106034"}],"wp:term":[{"taxonomy":"related-projects-category","embeddable":true,"href":"https:\/\/wpml.org\/fr\/wp-json\/wp\/v2\/related-projects-category?post=106034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}