Chatbox Widgets voor verschillende talen

Status
Niet open voor verdere reacties.

Mieketie

Gebruiker
Lid geworden
16 sep 2006
Berichten
92
Hallo iedereen,

Ik heb de opdracht om een chatbox widget (javascript) op onze site te zetten. Maar we hebben een site in 2 talen (NL-FR). Ik heb dus ook 2 widget scripts in mijn bezit. Alleen weet ik niet hoe ik de NL-widget moet linken aan de NL pagina's en hetzelfde voor de FR-pagina's.

Ik kan wél 1 widget script uploaden en dat werkt maar die houdt geen rekening met de taal van de bezoeker.

Ik ben geen programmeur en onze website wordt beheerd door een derde partij die zich niet wil moeien met third-party widgets.

Heeft iemand hier een idee in welke richting ik moet gaan kijken ? Moet de html-code aangepast worden of zijn het JS's die ik moet aanpassen om de juiste html-pagina's te vinden ?

Alvast bedankt om jullie licht even te willen schijnen :)
 
Het ligt eraan hoe de taal van de site bepaald wordt.
Gaat dit vanuit de URL, of een keuze vanuit een knop waarop de klant drukt?

En hoe wordt de taal van de widget bepaald?
 
Laatst bewerkt:
Hallo PHP4U,

De taal van de site wordt bepaald door de bezoeker die zelf kan kiezen of hij naar de /nl-be/ of de /fr-be/ site wil gaan.
Standaard staat die op nl-be.

De taal van de widget wordt bepaald doordat er 2 aparte widgetcode zijn gemaakt. In widget programma kan je deze genereren. Ik heb dus 2 widgets die ik elk aan een taal moet koppelen maar ik weet niet hoe...
 
Wat zijn de verschillen in de HTML code van de widgets?
 
Mag ik ze hier eventueel allebei kopiëren of zijn dat privé gegevens ?
 
Lijkt mij geen privé, want HTML-code is altijd te bekijken.
 
Zie hieronder. Daarmee weet je ook meteen met welke software we werken :)

Fr-versie
<script async type="text/javascript" src="https://userlike-cdn-widgets.s3-eu-west-1.amazonaws.com/ffb0aaef11ad4fecb276644efc1a3789ca4c5e0c0b904df1a7b586e8b765ff34.js"></script>

NL-versie
<script async type="text/javascript" src="https://userlike-cdn-widgets.s3-eu-west-1.amazonaws.com/a0f6fa909bb64759b55d416b0b6e91a98a0d78b92fed44a18853849716942ba5.js"></script>
 
Ik ga even wat bakken in PHP.
Ik neem aan dat je hosting dat ondersteund?
 
Anyway...
Hier de code, in PHP die je bovenaan de site kan plaatsen.
(Ik neem aan dat dat je geen Wordpress gebruikt, of een ander bestaand CMS)

PHP:
<?php
// Bouw de URL op.
if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') 
    $link = "https"; 
else
    $link = "http"; 
$link .= "://"; 
$link .= $_SERVER['HTTP_HOST'];  
$link .= $_SERVER['REQUEST_URI']; 

$url = parse_url($link); // stel URL samen

// haal het pad eruit.
$path = ltrim($url['path'],'/'); // strip de eerste /
$path = explode("/",$path);

// Gebruik het eerste deel van het pad uit de URL (bijv. nl-be) en maak hiervan een switch.
switch($path[0]) {
    case "nl-be":
        $code = '<script async type="text/javascript" src="https://userlike-cdn-widgets.s3-eu-west-1.amazonaws.com/a0f6fa909bb64759b55d416b0b6e91a98a0d78b92fed44a18853849716942ba5.js"></script> ';
    break;
    
    case "fr-be":
        $code = '<script async type="text/javascript" src="https://userlike-cdn-widgets.s3-eu-west-1.amazonaws.com/ffb0aaef11ad4fecb276644efc1a3789ca4c5e0c0b904df1a7b586e8b765ff34.js"></script>';
    break;
}
?>

En dit kan je op de plek zetten waar de juiste embed-code getoond moet worden.
PHP:
<?php
echo $code;
?>
 
Neen, we gebruiken geen Wordpress. Onze website word gehost door Sana (bekend ?)
Ik heb in de backend een beperkte mogelijkheid om HTML-injecties toe te passen waaronder deze javascripts.

Website is wel degelijk https.

Ik ga eens kijken of ik hiermee vooruit kan. Het enige wat me wat vreemd lijkt is dat laatste stukje PHP code... Ik zie niet waar ik die nog zou moeten gaan zetten.

Het lijkt me namelijk dat de plaats van de widget is gedefinieerd door Userlike en dus in de JS-code zou zitten. Lijkt dat mogelijk te zijn ?
 
Laatst bewerkt:
Het eerste deel moet je in de index.php plaatsen, bovenaan.
De rest op de plek waar jij je embed wilt tonen. Ik weet niet of je hier PHP kan invoegen. Zo niet, dan raad ik aan om een gepaste oplossing te zoeken bij de leverancier van je CMS-systeem.
 
Het goede nieuws is dat de website niet is plat gegaan :)
Het slechte nieuws is dat hij enkel het laatste script behoud, nl de FR-versie. Dus als ik van taal wijzig dan wordt de widget gerefreshed maar ik krijg steeds dezelfde te zien.
 
Hoe ziet de URL er dan uit?
 
Zet eens na lijn 15 van het eerste script eens dit neer:
PHP:
echo "<pre>".print_r($path,true)."</pre>";
Als het goed is zie je een stukje ontwikkelings-code bovenaan staan.
Wat toont deze bij beide URL's?
 
Dit toont hij bij de NL-versie:
PHP:
print_r($path,true)."";
// Gebruik het eerste deel van het pad uit de URL (bijv. nl-be) en maak hiervan een switch.
switch($path[0]) {
case "nl-be":
    $code = ' ';
    break;
case "fr-be":
    $code = '';
    break;
}

Dit bij de Fr-versie:
PHP:
print_r($path,true)."";
// Gebruik het eerste deel van het pad uit de URL (bijv. nl-be) en maak hiervan een switch.
switch($path[0]) {
case "nl-be":
    $code = ' ';
    break;
case "fr-be":
    $code = '';
    break;
}
 
Laatst bewerkt door een moderator:
Dan ondersteunt je site geen PHP... :/
Of je hebt het ergens buiten PHP-codes geplaatst....

Zonder te weten hoe de site werkt, wordt het erg lastig,... vrees ik.
 
Daar vreesde ik voor.

Toch heel erg bedankt om je altruïsme, PHP4U.
We hebben het geprobeerd en dat is al heel erg belangrijk.
Ik weet nu toch al iets meer en ga verder zoeken.

Fijne dag nog en nogmaals bedankt.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan