Introducción
Los archivos de traducción están contenidos en el directorio /trans de cada bundle y puede haber varios archivos.
El número de archivos de traducción en cada bundle no se corresponde con el número de vistas sino con el número de métodos/controlador.
Y el nombre del archivo se estructura de la siguiente manera: [controller]_[action].trans
Por ejemplo, el archivo index_plugins.trans, alojado en el directorio /trans del bundle IndexBundle,
se ha generado a partir del controlador IndexController.php y el método plugins del mismo archivo, archivo contenido en el bundle IndexBundle.
La vista o vistan que deriven del método plugins, tendrán disponibles de las traducciones especificadas en index_plugins.trans.
Es posible que una misma vista tenga diferentes fuentes de traducciones según el método desde donde se ejecute.
Acerca de esta opción
Siguiendo las directrices anteriores, podemos crear los archivos de traducción de manera manual o activar esta opción y que se generen automáticamente.
La generación automática es cómoda, pero ralentiza la carga de páginas, ya que cada vez que se carga una nueva página se comprueba si existe o no los
archivos de traducción y se generan.
En realidad se generan dos archivos de traducción, el comentado en las líneas anteriores y el archivo cacheado codificado en JSON, que se aloja en el directorio
general /cache/trans, con el mismo nombre de archivo, pero agregando las extensión .cache
Es el archivo cacheado el que usará el sistema para obtener las traducciones, tanto en modo desarrollo como en modo producción.
Conclusión
Activa esta opción si quieres olvidarte de generar los archivos de traducción de forma automática y no te preocupa que el sistema sea más lento,
obvimante solo en modo desarrollo.
Desactiva esta opción sino trabajas con traducciones o si quieres agilizar la velocidad de carga de páginas en modo desarrollo. En contrapartida
tendrás que crear los archivos de traducción y generar los archivos cacheados a partir de la opción Recompilar traducciones.
El sistema obtiene las traducciones de los archivos cacheados alojados en el directorio /cache/trans
Si el sistema está trabajando en multi idioma y una página requiere de traducciones, pero no localiza el archivo de traducción, lo generará
automáticamente a partir del archivo alojado en el bundle correspondiente (ver detalles en ayuda del punto anterior).
El archivo solo lo genera sino existe, pero la comprobación de si existe el archivo o no la hace siempre, por lo que hay una merma en el rendimiento
global del sitio.
Es aconsejable no activar esta opción y generar de manera manual los archivos cacheados en la opción Recompilar traducciones, cada vez que se haga un
cambio en algún archivo de traducción.
En modo producción nunca se generarán los archivos de traducción originales que sí se generan en modo desarrollo y explicado en el punto anterior.
Si el sistema se encuentra en modo desarrollo y hay que crear un nuevo archivo de traducción, hay que hacerlo de manera manual o pasar a modo desarrollo.
Los archivos de idiomas cambian si se actualizan los idiomas disponibles... explicar..
Tanto al modificar el nombre de las hojas de estilos como del archivo que contiene el código javascript, se genera un nuevo archivo que
reemplaza al anterior, pero no se elimina.
NOTA: el archivo se genera a posteriori cuando el sistem no localiza el archivo...
Los archivos global.less y global.js contienen variables obtenidas del archivo de configuración para usar en las hojas
de estilo del framework y archivos javascript.
Formato ejemplo del archivo global.less:
//NO EDITAR ESTE FICHERO, SE GENERA AUTOMATICAMENTE
@crud_0: "users";
@crud_1: "categories";
@crud_2: "photos";
@crud_3: "products";
@crud_4: "blog";
@SESSION_lang: "es";
@SESSION_userData: "Array";
@SESSION_default_lang: "es";
@SESSION_langs: "Array";
@BASE_DIR: "C:/Users/filippo/Dropbox/Private/Proyectos/www/cms.com/web/";
@ROOT_DIR: "C:/Users/filippo/Dropbox/Private/Proyectos/www/cms.com/";
@SITE_URL: "http://cms.com/";
@IMAGES_URL: "http://cms.com/images/";
@DEVELOPMENT: "1";
@CSS_NAME: "616161.css";
@JS_NAME: "58795432.js";
El framework en modo desarrollo y producción trabajaba con un único archivo que se ha compilado a partir de todas las hojas de estilo
contenidas en los diferentes bundles, tanto en formato CSS como LESS.
Cualquier cambio en una hoja de estilo requiere que la hoja de estilo general compilada se regenere de nuevo con los cambios, sino no surtirá efecto.
Para evitar recompilar el CSS de manera manual desde la opción Recompilar CSS cada vez que se hace un cambio, en modo desarrollo es posible
activar esta opción y cada vez que se recargue una página se regenerá de nuevo, evidentemente con la pérdida de velocidad en la carga de la página.
Si estamos en modo desarrollo, no es aconsejable ni necesario activar esta opción, ya que los cambios que se apliquen en las hojas de estilo sólo deberían
ser puntuales y en este caso sí, aplicar los cambios con la opción Recompilar CSS.
En modo producción siempre se comprimirá el codigo CSS si se ha indicado esta opción, en cambio, en modo desarrollo, es posible comprimir o no, ya que el
el código comprimido es más difícil de depurar.
El archivo CSS público: {{ SITE_URL ~ 'css/' ~ CSS_NAME }}
Sólo en modo desarrollo podemos especificar si el código CSS se va a comprimir o no, en modo producción, siempre se va a comprimir.
La compresión del código es útil principalmente para mejorar la velocidad de la carga del framework. El único inconveniente es la dificultad de
depurar el código, por ello es una opción variable en desarrollo.
Este parámetro de configuración solo se va a aplicar cuando Regeneración de las hojas de estilo en cada recarga de página esté activo en modo desarrollo,
o bien, cuando se regeneré el código CSS vía Recompilar CSS.
El framework se basa en un sistema de enrutamiento que define las rutas en cada uno de los bundles en un archivo específico llamado
routes.php.
En estos archivos se definen de manera manual todas las rutas soportadas por el sistema y al igual que sucede con las traducciones, se generan
archivos cacheados, en este caso, un solo archivo, que contendrá las rutas que va a usar la web.
En modo desarrollo es conveniente que se genere este archivo continuamente, pero en modo producción, como viene siendo habitual, debe estar
desactivado y en caso necesario, forzar la regeneración de las rutas desde Recompilar Rutas.
{% endblock oneOne %}
{% block javascript %}
{{ parent() }}
{% endblock javascript %}