Právě je 20 dub 2024 06:44

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 3 ] 
Autor Zpráva
 Předmět příspěvku: PhpBB - česky i anglicky
PříspěvekNapsal: 22 črc 2011 09:29 

Registrován:
28 kvě 2011 14:33
Příspěvky:
4
Dobrý den,
chci se zeptat jestli je možné nastavit forum česky i anglicky zároveň.(Jako je např.Zen Cart v češtině i angličtině).Existuje nějaké nastavení,program nebo něco podobného?Prosím o radu.
Děkuji předem ;)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PhpBB - česky i anglicky
PříspěvekNapsal: 22 črc 2011 17:41 

Registrován:
20 črc 2011 12:16
Příspěvky:
31
Dobrý den,
kterou verzi phpBB používáte?

Níže jsem pro Vás připravil návod, jak přidat výběr jazyků pro phpBB ver. 3.0.9, tedy nejnovější dostupné verze. Návod by měl být funkční pro všechny fóra založená na phpBB 3.x

Záleží, jak jste fórum instaloval. Pokud jste jej instaloval podle našeho návodu, nainstaloval jste fórum jak s českým, tak s anglickým překladem. Pokud jste fórum instaloval stažením ze stránek http://phpbb.com, musíte češtinu nově nainstalovat.

Stáhněte si ji z http://www.phpbb.com/customise/db/translation/czech/ a rozbalte složky /styles a /language, které najdete v archívu s překladem, do hlavní instalační složky vaší instalace phpBB /, přejděte do záložky System -> Language packs a u položky czech dejte install.

Tímto je nainstalována čeština, ještě v General -> Board setting v rozbalovacím seznamu Default language ji můžete nastavit jako hlavní jazyk.

Nyní budeme instalovat modul Language Selection Mod.

Nejprve si pomocí FTP zazálohujte celou instalaci phpBB (kdyby se něco nepovedlo, ať to můžete vrátit). Pak si v textovém editoru otevřete soubory includes/functions.php, includes/session.php, language/en/common.php, language/cs/common.php a styles/prosilver/template/overall_header.html - případě, že používáte jinou šablonu vzhledu, zaměňte "prosilver" za název vaší šablony. Nebo napište název do tohoto fóra a já návod upravím.

V souboru includes/functions.php najděte:

