Създаване на многоезични сайтове
Автор: chalgoman
Това е един лесен начин да направите един сайт с няколко езика без да се налага да ги пишете няколко пъти, а само си създавате нови файлове с езиците.
И така да започнем с необходимите картинки:
- За български език
- За английски език
Сега създаваме index.php:
<?php
session_start();
?>
<!-- Това са бутоните за смяна на езика -->
<a href="index.php?p=<?print $_REQUEST[p];?>&chlang=bg"><img src="bg_icon.gif" border=0 alt="Български"></a>
<a href="index.php?p=<?print $_REQUEST[p];?>&chlang=en"><img src="en_icon.gif" border=0 alt="English"></a>
<!-- Това са бутоните за смяна на езика -->
<?php
if ($_REQUEST[chlang]) {
if (file_exists($_REQUEST[chlang].'.php')) {
session_register("chlang");
$_SESSION['chlang']=$_REQUEST['chlang'];
}
}
if (!$_SESSION['chlang']) {
include ('bg.php'); // Това е езика по подразбиране
} else {
include ($_SESSION[chlang].'.php');
}
if (!$_REQUEST[p]) {
// Ако е отворен просто Index.php отваря главната страница: main.php
include ('main.php');
} else {
if (file_exists($_REQUEST[p].'.php')) {
// Ако файла съществува го отваря
include ($_REQUEST[p].'.php');
} else {
// Ако файла не съществува отваряме извежда съобщение за грешка и отваря main.php
print "<center><small><font color=red>".$lang[page_not_exist]."</font></small></center>";
include ('main.php');
}
}
?>Сега да създадем и примерни файлове за български и английски език:
en.php (за английския):
<?php
$lang['hello']="Hello!";
$lang[page1]="First page";
$lang[page2]="Second page";
$lang[page_not_exist]="The page you're trying to open doesn't exist!";
// Така можете да добавяте колкото думи или изрази Ви трябват
?>bg.php (за българския):
<?php
$lang['hello']="Здравей!";
$lang[page1]="Първа страница";
$lang[page2]="Втора страница";
$lang[page_not_exist]="Страницата която се опитвате да отворите не съществува!";
// Същото като en.php само че на Български :)
?>Сега да направим и две примерни страници:
main.php
<?php
print $lang[hello];
print " <a href=index.php?p=new_page>$lang[page2] >></a>";
?>new_page.php
<?php
print $lang[hello]." <a href=index.php><< ".$lang[page1]."</a>";
?>Както видяхте за да направите някой текст в страниците на английски и български, просто трябва да го преведете в съощветните файлове като добавите $lang[neshto]=“Neshto na angliiski“; и $lang[neshto]=“Neshto na bulgarski“; и след това във страниците го използвате като напишете $lang[neshto]. Надявам се да ви е полезно. 🙂


