Tag:

Gengo: switch della lingua

Read this in English
Venerdì, 14 Dicembre, 2007

Noto alcune ricerche provenienti da Google per “language switch gengo” e, visto che in effetti l’ho implementato nel mio theme, è un peccato che gli interessati giungano qui senza trovare una risposta.

Quindi ecco il codice da aggiungere al proprio tema WordPress affinché venga mostrato lo switch di lingua, per leggere lo stesso articolo ma in una lingua differente.
Al momento uso questo codice:
<div class="post_translations" style="float:right">
<?php if (function_exists('the_translations')) the_translations('pre= &post= &title_exists=Read this in ') ?>
</div>

Innanzitutto la parte “if function_exists” permette al tema di funzionare correttamente, senza errori, anche quando il Plugin Gengo viene disattivato per qualche motivo. Il parole povere dice al PHP: se non ti risulta dichiarata e disponibile una funzione di nome “the_translations” allora evita di processare il codice di seguito, ingnorandolo.

La funzione “the_translations” ritorna una stringa che rappresenta il codice HTML per mostrare una lista di traduzioni per il post corrente. Deve essere utilizzato all’interno di “The Loop”.

Io sto usando una unica stringa come parametro, indicandone più d’uno in una “querystring” (param1=valore1&param2=valore2 …).

Dando dei valori a “pre”, “post” e “inner” puoi specificare quali tag HTML dovrebbero essere rispettivamente aperti, chiusi e posti nel mezzo dei vari link alle altre lingue ritornati dalla function.
Visto che questo blog è bilingue (Inglese/Italiano) ne sto usando solo due ovvero non ho bisogno di una “lista” di traduzioni in altre lingue bensì solo un link all’altra -eventuale- lingua disponibile per ciascun articolo. Ecco perché ai parametri pre e post indico come valori uno spazio. Quindi eventualmente apparirà solo un link per operare lo “switch” (cambio) di lingua, senza neanche il bisogno di aggiungere ulteriori tag HTML prima o dopo.

Il parametro “title_exists” indica la scritta da mostrare prima dei/l link, solo nel caso siano associate versioni in altre lingue. Non passando altri parametri (come nel mio caso, riportato sopra) se un post è scritto in un’unica lingua non apparirà nulla, come da mia intenzione.
Altrimenti dovrete aggiungere il parametro “title_none”, indicando la scritta da mostrare in caso di assenza di traduzioni.
Per entrambi i parametri, potrete scrivere una scritta a vostra scelta -in una lingua, come ho fatto io in inglese- altrimenti per entrambi potrete usare, come valore, la keyword ”GENGO_DEFAULT”: questo farà apparire rispettivamente scritte come “Other languages” o “No translations”.

Nel mio caso il risultato viene quindi inserito dentro un DIV (come da codice), con “float” a destra come indicato esplicitamente nello stile “inline” (style=”…”) e per il resto l’aspetto è deciso nel file .css (style sheet) in corrispondenza della class indicata (post_translations) ma questa è un’altra storia.

Il risultato finale del codice riportato è facilmente visibile leggendo singolarmente (non in un elenco dove non faccio comparire lo switch) i miei post.

Spam Karma 2: la scelta

Read this in English
Domenica, 11 Febbraio, 2007

Riguardo i nuovi plugin wordpress che sto aggiungendo, abbandono ogni speranza di farmi validare la mia Api Key da Akismet; una settimana di pazienza (forse di più) è abbastanza. Non vedo neanche ostacoli tecnici -impostazioni del webserver- da parte del mio hosting, come spiegato nel post precedente. Posso comprendere che un servizio possa richiedere la validazione per evitare massicce richieste da ognidove ma vorrei procedere speditamente, quindi… mi arrendo.

Per questo motivo ho aggiunto e attivato (subito e senza alcuna trafila) il buon Spam Karma 2 (SK2) di cui ho sentito parlare molto bene e in effetti sembra efficiente:
beh, diciamo che lo vedo “stupefacentemente pluriopzionato”, è un po’ presto per valutarlo “sul campo”; queste sezioni sono nuove, ancora sconosciute e lontane da attacchi di spam… vedremo. Dopotutto ho avuto il piacere di riceverne alcuni in altri siti che gestisco e garantisco che… è seccante.

Primo post primi problemi

Read this in English
Venerdì, 2 Febbraio, 2007

Acc, WordPress è eccellente ma il suo Plugin anti-spam, Akismet, installato di default mi crea problemi invece di risolvermeli. La “API Key” richiesta -ottenuta registrando un account su wordpress.com- mi viene rifiutata dal pannello di configurazione di Akismet. Continua a ripetermi:
«The key you entered is invalid. Please double-check it.»

Il supporto wordpress.com mi ha gentilmente risposto -traduco dall’inglese- come segue:

Il messaggio di errore è dovuto al fatto che Akismet potrebbe non aver accesso al server Akismet. Il problema è uno di questi tre [veramente sono quattro]:
- ad Akismet è negato l’accesso ad internet se stai girando in locale dietro un firewall;
- il tuo server non permette la function ‘fopen’ di cui Akismet ha bisogno;
- il tuo host potrebbe aver bisogno di sapere che le precauzioni di sicurezza di SELinux (installato di default su Fedora4) causa questo problema. Con SELinux disabilitato funziona; - chiedi al tuo host se hanno abilitato il mod_chroot. In questo caso, questa potrebbe esser la causa del non funzionamento di Akismet.
Dovrebbero esser in grado di consigliarti sul da farsi.

Ho contattato il mio supporto hosting ma ha escluso tutti i punti (sui primi due ero sicuro che non ci sono problemi… sugli altri due non avevo idea).

Qualcuno dice -ai wordpress.org support forums- che Akismet può richiedere 24-48 ore di pazienza, aspettiamo un altro giorno… dopodiché sceglierò tra Spam Karma 2 o Bad Behavior, altri due plugin per lo spam-fighting sui commenti.

A voi come è andata l’attivazione di Akismet? Tutto liscio?