Yii Framework Forum: Internazionalizzazione Con Gettext - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Internazionalizzazione Con Gettext Rate Topic: -----

#1 User is offline   crisz 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 3
  • Joined: 14-June 13

Posted 14 June 2013 - 03:33 AM

Ciao a tutti,
avrei bisogno di trovare una guida passo-passo per far diventare la mia applicazione bilingue (EN ed IT) utilizzando CGettextMessageSource; mi consigliate qualche link utile?
Non disdegno nemmeno un'estensione :)

Crisz
0

#2 User is offline   crisz 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 3
  • Joined: 14-June 13

Posted 14 June 2013 - 04:34 AM

Sto avendo una serie di errori; ecco cos'ho fatto sin ora:

Passo 1 ho creato il file "protected/includes/localization.php"

function __($string, $params = array(), $category = "") {
        return Yii::t($category, $string, $params);
}


Passo 2 in "protected/config/main.php" ho inserito la riga

require_once(dirname(__FILE__) . '/../includes/localization.php');


ed ho inserito nell'array components il seguente codice:

'messages' => array(
            'class' => 'CGettextMessageSource',
            'useMoFile' => false,
        ),



Passo 3 in "protected/messages" ho creato le due cartelle "en_US" ed "it_IT" ed i relativi file messages.po


Passo 4 per fare un test ho modificato il file contact.php inserendo all'inizio del file

Yii::app()->language = 'it_IT';


ho modificato le seguenti righe:

$this->pageTitle=Yii::app()->name .' - '. __("Contact Us");
echo __("If you have business inquiries or other questions, please fill out the following form to contact us. Thank you.");
echo __("Fields with * are required");


<div class="row">
		<?php echo $form->labelEx($model,__('name')); ?>
		<?php echo $form->textField($model,__('name'), array('required'=>'required')); ?>
		<?php echo $form->error($model,__('name')); ?>
	</div>


Risultato:
"Contact US" e "If you have business inquiries ..." non vengono tradotte
"Fields with * are required" viene tradotta
"$form->labelEx($model,__('name')" viene tradotta
"$form->textField($model,__('name'), array('required'=>'required'))" mi da il seguente errore: CException - Property "ContactForm.Nome" is not defined.
0

#3 User is offline   crisz 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 3
  • Joined: 14-June 13

Posted 14 June 2013 - 05:29 AM

View Postcrisz, on 14 June 2013 - 04:34 AM, said:

Risultato:
"Contact US" e "If you have business inquiries ..." non vengono tradotte
"Fields with * are required" viene tradotta
"$form->labelEx($model,__('name')" viene tradotta
"$form->textField($model,__('name'), array('required'=>'required'))" mi da il seguente errore: CException - Property "ContactForm.Nome" is not defined.


Aggiornamento: ho corretto un po' di sviste ma la frase "If you have business inquiries ..." continua a non venir tradotta

Per quanto riguarda invece le label dei form ho trovato questo post: using-translations-in-form-labels

ed il modo corretto per tradurre le etichette รจ il seguente:

<?php echo $form->labelEx($model,'name', array('attributeName' => __('name'))); ?>
<?php echo $form->textField($model,'name', array('required'=>'required')); ?>
<?php echo $form->error($model,'name'); ?>

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users