J?zyk a waluta

Wszelkie dyskusje na temat instalacji i aktualizacji Opencart w wersji 1.0 i wyższej.

Język a waluta

Postprzez tommyk7 » 2 sie 2013, o 15:55

Witam
Na początku napiszę że szukałem tematu ale nic nie znalazłem.
Chciałem zapytać czy jest możliwość aby OpenCart wraz z przełączaniem języka zmieniał również walutę na obowiązująca w danym kraju a dopiero później jeśli klient będzie chciał zmieni ją z domyślnej na inną ??
Dodam że mam zainstalowaną wersję OC 1.5.5.1
http://www.cermarket.pl
Ci?gle to ogarniam ;-)
tommyk7
 
Posty: 58
Dołączył(a): 2 sie 2013, o 15:17

Re: Język a waluta

Postprzez schematx.pl » 2 sie 2013, o 16:44

edytuj plik odpowiedzialny za szablon języka catalog/view/theme/SZABLON/template/module/language.php

masz tam kod:
Kod: Zaznacz cały
<?php if (count($languages) > 1) { ?>
<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data">
  <div id="language"><?php echo $text_language; ?><br />
    <?php foreach ($languages as $language) { ?>
    <img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>" onclick="$('input[name=\'language_code\']').attr('value', '<?php echo $language['code']; ?>'); $(this).parent().parent().submit();" />
    <?php } ?>
    <input type="hidden" name="language_code" value="" />
    <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />
  </div>
</form>
<?php } ?>


zamień go na:
Kod: Zaznacz cały
<?php if (count($languages) > 1) { ?>
<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data">
  <div id="language"><?php echo $text_language; ?><br />
     <?php foreach ($languages as $language) {
      if($language['code'] == 'en') {
         $cur_ = 'GBP';
      }
      elseif($language['code'] == 'pl') {
         $cur_ = 'PLN';
      }
      elseif($language['code'] == 'de') {
         $cur_ = 'EUR';
      } else {
         $cur_ = 'USD';
      }
    ?>
   <img src="image/flags/<?php echo $language['image']; ?>" alt="<?php echo $language['name']; ?>" title="<?php echo $language['name']; ?>" onclick="$('input[name=\'language_code\']').attr('value', '<?php echo $language['code']; ?>');$('input[name=\'currency_code\']').attr('value', '<?php echo $cur_; ?>');  $(this).parent().parent().submit();" />
    <?php } ?>
    <input type="hidden" name="language_code" value="" />
    <input type="hidden" name="currency_code" value="" />
    <input type="hidden" name="redirect" value="<?php echo $redirect; ?>" />
  </div>
</form>
<?php } ?>


Teraz przejdźmy do pliku kontrolera catalog/controller/module/language.php, tam znajdź linijkę:
Kod: Zaznacz cały
$this->session->data['language'] = $this->request->post['language_code'];


i doklej bezpośrednio pod nią:
Kod: Zaznacz cały
$this->currency->set($this->request->post['currency_code']);
unset($this->session->data['shipping_methods']);
unset($this->session->data['shipping_method']);


jeśli nic nie pokaszaniłem w if/elseif to powinno działać.

Ewentualnie jest taki moduł: http://www.opencart.com/index.php?route ... 20Location który pozwala na automatyczne ustawienie języka i waluty w zalezności od ip klienta.
schematx.pl
 
Posty: 300
Dołączył(a): 21 sty 2013, o 20:11

Re: Język a waluta

Postprzez tommyk7 » 5 sie 2013, o 21:03

Dzięki wielkie.
Zaraz zabieram się do modyfikacji.
http://www.cermarket.pl
Ci?gle to ogarniam ;-)
tommyk7
 
Posty: 58
Dołączył(a): 2 sie 2013, o 15:17

Re: Język a waluta

Postprzez tommyk7 » 11 sie 2013, o 17:16

Wszystko działa z małym ale. Nad flagami języków pojawił się napis "Język", "Language" itd a tego opisu wolałbym uniknąć.
Którą część kodu należy wykasować ??
http://www.cermarket.pl
Ci?gle to ogarniam ;-)
tommyk7
 
Posty: 58
Dołączył(a): 2 sie 2013, o 15:17

Re: Język a waluta

Postprzez schematx.pl » 11 sie 2013, o 18:17

usuń: <?php echo $text_language; ?><br />
schematx.pl
 
Posty: 300
Dołączył(a): 21 sty 2013, o 20:11

Re: Język a waluta

Postprzez tommyk7 » 11 sie 2013, o 18:45

Dzięki
http://www.cermarket.pl
Ci?gle to ogarniam ;-)
tommyk7
 
Posty: 58
Dołączył(a): 2 sie 2013, o 15:17

Re: Język a waluta

Postprzez mireklakowski22 » 13 wrz 2013, o 01:35

bardzo dobra podpowiedź, trzeba usunac <?php echo $text_language; ?><br /> mialem ten sam problem
mireklakowski22
 
Posty: 3
Dołączył(a): 13 wrz 2013, o 01:10


Powrót do Instalacja i aktualizacja systemu Opencart

Kto przegląda forum

Użytkownicy przeglądający ten dział: Google [Bot] i 0 gości

cron