Aquest és el meu primer plugin de WordPress. Es tracta de WP-Apertium, un plugin que permet incorporar el traductor Apertium a qualsevol blog de WordPress.
Basat en la idea d’Enrique Benimeli (apertium-blog-translator), he reescrit WP-Apertium pràcticament des de 0 per tal d’aconseguir noves funcionalitats, adaptar-lo a POO i, sobretot, eliminar la restricció de necessitar Apertium instal·lat en el servidor local: el plugin connecta al servidor www.apertium.org per realitzar les connexions, en cas de que no existisca el traductor instal·lat en local.
Una altra característica important és que només fa les traduccions la primera vegada que s’accedeix a una pàgina, i les desa en el servidor, de manera que s’optimitzen els accessos al traductor remot. Cada vegada que es modifica l’entrada original, la memòria cau associada s’esborra, de manera que es regeneren les traduccions.
Si trobeu qualsevol errada o funcionament incorrecte, o teniu alguna suggeriment per possibles millores, noves funcionalitats, opcions o característiques, podeu deixar un comentari ací, o un obrir una incidència al bugzilla d’Apertium.
Agraïments
M’agradaria agrair molt especialment a Enrique Benimeli la seva aportació inicial. Sense la seva idea aquest plugin no existiria. També m’ha ajudat molt en la millora del mateix. També voldria agrair a Francis Tyers, qui va ajudar a fer els canvis adients al servidor d’Apertium per facilitar la programació del plugin. I finalment a tota la gent d’Apertium en general (en ordre totalment aleatori: Sergio, Gema, Mireia, Carme, Mikel, Felipe, Juan Antonio, Enrique, Fran, Jimmy,… i tots els que em deixaré) perquè sense el seu excel·lent treball en tots els aspectes del traductor, aquest plugin no serviria per a res 😉
Descàrrega
- Última versió (0.9)
- Format ZIP: wp-apertium-latest.zip
- Format TGZ: wp-apertium-latest.tgz
- Codi font (SVN)
Llista de canvis
Versió 0.10 (en desenvolupament – algun moment de 2017)
- Ús de la nova API d’Apertium (api.apertium.org)
- Panell d’administració per gestionar les opcions (substitueix el fitxer
inc/opcions.php
) - Correcció de l’errada 4
- Ús de l’API REST de WordPress per obtenir la informació
Versió 0.9 (09-jul-2009)
- Recuperació de les traduccions mitjançant Ajax
- Us de la variable GET
?lang=xx
per permetre les traduccions sense Javascript - Correcció de les errades 2 i 3
Versió 0.8 (03-nov-2008)
- Primera versió del plugin
- Traducció d’entrades i pàgines de forma transparent a l’usuari
- Memòria cau per optimitzar els accessos al servidor
- Per modificar les opcions, cal editar el fitxer
inc/opcions.php
de la carpeta del plugin
Incompatibilitats
- AdSense dins del contingut de les entrades:
- Si s’habiliten les traduccions via AJAX, el plugin mostra una incompatibilitat amb els anuncis d’AdSense: la pàgina es mostra tota blanca.
- Si no estan habilitades les traduccions amb Ajax, com que totes les traduccions estan inicialment al codi de la pàgina (encara que ocultes), és possible que es supere le màxim de 3 blocs d’anuncis per pàgina que marca Google i que, per tant, aquestos no es mostren.
Errades conegudes
- No s’esborra la memòria cau Solucionat al SVN (04/11/2008)
- Repetició de IDs en el codi font (una vegada per a cada traducció) Solucionat al SVN amb la versió 0.9beta (28/01/2009)
- No funcionen bé anuncis adSense (fan invisible la pàgina al recarregar el contingut amb javascript) WONT-FIX -> INCOMPATIBILITAT (07/07/2009)
- Presenta problemes amb l’ús de <code><!– more –></code>
Per fer
Tasques per fer (amb una xicoteta indicació de la versió en què espere implementar-les)
- Optimitzar el codi Javascript, per a un ús més eficient de jQuery ? v0.9
- Carregar les traduccions amb Ajax (per alleugerir la pàgina, no marejar als cercadors) ? v0.9
- Permetre la traducció amb la variable GET
?lang=xx
, per als casos on no es dispose de Javascript (o per a permetre enllaços a idiomes) ? v0.9 - Habilitar enllaços per a poder accedir a les traduccions sense Javascript ? v0.9
- Panel d’administració ? v0.10
- Nova API d’Apertium ? v0.10
- Comprovar llengües disponibles a les que traduir, donada una llengua d’entrada. ? v0.12
- Personalitzar el funcionament del traductor a nivell de cada entrada o pàgina en particular:
- Deshabilitar la traducció ? v0.14
- Canviar la llengua d’origen (si és distinta a la definida com a global al blog) ? v0.14
- Canviar el llistat de llengües de destí ? v1.4
- Possibilitat de traduir opcions meta determinades (a més del títol i del contingut) ? v0.16
- Interfície de post-edició dels articles ? v0.18
Si t’agrada molt…