Vai al contenuto

Bandierine o Pulsanti per cambiare la lingua

Featured Replies

Inviato

Questo codice può essere usato per inserire delle bandiere affiancate ai nomi delle lingue disponibili nel footer.

 

cerca nel globalTemplate

{$lang['title']}

aggiungi prima

<if test="$lang['id'] == 1"><img alt="English" src="http://i48.tinypic.com/2822hcj.jpg"></if><if test="$lang['id'] == 23"><img alt="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg"></if>

sostituisci 23 con l'id della lingua a cui far corrispondere l'immagine.

post-29-0-31450700-1356361116_thumb.png

 

Per chi volesse riportare il codice in altre zone del template, quindi avere una barra con i pulsanti che permettono di cambiare la lingua in uso, allora prendete questo codice (header)

                                <style type="text/css">                                /* ICONE LINGUA STILE */                                span.lingua.selezionato img{                                      opacity: 1 !important;                                    }                                span.lingua img{                                      opacity: 0.5 !important;                                    }                                </style>                                <foreach loop="$footer_items['lang_chooser']['options'] as $lang">                                    <span class='lingua<if test="$lang['selected']"> selezionato</if>'>                                        <a href="{$this->lang->changeLanguageUrl( $lang['id'] )}"><if test="$lang['id'] == 1"><img alt="English" title="English" src="http://i48.tinypic.com/2822hcj.jpg">  </if><if test="$lang['id'] == 23"><img alt="Italiano" title="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg">  </if></a>                                    </span>                                </foreach>

post-29-0-93764400-1356361110_thumb.png

 

Se dovete usarlo in un template a parte attenzione al params="..." altrimenti appariranno degli errori nell'header!

Ho preso l'idea da wininizio.it ... forse hanno usato un codice diverso ma mi sembra più efficace questo ;)

Modificato da Skillman_92

Inviato

Se volessi metterlo prima dell'icona della busta dei messaggi privati?

Utilissimo grazie =)

Inviato
  • Autore

semplice nel globalTemplate cerca

<div id='user_navigation' class='logged_in'>							<ul class='ipsList_inline right'>

e aggiungilo dopo <ul class='ipsList_inline right'>

Inviato

Mi da pagina bianca O_o

Spè, forse perchè devo mettere giuste gli id della lingua...


EDIT:

No, non va.

Inviato
  • Admin

Tu hai:

					<if test="memberbox:|:$this->memberData['member_id']">						<div id='user_navigation' class='logged_in'>							<ul class='ipsList_inline right'>

 

sotto metti:

<style type="text/css">                                /* ICONE LINGUA STILE */                                span.lingua.selezionato img{                                      opacity: 1 !important;                                    }                                span.lingua img{                                      opacity: 0.5 !important;                                    }                                </style>                                <foreach loop="$footer_items['lang_chooser']['options'] as $lang">                                    <span class='lingua<if test="$lang['selected']"> selezionato</if>'>                                        <a href="{$this->lang->changeLanguageUrl( $lang['id'] )}"><if test="$lang['id'] == 1"><img alt="English" title="English" src="http://i48.tinypic.com/2822hcj.jpg">  </if><if test="$lang['id'] == 23"><img alt="Italiano" title="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg">  </if></a>                                    </span>                                </foreach>

 

e infatti sotto il foreach avrai:

								<if test="showInboxNotify:|:! ( ! $this->memberData['member_id'] && $this->settings['force_login'] ) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline'])">

 

Ovvero lo pillola delle notifiche dei messaggi

Inviato

molto carino

Inviato

Ho fatto così, ma a me, da pagina bianca dopo la modifica, e non so il perchè...

Inviato

c e' un errore nella tua procedura

Inviato
  • Autore

potrebbe essere perchè và in conflitto con altri codici... noto che ha il tema personalizzato, perciò il problema è trovare un'altra posizione nel template!

edit ... una posizione quasi perfetta nella barra nera visibile a destra da visitatori e utenti registrati...

cerca

			<div id='header_bar' class='clearfix'>				<div class='main_width'>

e inserisci questo codice dopo

                                <style type="text/css">                                /* ICONE LINGUA STILE */                                span.lingua.selezionato img{                                      opacity: 1 !important;                                    }                                span.lingua img{                                      opacity: 0.5 !important;                                      padding-top:10px;                                    }                                </style>                                <foreach loop="$footer_items['lang_chooser']['options'] as $lang">                                    <span class='lingua right<if test="$lang['selected']"> selezionato</if>'>                                          <a href="{$this->lang->changeLanguageUrl( $lang['id'] )}"><if test="$lang['id'] == 1"><img alt="English" title="English" src="http://i48.tinypic.com/2822hcj.jpg"></if><if test="$lang['id'] == 6"><img alt="Italiano" title="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg"></if></a>                                    </span>                                </foreach>

Modificato da Skillman_92

Inviato
potrebbe essere perchè và in conflitto con altri codici... noto che ha il tema personalizzato, perciò il problema è trovare un'altra posizione nel template!

Io utilizzo la skin di default Skill, e le modifiche al global template sono due messe in croce.

Io trovo la porzione indicata da voi, ma la pgina bianca proprio non la capisco.

 

Provo a fare come dici, ma puoi farmi uno screen di come viene?

  • 1 mese dopo...
Inviato

Per aggiungere le bandierine nella Barra utente nera in alto, aprire i template della skin, ed andare nel globalTemplate

 

appena dopo

					<if test="memberbox:|:$this->memberData['member_id']">						<div id='user_navigation' class='logged_in'>							<ul class='ipsList_inline right'>

 

aggiungere

 

