vertaal website per ip google translate
Hallo,
ik ben bezig met mijn website, wat ik dus wil zeg maar als er Nederlandse gebruiker op mijn website komt dat die in het Nederlands komt de tekst. Als een Engelse gebruiker mijn website bezoekt dat die dan in het engels komt.
alleen nu werkt het niet.
Dit is mijn volgende script
alleen hij veranderd de tekst niet als er een engelse ipadress komt iemand enige idee wat ik fout doe ?
ik ben bezig met mijn website, wat ik dus wil zeg maar als er Nederlandse gebruiker op mijn website komt dat die in het Nederlands komt de tekst. Als een Engelse gebruiker mijn website bezoekt dat die dan in het engels komt.
alleen nu werkt het niet.
Dit is mijn volgende script
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<!DOCTYPE html>
<html lang="en">
<link rel="stylesheet" href="img/bootstrap.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<meta http-equiv="refresh" content="2; url=<?=$link?>">
<title>Welkom op mijn site</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="icon" type="image/x-icon" href="img/alert.png">
<meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, width=device-width">
<link rel="stylesheet" type="text/css" href="css/style.css" media="all">
</head>
<body style="margin: 0px; padding: 0px;" onclick="">
<div id="content1"></div>
<div id="content3">
<div style="color: orange;" align="center">
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />Wat leuk dat je me website bezoekt</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />helaas zijn we nog in onderhoud</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />maar maak je geen zorgen hier kan je wat verwachten</div>
<img src="img/image.png" width="152px" /> <br /><br /><br />
<p align="center"><a href="<?=$link?>" class="button1">Ga naar website</a></p>
</div>
</div>
<p>
<script type="text/javascript">
window.onload = function() {
var audioElement = document.createElement("audio");
audioElement.setAttribute("src", "audio/alert.mp3?"+Date.now());
audioElement.setAttribute("type", "audio/mp3");
audioElement.play();
}
<script>
/*function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'ru',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
}*/
async function translate(translateTo, text, translateFrom = 'auto') {
const url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=" +
translateFrom + "&tl=" + translateTo + "&dt=t&q=" + encodeURI(text);
const response = await fetch(url);
const data = await response.json();
return data[0][0][0];
}
async function init() {
var userLang = navigator.language || navigator.userLanguage;
userLang = userLang.substring(0, 2);
translate(userLang, document.getElementsByTagName("P")[0].textContent).then((val) => {
document.getElementsByTagName("P")[0].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[1].textContent).then((val) => {
document.getElementsByTagName("P")[1].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[2].textContent).then((val) => {
document.getElementsByTagName("P")[2].textContent = val;
});
}
init();
</script>
<!-- <script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script> -->
</body>
</html>
<html lang="en">
<link rel="stylesheet" href="img/bootstrap.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<meta http-equiv="refresh" content="2; url=<?=$link?>">
<title>Welkom op mijn site</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="icon" type="image/x-icon" href="img/alert.png">
<meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, width=device-width">
<link rel="stylesheet" type="text/css" href="css/style.css" media="all">
</head>
<body style="margin: 0px; padding: 0px;" onclick="">
<div id="content1"></div>
<div id="content3">
<div style="color: orange;" align="center">
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />Wat leuk dat je me website bezoekt</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />helaas zijn we nog in onderhoud</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />maar maak je geen zorgen hier kan je wat verwachten</div>
<img src="img/image.png" width="152px" /> <br /><br /><br />
<p align="center"><a href="<?=$link?>" class="button1">Ga naar website</a></p>
</div>
</div>
<p>
<script type="text/javascript">
window.onload = function() {
var audioElement = document.createElement("audio");
audioElement.setAttribute("src", "audio/alert.mp3?"+Date.now());
audioElement.setAttribute("type", "audio/mp3");
audioElement.play();
}
<script>
/*function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'ru',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
}*/
async function translate(translateTo, text, translateFrom = 'auto') {
const url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=" +
translateFrom + "&tl=" + translateTo + "&dt=t&q=" + encodeURI(text);
const response = await fetch(url);
const data = await response.json();
return data[0][0][0];
}
async function init() {
var userLang = navigator.language || navigator.userLanguage;
userLang = userLang.substring(0, 2);
translate(userLang, document.getElementsByTagName("P")[0].textContent).then((val) => {
document.getElementsByTagName("P")[0].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[1].textContent).then((val) => {
document.getElementsByTagName("P")[1].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[2].textContent).then((val) => {
document.getElementsByTagName("P")[2].textContent = val;
});
}
init();
</script>
<!-- <script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script> -->
</body>
</html>
alleen hij veranderd de tekst niet als er een engelse ipadress komt iemand enige idee wat ik fout doe ?
Heb je al in de debugger gekeken van de browser, naar de requests die op de achtergrond plaatsvinden?
Stel ik ga op vakantie naar Portugal volgende week.
Moet ik dan jouw site daar ter plekke alleen in het Portugees zien?
Je browser geeft een header Accept-Language: <language>
mee.
Die is zinniger dan een ipadres proberen te laten leiden tot een taal.
Wat als het ipadres naar België leidt? Wordt het dan Frans of Vlaams?
Moet ik dan jouw site daar ter plekke alleen in het Portugees zien?
Je browser geeft een header Accept-Language: <language>
mee.
Die is zinniger dan een ipadres proberen te laten leiden tot een taal.
Wat als het ipadres naar België leidt? Wordt het dan Frans of Vlaams?
Ivo P op 18/09/2023 09:10:04:
Stel ik ga op vakantie naar Portugal volgende week.
Moet ik dan jouw site daar ter plekke alleen in het Portugees zien?
Je browser geeft een header Accept-Language: <language>
mee.
Die is zinniger dan een ipadres proberen te laten leiden tot een taal.
Wat als het ipadres naar België leidt? Wordt het dan Frans of Vlaams?
Moet ik dan jouw site daar ter plekke alleen in het Portugees zien?
Je browser geeft een header Accept-Language: <language>
mee.
Die is zinniger dan een ipadres proberen te laten leiden tot een taal.
Wat als het ipadres naar België leidt? Wordt het dan Frans of Vlaams?
En wat met alle mensen van vreemde origine. Ze spreken en lezen bijna allemaal in hun oorspronkelijke moedertaal
Het is simpelweg niet mogelijk om een IP-adres te koppelen aan iemand zijn of haar taal. IP-adressen (versie 4 en 6) veranderen de hele tijd van locatie, versie 6 nog meer vanwege de smartphones. Soms worden hele blokken overgekocht. Commerciële partijen bieden up-to-date databases aan met een aanzienlijk prijskaartje, of een abonnement op een API. Maar zoals anderen hier al aangeven zegt je locatie nog niet welke taal iemand machtig is.
Wat je bijvoorbeeld niet wilt is dat jij naar Friesland gaat en je ineens alles in het Fries moet lezen, waarschijnlijk is dat niet wat je wilt. Je kunt je besturingssysteem en je browser instellen op de taal/tlaen die je machtig bent. De browser stuurt die informatie met elk HTTP-verzoek naar jouw website, in de HTTP Accept-Lanuage header. Die informatie kan je uitlezen en kijken of je daar een vertaling voor kunt aanbieden.
Google lijkt leuker dan het is. Er zijn mensen die dat bewust blokkeren omdat Google de Nederlandse privacy-wetgeving (AVG, en dus de Europese GDPR) niet respecteert. Er lopen momenteel vele rechtzaken tegen Google, zelfs vanuit onze Consumentenbond omdat eerdere Europese verdragen (Privacy Shield, Safe Harbour) ongeldig zijn verklaard. Met andere woorden: Google is niet je vriend. Als je het op de één of andere manier zelf kan oplossen of aan een andere (Europese) partij kan uitbesteden verdient dat de voorkeur. (Bijvoorbeeld Google Analytics vervangen door PIWIK).
Het mooiste (en ook het meeste werk) is om de site te laten vertalen naar de taal van de doelgroep(en) van je website, en het zelf in eigen beheer doen. Alleen dan weet je zeker dat je site overkomt zoals je wilt dat het over komt, zonder afhankelijk te zijn.
Wat je bijvoorbeeld niet wilt is dat jij naar Friesland gaat en je ineens alles in het Fries moet lezen, waarschijnlijk is dat niet wat je wilt. Je kunt je besturingssysteem en je browser instellen op de taal/tlaen die je machtig bent. De browser stuurt die informatie met elk HTTP-verzoek naar jouw website, in de HTTP Accept-Lanuage header. Die informatie kan je uitlezen en kijken of je daar een vertaling voor kunt aanbieden.
Google lijkt leuker dan het is. Er zijn mensen die dat bewust blokkeren omdat Google de Nederlandse privacy-wetgeving (AVG, en dus de Europese GDPR) niet respecteert. Er lopen momenteel vele rechtzaken tegen Google, zelfs vanuit onze Consumentenbond omdat eerdere Europese verdragen (Privacy Shield, Safe Harbour) ongeldig zijn verklaard. Met andere woorden: Google is niet je vriend. Als je het op de één of andere manier zelf kan oplossen of aan een andere (Europese) partij kan uitbesteden verdient dat de voorkeur. (Bijvoorbeeld Google Analytics vervangen door PIWIK).
Het mooiste (en ook het meeste werk) is om de site te laten vertalen naar de taal van de doelgroep(en) van je website, en het zelf in eigen beheer doen. Alleen dan weet je zeker dat je site overkomt zoals je wilt dat het over komt, zonder afhankelijk te zijn.
Ik wou het juist automatisch doen was ook om meer te experimenteren maar me script werkt zojuist niet iemand enig idee ?
Ja...
Lees ook dit: https://mkyong.com/computer-tips/how-to-view-http-headers-in-google-chrome/
- Ariën - op 18/09/2023 07:25:11:
Heb je al in de debugger gekeken van de browser, naar de requests die op de achtergrond plaatsvinden?
Lees ook dit: https://mkyong.com/computer-tips/how-to-view-http-headers-in-google-chrome/
Gewijzigd op 18/09/2023 13:19:14 door - Ariën -
Mijn debugger zegt dit
bootstrap.css:1 Failed to load resource: the server responded with a status of 404 ()
(index):29 Uncaught ReferenceError: script is not defined
at (index):29:3
bootstrap.css:1 Failed to load resource: the server responded with a status of 404 ()

bootstrap.css:1 Failed to load resource: the server responded with a status of 404 ()
(index):29 Uncaught ReferenceError: script is not defined
at (index):29:3
bootstrap.css:1 Failed to load resource: the server responded with a status of 404 ()

Gewijzigd op 18/09/2023 13:30:45 door hendrik jorna
En waarom kijk je naar bootstrap.css die overigens niet bestaat? Dit is ook iets wat niet klopt, maar dit staat los van je vertaal-probleem.
Je moet juist kijken naar requests vanuit Google.
Je moet juist kijken naar requests vanuit Google.
Ik vraag me af of je wel weet waar je naar kan kijken bent? Dit lijkt iets van Cloudflare te zijn.
Heb je anders niet een kant en klaar voorbeeld?
Heb je anders niet een kant en klaar voorbeeld?
ik heb je een pb gedaan
Interessant, maar dat is niet de bedoeling van het forum.
De script waar ik geupload op hebt
is deze website https://brazzerspremium.site/
is deze website https://brazzerspremium.site/
Niet verwonderlijk dat het niet lijkt te werken als je de aanroep van het script niet uitvoert, en tussen <!-- en --> zet.
Gewijzigd op 18/09/2023 14:39:38 door - Ariën -
ik heb het aangepast maar het werkt nog steeds niet als ik me ip verander in italy zou die italiaanse tekst moeten weergeven maar dat doet die niet
Gewijzigd op 18/09/2023 14:44:10 door hendrik jorna
Maak er eens dit van:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<!DOCTYPE html>
<html lang="en">
<link rel="stylesheet" href="img/bootstrap.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<title>Welkom</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="icon" type="image/x-icon" href="img/alert.png">
<meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, width=device-width">
<link rel="stylesheet" type="text/css" href="css/style.css" media="all">
</head>
<body style="margin: 0px; padding: 0px;" onclick="">
<div id="content1"></div>
<div id="content3">
<div style="color: orange;" align="center">
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />Welkom op onze website</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />We zijn nog in onderhoud</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />voor meer informatie.</div>
<br /><br /><br />
<p align="center"><a href="<?=$link?>" class="button1">ga naar de website</a></p>
</div>
</div>
<p>
<script type="text/javascript">
window.onload = function() {
var audioElement = document.createElement("audio");
audioElement.setAttribute("src", "audio/alert.mp3?"+Date.now());
audioElement.setAttribute("type", "audio/mp3");
audioElement.play();
}
<script>
/*function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'ru',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
}*/
async function translate(translateTo, text, translateFrom = 'auto') {
const url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=" +
translateFrom + "&tl=" + translateTo + "&dt=t&q=" + encodeURI(text);
const response = await fetch(url);
const data = await response.json();
return data[0][0][0];
}
async function init() {
var userLang = navigator.language || navigator.userLanguage;
userLang = userLang.substring(0, 2);
translate(userLang, document.getElementsByTagName("P")[0].textContent).then((val) => {
document.getElementsByTagName("P")[0].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[1].textContent).then((val) => {
document.getElementsByTagName("P")[1].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[2].textContent).then((val) => {
document.getElementsByTagName("P")[2].textContent = val;
});
}
init();
</script>
<script src="\\translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
</body>
</html>
<html lang="en">
<link rel="stylesheet" href="img/bootstrap.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<title>Welkom</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="icon" type="image/x-icon" href="img/alert.png">
<meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, width=device-width">
<link rel="stylesheet" type="text/css" href="css/style.css" media="all">
</head>
<body style="margin: 0px; padding: 0px;" onclick="">
<div id="content1"></div>
<div id="content3">
<div style="color: orange;" align="center">
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />Welkom op onze website</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />We zijn nog in onderhoud</div>
<div style="font-family: Roboto,Arial; font-size: 22px; font-weight: bold; padding-bottom: 10px;"><br />voor meer informatie.</div>
<br /><br /><br />
<p align="center"><a href="<?=$link?>" class="button1">ga naar de website</a></p>
</div>
</div>
<p>
<script type="text/javascript">
window.onload = function() {
var audioElement = document.createElement("audio");
audioElement.setAttribute("src", "audio/alert.mp3?"+Date.now());
audioElement.setAttribute("type", "audio/mp3");
audioElement.play();
}
<script>
/*function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'ru',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
}*/
async function translate(translateTo, text, translateFrom = 'auto') {
const url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=" +
translateFrom + "&tl=" + translateTo + "&dt=t&q=" + encodeURI(text);
const response = await fetch(url);
const data = await response.json();
return data[0][0][0];
}
async function init() {
var userLang = navigator.language || navigator.userLanguage;
userLang = userLang.substring(0, 2);
translate(userLang, document.getElementsByTagName("P")[0].textContent).then((val) => {
document.getElementsByTagName("P")[0].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[1].textContent).then((val) => {
document.getElementsByTagName("P")[1].textContent = val;
});
translate(userLang, document.getElementsByTagName("P")[2].textContent).then((val) => {
document.getElementsByTagName("P")[2].textContent = val;
});
}
init();
</script>
<script src="\\translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
</body>
</html>
heb nu dit als volg maar helaas geen resultaat
Waarom commentariseer je deze functie?
function googleTranslateElementInit()
function googleTranslateElementInit()
ik heb tutorial gevonden, wat ik wil zeg maar dat die automatisch de tekst veranderd kwa land die op me website komen
alleen het rare is het lijkt wel dat het niet werkt.
alleen het rare is het lijkt wel dat het niet werkt.
Haal dat commentaar eens weg?
En waar vond je die tutorial?
En waar vond je die tutorial?