Kód:
// The following assigns all _common_ variables that may be used at any point in a template.
   $template->assign_vars(array(

a nahraďte jej za:
Kód:
// Begin Language Selection Mod
   $nlang = strtolower(request_var('nlang', ''));
   if (!empty($nlang))
   {
      $sql = 'SELECT lang_iso
         FROM ' . LANG_TABLE . "
         WHERE lang_iso = '" . $db->sql_escape($nlang) . "'";
      $result = $db->sql_query($sql);
      $row = $db->sql_fetchrow($result);
      $db->sql_freeresult($result);
      $nlang = file_exists($user->lang_path . basename($nlang . '/')) ? $nlang : '';
      if (!empty($nlang) && !empty($row))
      {
         if ($user->data['user_id'] == ANONYMOUS)
         {
            $cktime = time() + 5259488;
            $user->set_cookie('nlang', $nlang, $cktime);
            $config['default_lang'] = $nlang;
         }
         else
         {
            $sql_ary = array(
               'user_lang'            => $nlang,
            );
            $sql = 'UPDATE ' . USERS_TABLE . '
               SET ' . $db->sql_build_array('UPDATE', $sql_ary) . '
               WHERE user_id = ' . $user->data['user_id'];
            $db->sql_query($sql);
         }
      }
      $redircur = build_url('nlang');
      $redirect = redirect($redircur);
   }
   // END Language Selection Mod
   // The following assigns all _common_ variables that may be used at any point in a template.
   $template->assign_vars(array(
      // Begin Language Selection Mod
      'LANG_ACT'                  => build_url('nlang'),
      'S_LANG_OPTIONS'            => language_select($user->data['user_lang']),
      // END Language Selection Mod


V souboru includes/session.php najděte:
Kód:
$this->lang_name = basename($config['default_lang']);

a nahraďte jej za:
Kód:
// Begin Language Selection Mod
         $row = '';
         $req_lang = request_var($config['cookie_name'] . '_nlang', 'X', false, true);
         if ($req_lang != 'X')
         {
            $req_language = file_exists($this->lang_path . basename($req_lang) . '/') ? $req_lang : $config['default_lang'];
            $sql = 'SELECT lang_iso
               FROM ' . LANG_TABLE . "
               WHERE lang_iso = '" . $db->sql_escape($req_lang) . "'";
            $result = $db->sql_query($sql);
            $row = $db->sql_fetchrow($result);
            $db->sql_freeresult($result);
         }
         if (!empty($row))
         {
            $this->lang_name = $req_lang;
            $this->data['user_lang'] = $req_lang;
         }
         else
         {
            $this->lang_name = basename($config['default_lang']);
         }
         // END Language Selection Mod

V souboru language/en/common.php najděte:
Kód:
$lang = array_merge($lang, array(

a na nový řádek přidejte:
Kód:
// Begin Language Selection Mod
   'SELECT_LANGUAGE'         => 'Select your language',
   // END Language Selection Mod

Nakonec tam tedy bude:
Kód:
$lang = array_merge($lang, array(
     // Begin Language Selection Mod
   'SELECT_LANGUAGE'         => 'Select your language',
    // END Language Selection Mod
   'TRANSLATION_INFO'   => '',
   'DIRECTION'         => 'ltr',
   'DATE_FORMAT'      => '|d M Y|',   // 01 Jan 2007 (with Relative days enabled)
   'USER_LANG'         => 'en-gb',

To samé proveďte se souborem language/cs/common.php - tak, aby tam nakonec bylo:
Kód:
$lang = array_merge($lang, array(
     // Begin Language Selection Mod
   'SELECT_LANGUAGE'         => 'Select your language',
    // END Language Selection Mod
   'TRANSLATION_INFO'   => 'Český překlad – <a href="http://www.phpbb.cz/">phpBB.cz</a>',
   'DIRECTION'               => 'ltr',
   'DATE_FORMAT'            => '|d M Y|',
   'USER_LANG'               => 'cs-cz',


A v souboru styles/prosilver/template/overall_header.html najděte:
Kód:
<li class="icon-home"><a href="{U_INDEX}" accesskey="h">{L_INDEX}</a> <!-- BEGIN navlinks --> <strong>&#8249;</strong> <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></li>

a přidejte za tento kód:
Kód:
<!-- IF not S_IS_BOT -->
            <li class="rightside">
               <form style="margin-left:5px; margin-top:-3.5px;" id="nlang" method="post" action="{LANG_ACT}">
                  <fieldset style="border:none;">
                     <label for="nlang">{L_SELECT_LANGUAGE}:</label>
                     <select onchange="this.form.submit();" name="nlang">{S_LANG_OPTIONS}</select>
                     <noscript><div><input type="submit" value="{L_GO}" /></div></noscript>
                  </fieldset>
               </form>
            </li>
            <!-- ENDIF -->


Nakonec jděte do administračního rozhraní a v záložce General (Obecné) najděte Purge The Cache (Pročistit cache) a vyčistěte cache. Pak jděte do záložky Styles (styly) -> Templates (Šasblony) a zde u používané šablony dejte Refresh (Obnovit).

A na fóru by se měl objevit rozbalovací seznam s výběrem jazyka. Je možné zobrazení výběru změnit třeba na vlajky úpravou onoho posledního souboru.

_________________
Jakub Fišer
Webhosting C4
http://www.c4.cz/


Nahoru
 Profil  
 
 Předmět příspěvku: Re: PhpBB - česky i anglicky
PříspěvekNapsal: 22 črc 2011 21:12 

Registrován:
28 kvě 2011 14:33
Příspěvky:
4
Mnohokrát děkuji...už jsem si nevěděla rady.....velké díky:-)


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 3 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
cron
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
PhpBB Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz