{"id":53644,"date":"2021-10-18T03:01:30","date_gmt":"2021-10-17T17:01:30","guid":{"rendered":"http:\/\/www.rjmprogramming.com.au\/ITblog\/?p=53644"},"modified":"2021-10-17T15:20:51","modified_gmt":"2021-10-17T05:20:51","slug":"google-translate-landing-page-translate-updated-list-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-updated-list-tutorial\/","title":{"rendered":"Google Translate Landing Page Translate Updated List Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/About_Us.html\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Google Translate Landing Page Translate Updated List Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/lp_update_save.jpg\" title=\"Google Translate Webpage Translate Updated List Tutorial\"  style=\"float:left;\"   \/><\/a><p class=\"wp-caption-text\">Google Translate Landing Page Translate Updated List Tutorial<\/p><\/div>\n<p>Yesterday&#8217;s <a title='Google Translate Landing Page Translate Update Tutorial' href='#gtlptut'>Google Translate Landing Page Translate Update Tutorial<\/a> left off with &#8230;<\/p>\n<blockquote cite='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-update-tutorial\/'><p>\nIt&#8217;s the start that does not ingrain the webpage HTML to any great permanence, and that is for another &#8220;PHP involvement&#8221; day.\n<\/p><\/blockquote>\n<p> &#8230; and that new day is upon us.  Whenever you combine &#8230;<\/p>\n<ul>\n<li>PHP writing public HTML webpage data &#8230; with &#8230;<\/li>\n<li>a user interface (and we&#8217;d really only like that &#8220;user set&#8221; to be an administrator of this blog)<\/li>\n<\/ul>\n<p> &#8230; it&#8217;s a potential data security issue you are opening up, and yet, we do want to involve some automation of webpage code here for something that can be ascertained.  So <font color=blue>let&#8217;s try to protect ourselves<\/font> <font size=1>(to some degree)<\/font> regarding the PHP below &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n if (isset($_POST['langih'])<font color=blue> && strpos(strtolower('' . $_SERVER['HTTP_REFERER']), \"rjmprogramming.com.au\/about_us.html\") !== false<\/font>) {<br \/>\n   $prefis=\".\/\";<br \/>\n   $ftf=[\"index.htm\",\"index.html\",\"indexmobile.html\",\"About_Us.html\",\"Contact_Us.html\",\"Guestbook.html\",\"Link.html\",\"Links.html\",\"Services.html\",\"Welcome.html\",\"News.html\",\"Welcome.htm\",\"Welcomeslideshow.htm\",\"Welcomeslideshow.html\",\"slideshow.html\"];<br \/>\n   $lih=str_replace(\"+\", \" \", urldecode($_POST['langih']));<br \/>\n   <font color=blue>if (strpos(\"~\" . strtolower($lih), \"~&lt;option\") !== false) {<br \/>\n   if (strpos(strtolower($lih) . \"~\", \"&lt;\/option&gt;~\") !== false) {<br \/>\n   if (strpos($lih, \"&gt;Blog Language\") !== false) {<\/font><br \/>\n <br \/> <br \/>\n   for ($i=0; $i&lt;sizeof($ftf); $i++) {<br \/>\n     if (file_exists($prefis . $ftf[$i])) {<br \/>\n     $cont=file_get_contents($prefis . $ftf[$i]);<br \/>\n   <font color=blue>if (strpos($cont, \"&gt;Blog Language\") !== false) {<br \/>\n     if (strpos(str_replace(\"&lt;option\",\"\",str_replace(\"&lt;\/option&gt;\",\"\",strtolower($lih))), \"&lt;\") === false) {<br \/>\n     if (strlen(explode(\"&lt;\/select&gt;\", explode(\"&gt;Blog Language\", $lih)[1])[0]) &gt; strlen($wasis)) {<br \/>\n     if (sizeof(explode(\"&gt;\",explode(\"&lt;\/select&gt;\", explode(\"&gt;Blog Language\", $lih)[1])[0])) &gt;= sizeof(explode(\"&gt;\",$wasis))) {<\/font><br \/>\n     file_put_contents($prefis . $ftf[$i] . \"_spare\", $cont);<br \/>\n     $wasis=explode(\"&lt;\/select&gt;\", explode(\"&gt;Blog Language\", $cont)[1])[0];<br \/>\n     $contnew=str_replace($wasis, explode(\"&lt;\/select&gt;\", explode(\"&gt;Blog Language\", $lih)[1])[0], $cont);<br \/>\n     file_put_contents($prefis . $ftf[$i], $contnew);<br \/>\n     }<br \/>\n   }<br \/>\n     <font color=blue>}<br \/>\n     }<br \/>\n     }<br \/>\n     }<\/font><br \/>\n <br \/>\n   <font color=blue>}<br \/>\n   }<br \/>\n   }<\/font><br \/>\n }<br \/>\n exit;<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; restricting calling URLs and some of the look and size and content of the posted data, and working with the <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/About_Us.html\" title=\"Click picture\">&#8220;About Us&#8221;<\/a> webpage &#8220;place&#8221; to automate, the idea of choosing &#8220;English&#8221; from the &#8220;Blog Language&#8221; dropdown, as per <font color=blue>the changed<\/font> Javascript and <a target=_blank title='Ajax info via W3schools' href='http:\/\/www.w3schools.com\/js\/js_ajax_intro.asp'>Ajax<\/a> <font color=purple>&#8220;way in&#8221;<\/font> &#8230;<\/p>\n<p><code><br \/>\nfunction ChangeLcodeNow(){<br \/>\n var val = document.getElementById('language');<br \/>\n if (val.value.length != 0 && val.value.indexOf('en') == (0 - 1)) {<br \/>\n   var pprefix = val[val.selectedIndex].id;<br \/>\n    var dd=new Date();<br \/>\n    window.open('\/\/www-rjmprogramming-com-au.translate.goog\/ITblog\/' + dd.getFullYear() + '\/' + ('0' + eval(1 + eval('' + dd.getMonth()))).slice(-2) + '\/' + ('0' + eval(0 + eval('' + dd.getDate()))).slice(-2) + '\/?_x_tr_sl=en&_x_tr_hl=en-GB&_x_tr_pto=nui&_x_tr_tl=' + val.value, '_blank');<br \/>\n } <font color=blue>else if (val.value.length != 0 && val.value.indexOf('en') != (0 - 1)) {<br \/>\n    if (ajaxitp) { ajaxitp(); }<br \/>\n }<\/font><br \/>\n}<br \/>\n<br \/>\n<font color=purple>function ajaxitp() {<br \/>\n  var xurl = '.\/getme.php';<br \/>\n  var formis = new FormData();<br \/>\n  myxhr = new XMLHttpRequest();<br \/>\n  if (myxhr) {<br \/>\n    formis.append('langih', document.getElementById('language').innerHTML);<br \/>\n    myxhr.open('POST', xurl); \/\/, true);<br \/>\n    myxhr.send(formis);<br \/>\n  }<br \/>\n}<\/font><br \/>\n<\/code><\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-updated-list-tutorial\/'>Google Translate Landing Page Translate Updated List Tutorial<\/a>.<\/p-->\n<hr>\n<p id='gtlptut'>Previous relevant <a target=_blank title='Google Translate Landing Page Translate Update Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-update-tutorial\/'>Google Translate Landing Page Translate Update Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/index.htm\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Google Translate Landing Page Translate Update Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/lp_lang_ext.jpg\" title=\"Google Translate Webpage Translate Update Tutorial\"  style=\"float:left;\"   \/><\/a><p class=\"wp-caption-text\">Google Translate Landing Page Translate Update Tutorial<\/p><\/div>\n<p>The recent <a title='Google Translate Landing Page Translate Tutorial' href='#gtlptt'>Google Translate Landing Page Translate Tutorial<\/a> &#8230;<\/p>\n<ul>\n<li>updated our &#8220;interface&#8221; to the great <a target=_blank title='Google Translate' href='http:\/\/translate.google.com'>Google Translate<\/a> strategy for the RJM Programming <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/index.htm\" title=\"Click picture\">Landing Page<\/a> webpage group &#8230; but &#8230;<\/li>\n<li>did not update to the latest <a target=_blank title='Google Translate language code list' href='http:\/\/cloud.google.com\/translate\/docs\/languages'>&#8220;language code list&#8221;<\/a> to the great <a target=_blank title='Google Translate' href='http:\/\/translate.google.com'>Google Translate<\/a> for the RJM Programming <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/index.htm\" title=\"Click picture\">Landing Page<\/a> webpage group<\/li>\n<\/ul>\n<p> &#8230; and so, we are here today, with our start to remedies for this (Javascript DOM, via <a target=_blank title='Ajax info via W3schools' href='http:\/\/www.w3schools.com\/js\/js_ajax_intro.asp'>Ajax<\/a>, change below) &#8230;<\/p>\n<p><code><br \/>\nvar myxhr=null;<br \/>\n<br \/>\nfunction backin() {<br \/>\n<br \/> <br \/>\n  if (myxhr.readyState == 4) {<br \/>\n    if (myxhr.status == 200) {<br \/>\n      if (myxhr.responseText) {<br \/>\n       if (document.getElementById('language')) {<br \/>\n        \/\/alert(myxhr.responseText);<br \/>\n        var mhs=myxhr.responseText.replace(\/\\&lt;\\\/code\\&gt;\\&lt;\\\/td\\&gt;\/g,'&lt;&gt;').split('&gt;&lt;code translate=\"no\" dir=\"ltr\"&gt;');<br \/>\n        if (mhs.length &gt; 1) {<br \/>\n          var thiscodeis='', thisdescis='';<br \/>\n          var wasih=document.getElementById('language').innerHTML;<br \/>\n          var outih=wasih.split('&lt;\/option&gt;')[0] + '&lt;\/option&gt;';<br \/>\n          var origih=wasih.replace(outih, '');<br \/>\n          for (var iuh=1; iuh&lt;mhs.length; iuh++) {<br \/>\n            thisdescis=mhs[eval(-1 + iuh)].split('&lt;td&gt;')[eval(-1 + mhs[eval(-1 + iuh)].split('&lt;td&gt;').length)];<br \/>\n            \/\/console.log('first thisdescis=' + thisdescis + ' and mhs[eval(-1 + iuh)]=' + mhs[eval(-1 + iuh)].slice(-200));<br \/>\n            thisdescis=thisdescis.split('&lt;')[0];<br \/>\n            thiscodeis=mhs[iuh].split('&lt;')[0].split('(')[0].trim();<br \/>\n            \/\/console.log('thiscodeis=' + thiscodeis + ' and thisdescis=' + thisdescis + ' and mhs[eval(-1 + iuh)]=' + mhs[eval(-1 + iuh)].slice(-200));<br \/>\n            if (wasih.toLowerCase().indexOf(' value=\"' + thiscodeis.toLowerCase() + '\"') == -1 && wasih.toLowerCase().indexOf(thisdescis.toLowerCase()) == -1) {<br \/>\n            outih+='&lt;option value=\"' + thiscodeis + '\"&gt;' + thisdescis + ' &amp;#10024;&lt;\/OPTION&gt;';<br \/>\n            } else {<br \/>\n            outih+='&lt;option value=\"' + thiscodeis + '\"&gt;' + thisdescis + '&lt;\/OPTION&gt;';<br \/>\n            }<br \/>\n          }<br \/>\n          if (outih.indexOf('\/OPTION') != -1 && origih.toLowerCase() != outih.toLowerCase()) {<br \/>\n            document.getElementById('language').innerHTML=outih.replace('&lt;\/option&gt;', ' &amp;#10024;&lt;\/OPTION&gt;');<br \/>\n            document.getElementById('language').style.maxWidth='150px';<br \/>\n          }<br \/>\n        }<br \/>\n       }<br \/>\n      }<br \/>\n    }<br \/>\n  }<br \/>\n}<br \/>\n<br \/>\nfunction ajaxit() {<br \/>\n  var xurl = '\/\/cloud.google.com\/translate\/docs\/languages';<br \/>\n  \/\/alert(1);<br \/>\n  myxhr = new XMLHttpRequest();<br \/>\n  if (myxhr) {<br \/>\n  \/\/alert(2);<br \/>\n    myxhr.onreadystatechange = backin;<br \/>\n    myxhr.open('GET', 'getme.php?getme=' + encodeURIComponent(xurl), true);<br \/>\n    myxhr.send(null);<br \/>\n  }<br \/>\n}<br \/>\n<br \/>\nfunction refreshl() {<br \/>\n  if (document.getElementById('language')) {<br \/>\n    ajaxit();<br \/>\n  }<br \/>\n}<br \/>\n<br \/>\nsetTimeout(refreshl, 5000);<br \/>\n<\/code><\/p>\n<p>It&#8217;s the start that does not ingrain the webpage HTML to any great permanence, and that is for another &#8220;PHP involvement&#8221; day.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-update-tutorial\/'>Google Translate Landing Page Translate Update Tutorial<\/a>.<\/p-->\n<hr>\n<p id='gtlptt'>Previous relevant <a target=_blank title='Google Translate Landing Page Translate Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-tutorial\/'>Google Translate Landing Page Translate Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/index.htm\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Google Translate Landing Page Translate Tutorial\" src=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/landing_page_blog_language.gif\" title=\"Google Translate Webpage Translate Tutorial\"  style=\"float:left;\"   \/><\/a><p class=\"wp-caption-text\">Google Translate Landing Page Translate Tutorial<\/p><\/div>\n<p>Yesterday&#8217;s &#8230;<\/p>\n<ul>\n<li><a title='Google Translate Webpage Translate Tutorial' href='#gtwtt'>Google Translate Webpage Translate Tutorial<\/a> was the major part of RJM Programming&#8217;s <a target=_blank title='Google Translate' href='http:\/\/translate.google.com'>Google Translate<\/a> strategy change <font size=2>(ie. getting it working again <\/font><font size=1>&#8230; doh!<\/font><font size=1>)<\/font> &#8230; but it&#8217;s not the whole story &#8230; and another part is &#8230;<\/li>\n<li>today we extend that strategy to change the <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/\">RJM Programming Landing Page<\/a> <a target=_blank title='Google Translate' href='http:\/\/translate.google.com'>Google Translate<\/a> interfacing to change from a &#8220;Landing Page content&#8221; strategy to a &#8220;Navigate to WordPress Blog&#8221; strategy <font size=1>(feeding into yesterday&#8217;s thinking)<\/font>, our justification being that the better content of the RJM Programming domain sits within the WordPress Blog we support and maintain<\/li>\n<\/ul>\n<p> &#8230; so there, ngarrrrgh!<\/p>\n<p>But <font size=1>(growing up quickly)<\/font> we see a better arrangement here, just adding the prefix &#8220;<font color=blue>Blog<\/font>&#8221; onto the old (just) &#8220;Language&#8221; labelled dropdown to modify the &#8220;new &#8220;<font color=blue>Blog<\/font> Language&#8221; (to end up with HTML snippet &lt;option value=&#8221;&#8221;&gt;<font color=blue>Blog<\/font> Language&lt;\/option&gt;) dropdown&#8217;s Javascript &#8220;onchange&#8221; event logic &#8230;<\/p>\n<p><code><br \/>\n\/\/ To ...<br \/>\nfunction ChangeLcodeNow(){<br \/>\n\/\/&lt;![CDATA[<br \/>\n var val = document.getElementById('language');<br \/>\n if (val.value.length != 0 && val.value.indexOf('en') == (0 - 1)) {<br \/>\n    var pprefix = val[val.selectedIndex].id;<br \/>\n    var dd=new Date();<br \/>\n    window.open('\/\/www-rjmprogramming-com-au.translate.goog\/ITblog\/' + dd.getFullYear() + '\/' + ('0' + eval(1 + eval('' + dd.getMonth()))).slice(-2) + '\/' + ('0' + eval(0 + eval('' + dd.getDate()))).slice(-2) + '\/?_x_tr_sl=en&_x_tr_hl=en-GB&_x_tr_pto=nui&_x_tr_tl=' + val.value, '_blank');<br \/>\n }<br \/>\n\/\/]]&gt;<br \/>\n}<br \/>\n<br \/> <br \/>\n\/\/ ... From ...<br \/>\nfunction olderChangeLcodeNow(){<br \/>\n\/\/&lt;![CDATA[<br \/>\n var val = document.getElementById('language');<br \/>\n if (val.value.length != 0 && val.value.indexOf('en') == (0 - 1)) {<br \/>\n   var pprefix = val[val.selectedIndex].id;<br \/>\n   windowopen('http:\/\/translate.google.com\/translate?sl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.rjmprogramming.com.au%2Findex.html&tl=' + val.value, '_blank');<br \/>\n }<br \/>\n\/\/]]&gt;<br \/>\n}<br \/>\n<\/code><\/p>\n<p>Again, <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/landing_page_blog_language.gif\">not too onerous<\/a>!<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/new-google-translate-webpage-translate-tutorial\/'>Google Translate Landing Page Translate Tutorial<\/a>.<\/p-->\n<hr>\n<p id='gtwtt'>Previous relevant <a target=_blank title='Google Translate Webpage Translate Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-webpage-translate-tutorial\/'>Google Translate Webpage Translate Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp_gt_fix.gif\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Google Translate Webpage Translate Tutorial\" src=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp_gt_fix.gif\" title=\"Google Translate Webpage Translate Tutorial\"  style=\"float:left;\"   \/><\/a><p class=\"wp-caption-text\">Google Translate Webpage Translate Tutorial<\/p><\/div>\n<p>We really like the way <a target=_blank title='Google Translate' href='http:\/\/translate.google.com'>Google Translate<\/a> can language translate whole webpages for URLs of choice, sometimes.  We use it here at this blog, but sometime into the past &#8230; we cannot recall <font size=1>(sorrrrrryyyyyyyyy!)<\/font> &#8230; the arrangements of use of this great functionality changed, and today we want to go over what we did for this blog to fix some of this interfacing.<\/p>\n<p>It was in <font size=1>good ol&#8217; WordPress TwentyTen theme&#8217;s<\/font> header.php <font color=blue>we made the change<\/font> to facilitate this &#8220;reconnection&#8221; to this great functionality &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\nfunction ChangeLcodeNow(){<br \/>\n var val = document.getElementById('language');<br \/>\n \/\/alert(val.value);<br \/>\n if (val.value.length != 0 && val.value.indexOf('en') == (0 - 1)) {<br \/>\n \/\/alert(val.value);<br \/>\n var pprefix = val[val.selectedIndex].id;<br \/>\n&lt;?php<br \/>\n   $p316 = \"316\";<br \/>\n   $pprefix = \"\";<br \/>\n   if (strpos($_SERVER['QUERY_STRING'], \"p=0\") !== false) {<br \/>\n   $pprefix = \"\";<br \/>\n   } else {<br \/>\n   if (isset($_GET['p'])) {<br \/>\n     if (strpos($_GET['p'], \"304\") !== false) {<br \/>\n     $p316 = \"316\";<br \/>\n     } else {<br \/>\n     $p316 = $_GET['p'];<br \/>\n     }<br \/>\n   }<br \/>\n<br \/>\n$isiPad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPad');<br \/>\nif ($isiPad === false) {<br \/>\n  $isiPad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPhone');<br \/>\n}<br \/>\nif ($isiPad === false) {<br \/>\n  $isiPad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Android');<br \/>\n}<br \/>\n<br \/>\n   <font color=blue>if (1 == 1) {    \/\/                                                                      _x_tr_sl=en&_x_tr_tl=de&_x_tr_hl=en-GB&_x_tr_pto=nui<br \/>\n   echo \"  window.open('\/\/www-rjmprogramming-com-au.translate.goog\/ITblog?p=' + pprefix + '&_x_tr_sl=en&_x_tr_hl=en-GB&_x_tr_pto=nui&_x_tr_tl=' + val.value, '_top'); \" . \"\\n\";<br \/>\n   } else {<\/font><br \/>\n   if ($isiPad) {<br \/>\n   \/\/echo \"  window.open('\/\/translate.google.com\/translate?sl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.rjmprogramming.com.au%2Fwordpress%2F%3Fp%3D' + pprefix + '\".$p316.\"&tl=' + val.value, '_top'); \" . \"\\n\";<br \/>\n   echo \"  window.open('\/\/translate.google.com\/translate?sl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.rjmprogramming.com.au%2Fwordpress%2F%3Fp%3D' + pprefix + '\".$p316.\"&tl=' + val.value, '_top'); \" . \"\\n\";<br \/>\n   } else {<br \/>\n   \/\/echo \"window.location.href = '\/\/translate.google.com\/translate?sl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.rjmprogramming.com.au%2Fwordpress%2F%3Fp%3D' + pprefix + '\".$p316.\"&tl=' + val.value; \" . \"\\n\";<br \/>\n   echo \"window.location.href = '\/\/translate.google.com\/translate?sl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.rjmprogramming.com.au%2Fwordpress%2F%3Fp%3D' + pprefix + '\".$p316.\"&tl=' + val.value; \" . \"\\n\";<br \/>\n   }<br \/>\n   }<br \/>\n   <font color=blue>}<\/font><br \/>\n?&gt;<br \/>\n   \/\/window.open('\/\/translate.google.com\/translate?sl=en&js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fwww.rjmprogramming.com.au%2Fwordpress&tl=' + val.value, '_blank');<br \/>\n \/\/alert(\"yes\" + val.value);<br \/>\n }<br \/>\n}<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p>Not too bruising!<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-webpage-translate-tutorial\/'>Google Translate Webpage Translate Tutorial<\/a>.<\/p-->\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d53558' onclick='var dv=document.getElementById(\"d53558\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/wordpress\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d53558' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d53564' onclick='var dv=document.getElementById(\"d53564\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/landing-page\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d53564' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d53639' onclick='var dv=document.getElementById(\"d53639\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/ajax\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d53639' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d53644' onclick='var dv=document.getElementById(\"d53644\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/administrator\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d53644' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Yesterday&#8217;s Google Translate Landing Page Translate Update Tutorial left off with &#8230; It&#8217;s the start that does not ingrain the webpage HTML to any great permanence, and that is for another &#8220;PHP involvement&#8221; day. &#8230; and that new day is &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/google-translate-landing-page-translate-updated-list-tutorial\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,12,14,37],"tags":[1724,69,354,367,2074,429,430,532,576,652,680,1560,932,997,3014,1114,1319],"class_list":["post-53644","post","type-post","status-publish","format-standard","hentry","category-ajax","category-elearning","category-event-driven-programming","category-tutorials","tag-administrator","tag-ajax","tag-dom","tag-dropdown","tag-file_exists","tag-file_get_contents","tag-file_put_contents","tag-google-translate","tag-html","tag-javascript","tag-landing-page","tag-language","tag-php","tag-programming","tag-referrer","tag-security","tag-tutorial"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/53644"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=53644"}],"version-history":[{"count":8,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/53644\/revisions"}],"predecessor-version":[{"id":53652,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/53644\/revisions\/53652"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=53644"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=53644"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=53644"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}