言語リンクをクリックして、現在のページを変更せずに言語を切り替えられるようにしたい。
以下のようなコードを見つけました。動作しますが、ページ名が異なるためページが見つかりません。例:「にしながら、私は、言語を変更する場合../en/about.php」ページ、それはに行く「../tr/about.phpページを」。移動するページは「../tr/hakkimizda.php」です。
どうすればこの問題を解決できますか?
<?php
//URL path. eg: index-en/job.php
$path = trim($_SERVER['REQUEST_URI'],'/');
//language from URL. eg: index-en
$lang = explode('/',$path)[0];
//Paths in other languages: eg: 'tr' => 'index-cn/job.php'
$langs = [
'en'=>preg_replace("/$lang/",'../en',$path,1),
'tr'=>preg_replace("/$lang/",'../tr',$path,1),
];
?>
<ul class="dropdown-menu">
<li>
<a href="<?= $langs['tr']?>">Türkçe</a>
</li>
<li>
<a href="<?= $langs['en']?>">English</a>
</li>
</ul>
私はphp言語を知りませんが、javascriptの問題を解決しました。
解決:
<a class="nav-link" href="#" id="LangRedirect">English</a>
JavaScript
$("#LangRedirect").click(function LangRedirect(){
var lang,en,tr;
lang=window.location.pathname;
en="/en/";
tr="/tr/";
switch (lang){
// About
case en+"about.php": location.assign(tr+"hakkimizda.php");
break;
case tr+"hakkimizda.php": location.assign(en+"about.php");
break;
default: window.location.pathname=(en+"404.php");
}});
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加