<!-- AGGIUNTA  BANDIERINE START --><style type="text/css"> 								/* ICONE LINGUA STILE */								span.lingua.selezionato img{									  opacity: 1 !important;									}								span.lingua img{									  opacity: 0.5 !important;									}								</style>								<foreach loop="$footer_items['lang_chooser']['options'] as $lang">									<span class='lingua<if test="$lang['selected']"> selezionato</if>'>										<a href="{$this->lang->changeLanguageUrl( $lang['id'] )}"><if test="$lang['id'] == 1"><img alt="English" title="English" src="http://i48.tinypic.com/2822hcj.jpg">  </if><if test="$lang['id'] == 23"><img alt="Italiano" title="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg">  </if></a>									</span>								</foreach><!-- AGGIUNTA  BANDIERINE END -->

 

come vedete le immagini sono hostate su tinypic, quindi non dovete fare nessun upload

post-1-0-64384300-1360425685_thumb.jpg

Inviato

al posto delle bandierine è ovviamente possibile inserire anche solo del semplice testo

<li>testo</li>
Inviato

dimenticavo che la modifica bandierine era stata effettuata da Askancy :) Skillman_92 :P
 

Inviato

A me viene fuori cosi'!post-1913-0-65944100-1360434044_thumb.jp

Inviato

dipende dalla skin credo, forse ha un template/css leggermente diverso.

Modificato da Caffpow

Inviato

Grazie, provo ;)

Inviato

al posto delle bandierine è ovviamente possibile inserire anche solo del semplice testo

<li>testo</li>

 

Funziona ma il testo si vede SOLO quando si è loggati

Inviato

controlla che non è posizionato all'interno di un <if...>...<if/>

 

posta la porzione di codice, anche qualcosa in più, per capire meglio.

Inviato

controlla che non è posizionato all'interno di un <if...>...<if/>

 

posta la porzione di codice, anche qualcosa in più, per capire meglio.

 

 

 

 

<li class='active'>                                    <a href="{parse url="app=core&module=reports&do=index" base="public"}" title='{$this->lang->words['view_reports']}'>{$this->memberData['_cache']['report_num']} {$this->lang->words['report_member_bar']}</a>                                </li>                            </if>                        </ul>                    </if>                    <if test="memberbox:|:$this->memberData['member_id']">                        <div id='user_navigation' class='logged_in'>                            <ul class='ipsList_inline right'><li>Benvenuto su MacVillage, registrati o accedi tramite FaceBook o Twitter</li>                                <if test="showInboxNotify:|:! ( ! $this->memberData['member_id'] && $this->settings['force_login'] ) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline'])">                                    <if test="messengerlink:|:$this->memberData['g_use_pm'] AND $this->memberData['members_disable_pm'] == 0"> 

Modificato da danielegenova

Inviato

Nessuno mi da qualche dritta? Grazie  :huh:

Inviato

Ma se vuoi aggiungere un messaggio di benvenuto, perchè non dai un'occhiata QUI ?? ti personalizzi come vuoi i parametri e via

Inviato

li devi aggiungere ANCHE prima di :

 

 

<li>									<span class='services'>										<if test="limFacebook:|:IPSLib::loginMethod_enabled('facebook')">											<a href='{parse url="app=core&module=global&section=login&serviceClick=facebook" base="public"}'>{parse replacement="lim_facebook"}</a>										</if>										<if test="limTwitter:|:IPSLib::loginMethod_enabled('twitter')">											<a href='{parse url="app=core&module=global&section=login&serviceClick=twitter" base="public"}'>{parse replacement="lim_twitter"}</a>										</if>										<if test="limWindows:|:IPSLib::loginMethod_enabled('live')">											<a href='{parse url="app=core&module=global&section=login&do=process&use_live=1&auth_key={$this->member->form_hash}" base="public"}'>{parse replacement="lim_windows"}</a>										</if>

che si trova poco sotto

Inviato

Ma se vuoi aggiungere un messaggio di benvenuto, perchè non dai un'occhiata QUI ?? ti personalizzi come vuoi i parametri e via

 

Forse perchè non ne ero a conoscenza? Grazie

li devi aggiungere ANCHE prima di :

 

 

<li>									<span class='services'>										<if test="limFacebook:|:IPSLib::loginMethod_enabled('facebook')">											<a href='{parse url="app=core&module=global&section=login&serviceClick=facebook" base="public"}'>{parse replacement="lim_facebook"}</a>										</if>										<if test="limTwitter:|:IPSLib::loginMethod_enabled('twitter')">											<a href='{parse url="app=core&module=global&section=login&serviceClick=twitter" base="public"}'>{parse replacement="lim_twitter"}</a>										</if>										<if test="limWindows:|:IPSLib::loginMethod_enabled('live')">											<a href='{parse url="app=core&module=global&section=login&do=process&use_live=1&auth_key={$this->member->form_hash}" base="public"}'>{parse replacement="lim_windows"}</a>										</if>

che si trova poco sotto

 

Funziona! Grazie, gentilissimo come sempre  ;)

  • 11 mesi dopo...
Inviato
  • Autore

È possibile anche automatizzare il sistema, attraverso la cache dei linguaggi installati.

<foreach loop="$this->cache->getCache( 'lang_data' ) as $lang">...class="lingua right<if test="intval($this->member->language_id) == intval($lang['lang_id'])"> selected</if>"</foreach>
Inviato

per fare?

Per favore accedi per lasciare un commento

Potrai lasciare un commento dopo aver effettuato l'accesso

Accedi Ora

Chi sta navigando 0

  • Nessun utente registrato visualizza questa pagina.

Informazioni importanti

Abbiamo inserito dei cookies nel tuo dispositivo per aiutarti a migliorare la tua esperienza su questo sito. Puoi modificare le impostazioni dei cookie, altrimenti puoi accettarli cliccando su continua. to insert a cookie message.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.