Elxis CMS Forum
Ελληνικό Forum => Γλώσσες - Πολυγλωσσία => Topic started by: michalis1984 on April 14, 2025, 13:31:56
-
Καλημέρα σας,
Στο template που επεξεργάζομαι έχω βάλει αυτό:
if ($tpl->isFrontpage() == true) /* homepage*/ {
include('inc_homepage.php');
} else if ($elxuri == 'about.html') {
include('inc_about.php');
} else if ($elxuri == 'services.html') {
include('inc_services.php');
} else if ($elxuri == 'technology.html') {
include('inc_technology.php');
υπάρχει κάποιος τρόπος σε αυτά τα php να φορτώνω διαφορετικό αρχείο γλώσσας; Έχω μια περίπλοκη περίπτωση που σχεδόν όλο το περίεχόμενο βρίσκεται οργανομένο σε αυτά τα php.
Μπορώ να έχω για τα αρχεία γλώσσας κάτι σαν
about_en.php
about_el.php
services_en.php
services_el.php
technology_en.php
technology_el.php
και να τα φορτώνω για να μην βρίσκονται όλα στο κεντρικό αρχείο language του template?
-
Μπορείς να το κάνεις με άπειρους τρόπους. Εφόσον έχεις αρχεία php μπορείς να προσθέσεις if statements εντός τους για την γλώσσα ή να χρησιμοποιήσεις αρχεία γλώσσας ώστε να μην έχεις διπλά αρχεία.
Θα απαντήσω στην ερώτησή σου με τον τρόπο που τη διατύπωσες:
$f = '';
if ($tpl->isFrontpage()) {
$f = 'frontpage';
} else {
switch ($elxuri) {
case 'about.html': $f = 'about'; break;
case 'services.html': $f = 'services'; break;
case 'technology.html': $f = 'technology'; break;
default: break;
}
}
if ($f != '') {
$lng = $eLang->currentLang();
if (file_exists(ELXIS_PATH.'/templates/something/inc/'.$f.'_'.$lng.'.php')) {
include(ELXIS_PATH.'/templates/something/inc/'.$f.'_'.$lng.'.php');
} else {
include(ELXIS_PATH.'/templates/something/inc/'.$f.'_en.php');
}
}
-
Απλώς φτιάχνουμε λογική και κάνουμε include το αρχείο γλώσσας που θέλουμε και μετά το Elxis κάνει τα μαγικά του. :D Ευχαριστώ Γιάννη!