La langue par défaut de Google Translate set

peut-être qu'il y a une solution évidente que je ne vois pas, mais je n'arrive pas à trouver le bon paramètre pour y arriver. En utilisant le widget Google Translate sur un site, je dois définir la langue par défaut que l'utilisateur voit lors de l'entrée du site, même si le site est en anglais.

function googleTranslateElementInit() {
    new google.translate.TranslateElement({
       pageLanguage: 'en'
    }, 'google_translate_element');
}

j'ai essayé d'ajouter: defaultLanguage: 'fr' et essayé: targetLanguage: 'fr'

j'ai trouvé de jolies solutions jQuery, mais je ne voulais pas les contourner si c'était une solution facile.

21
demandé sur tdurham 2009-11-21 01:44:34

8 réponses

Ce n'est pas une réponse directe à comment utiliser jQuery pour accomplir la tâche, mais j'espère que c'est utile. Google Translate utilise un cookie appelé "googtrans" pour suivre la langue sélectionnée. Vous pouvez configurer ce cookie vous-même avant le chargement de la page et Google Translate l'utilisera.

// PHP code sample, could be accomplished with any language that can set cookies
// set the default language translation to Portugese
setcookie('googtrans', '/en/pt');
18
répondu Lane 2011-12-13 17:50:15

ajouter #googtrans(xx) à la fin de la chaîne de requête traduira automatiquement la page pour vous, similaire à la configuration du cookie vous-même (où xx est le code de langue, par exemple. fr pour le français).

13
répondu Josh Fuller 2012-10-06 09:36:20

nous pouvons définir la langue par défaut de google translate en travaillant avec des cookies pour cette première utilisation de Google translate pour traduire votre page web puis voir quels cookies il a créé (pour ce clic droit sur votre page Web, puis la page info puis la sécurité, puis voir les cookies et cliquez sur googtrans vous voyez ce qu'est la traduction qu'il utilise et ce qui est le chemin et ce qui est le domaine ou le nom de l'hôte ) et mettez toutes ces données dans la fonction setcookies

exemple

 setcookie(“googtrans”, “/en/ja”, time()+3600, “/”, “www.example.com”);

//setcookie(“googtrans”, “en/ja”);
setcookie(“googtrans”, “/en/en”, time()+3600, “/”, “.example.com”);
1
répondu urfusion 2013-12-16 07:35:36

on dirait que jQuery / Javascript est la solution, à moins que votre utilisateur n'ait les préférences de son navigateur paramétrées à la langue différente. Citant google groupes de discussion:

L'élément Translate fonctionne en traduisant (par défaut) le contenu sur votre page quelle que soit la langue de l'utilisateur navigateur est configuré pour. Ils peuvent éventuellement sélectionner une autre langue, mais il n'y a aucun moyen de utilisez l'élément de traduire automatiquement la page dans un langue pour tous vos visiteurs.

0
répondu Danny 2013-12-21 19:56:54

Utilisez le code php suivant pour rediriger la page actuelle avec la balise 'googtrans'.

if(!isset($_GET['gt'])) {
  header("Location: ".$_SERVER['REQUEST_URI']."&gt=1#googtrans(en)");
  die(); 
}

où " en " signifie anglais.

0
répondu Sibin John Mattappallil 2017-03-08 09:27:52

mon idée est de définir la session en premier. et vérifiez si session contre 1. et ensuite ajouter javascript pour définir et changer dropdown languange comme désiré.

Exemple :

function set_default_language () {
        session_start();
        if (!isset($_SESSION['views'])) { 
            $_SESSION['views'] = 0;
        }

        $_SESSION['views'] = $_SESSION['views']+1;
        if ( $_SESSION['views'] == 1 ) { ?> 
        <script type="text/javascript">

            var select = document.querySelector('select.notranslate');
            select.value    = "en|id";
            select.dispatchEvent(new Event('change'));
        </script>
        <?php    
        }
    } add_action( 'wp_footer', 'set_default_language');
0
répondu guruh 2017-04-14 18:25:44

Allez dans votre dossier de thème, puis à la fonction.php où vous ajoutez

// set the default language translation to potugese
set cookie('googtrans', '/en/pt');

à la fin du fichier.

0
répondu Rahul Dogra 2017-07-18 02:23:59

Dans l'url, vous pouvez placer deux langues.

https://translate.google.com/#no/en/Hello

Cela permettrait de traduire le mot norvégien anglais

https://translate.google.com/#{first country code}/{second one}/Hello

0
répondu Oliver Dixon 2017-07-31 21:15:01