Lingue

In SelfComposer è possibile mostrare i contenuti in modo differente in base alle lingue scelte, attivabili dal pannello in Impostazioni > Generali > Lingue.

Estrarre le informazioni delle lingue

La lingua attiva può essere quella di default o quella scelta dall'utente. Le informazioni della lingua attiva sono contenuti in lang, un oggetto che contiene:

nome tipo descrizione
id int Id della lingua
code string Codice della lingua (ad esempio "it")
name string Nome della lingua
transl string Nome della lingua tradotto in inglese (ad esempio "italian")
direction string Indica la direzione della scrittura ("ltr" per quella da sinistra a destra, "rtl" per quelle opposte)
time_format string - date_format Formato dell'ora nella nomenclatura di PHP (ad esempio "H:i")
short_date_format string - date_format Formato della data in breve nella nomenclatura PHP (ad esempio "d/m/y")
long_date_format string - date_format Formato della data estesa nella nomenclatura PHP (ad esempio "l j F Y")
enabled int - 0/1 Se a 1 la lingua è abilitata
redirect
sequence float Numero della posizione nell'ordinamento della lingua, il più basso è la lingua di default
created_at date Creata il
updated_at date Aggiornata il
url string - URL URL della pagina in cui ci si trova in questa lingua
active bool Indica se la lingua è quella attualmente attiva

Per estrarre una collection di tutte le lingue attive è possibile utilizzare la funzione get_languages(), ogni lingua avrà come parametri quelli descritti sopra.

Creare un menu di selezione della lingua

In questo esempio creiamo una lista con le lingue attive con il link per visualizzarle. L'elenco sarà visibile solo se è attiva più di una lingua.

{% set languages = get_languages() %} {# imposto le lingue attive in una variabile #}
{% if languages|length > 1 %} {# controlliamo che sia attiva più di una lingua #}
	<ul>
		{% for lang in languages %}
			<li><a href="{{ lang.url }}">{{ lang.name }}</a></li> {# estraiamo nome e url di ogni lingua #}
		{% endfor %}
	</ul>
{% endif %}