TranslatePress convertit automatiquement tous les liens internes dans la langue requise. Cela signifie que le sous-répertoire de langue (par exemple, example.com/en/) est ajouté en fonction de la langue actuellement affichée lors du chargement d'une page. Si certains slugs disposent de traductions, ceux-ci seront également adaptés. Cela s'applique aussi bien aux liens générés dynamiquement à l'aide des fonctions WordPress (telles que get_permalink()) qu'aux liens personnalisés codés en dur dans la page.
Si TranslatePress ne parvient pas à détecter un lien parce qu'il est présenté sous une forme inhabituelle, ou si vous vous trouvez dans un cas particulier où vous avez besoin que le lien s'affiche dans une autre langue que celle actuellement affichée, vous pouvez appliquer une fonction de conversion par programmation. Reportez-vous à l'exemple ci-dessous pour savoir comment procéder.
// Code de la langue cible. Définissez cette valeur sur null si vous souhaitez conserver la langue actuelle. $target_language = 'en_US'; // L'URL à convertir ; cela fonctionne mieux si elle est dans la langue par défaut, mais elle peut être dans n'importe quelle autre langue car elle est détectée automatiquement $source_url = 'https://example.com/my-post/'; $trp = TRP_Translate_Press::get_trp_instance(); $url_converter = $trp->get_component( 'url_converter' ); // Il est recommandé de laisser le troisième paramètre de la fonction get_url_for_language() sous forme de chaîne vide. $target_url = $url_converter->get_url_for_language( $language, $url_to_convert, '' );