.. highlight:: rest .. _deliverance_consejos: ================================================ Preguntas frecuentes, consejos y recomendaciones ================================================ Preguntas Frecuentes ==================== **¿Como cambiar el diseño de esta demostración?.** Debe ubicarse en el directorio $HOME/proyectos/deliverancedemo/static/ **¿Donde encuentro el archivo de configuración de reglas XML?.**   Para esta demostración esta ubicado en la ruta $HOME/proyectos/deliverancedemo/rules.xml **¿Como activar la consola de Depuración?.** * Para ello debe iniciar sesión, acceda a la dirección http://localhost:5000/.deliverance/login * las claves de usuario y contraseña si no han sido cambiadas por defecto son: *guest* * Para activar la consola de Depuración acceda a la dirección http://localhost:5000/?deliv_log * Se pueden aplicar las reglas desde la consola de depuración y al guardar los cambios inmediatamente se visualizaran es recomendable trabajar de este modo. **¿Como ver el diseño del tema sin cambios?.** Para ver el tema estático acceda a la dirección http://localhost:5000/static Recomendaciones =============== Agregar los atributos ``id/class`` del body del contenido al tema. Esta regla es beneficiosa debido a que agrega todos los ``id/class`` de ``Plone`` al ``tema`` sin la necesidad de tener que codificarlas una a una, esto representa un gran ahorro de tiempo. .. code-block:: xml Importar los ``CSS`` y ``Javascript`` del contenido al tema. Esto es beneficioso debido a que al realizar estas reglas ya se tendrán los CSS y Javascript de Plone y no habrá necesidad de tener que hacerlos uno por uno en el archivo ``CSS`` del ``tema`` representando también un gran ahorro de tiempo. .. code-block:: xml Consejos ======== - No importar los estilos a no ser que sea necesario. .. code-block:: xml Debido a que estos podrían cambiar totalmente la apariencia del tema. - No utilizar directamente el selector ``CSS`` a no ser que sea realmente necesario, siempre se debe usar un solo elemento, hijos del elemento, atributos de una etiqueta etc. Ejemplo ('children:#heading'). Esto es porque los selectores ``CSS`` y los tipos se superponen en la sintaxis general, cambiando el diseño de nuestro tema lo cual no es recomendable. Veamos un ejemplo de esto utilizando un ``Plone`` como fuente de contenido, se sustituirá la barra de búsqueda de ``Plone`` por la lista de usuario del tema. La barra de búsqueda de Plone identificada con la clase ``LSBox``. .. .. image:: ../_static/apariencia_superponer1.png :align: center :alt: Barra de búsqueda de Plone El contenedor cuyo id es ``user`` contiene una lista no ordenada identificada como ``usuario`` la cual vendría siendo hijo de la clase ``user``. .. .. image:: ../_static/apariencia_superponer2.png :align: center :alt: Lista no Ordenada Si usamos la regla en Deliverance ``replace`` usando directamente la clase ``user`` tendremos como resultado: .. code-block:: xml .. .. image:: ../_static/apariencia_superponer3.png :align: center :alt: ubicación incorrecta Como se podrá ver utilizando directamente la clase ``user`` los ``CSS`` de la barra de búsqueda de Plone se superponen a los del tema quedando en una ubicación incorrecta. Si se usa la misma regla de ``replace`` pero esta vez invocando el elemento hijo de la clase ``user`` veremos que esta vez se sitúa en el sitio correspondiente. .. code-block:: xml .. .. image:: ../_static/apariencia_superponer4.png :align: center :alt: ubicación correcta Consejo para el uso de XPath ---------------------------- De ser posible maquetar completamente todos los elementos de nuestro tema para evitar hacer el uso de expresiones ``XPath``, esto es debido a que algunas expresiones ``XPath`` al ser cambiadas dañan el ``DOM`` (Modelo de Objetos del Documento) de nuestro ``HTML``. A continuación un caso de practico tomando el ejemplo anterior pero esta vez usando expresiones ``XPath`` para reemplazar la barra de búsqueda. .. code-block:: xml Nos da como resultado que el DOM de nuestro HTML ha sido cambiado y causa un error como este: .. .. image:: ../_static/apariencia_error.png :align: center :alt: error XPath Si estuvo realizando los cambios desde la consola de depuración no podrá solucionarlo volviendo atrás, para volver al estado anterior tendrá que detener el servicio presionando ``crtl+c``, modificar el archivo rules con un editor de texto de su preferencia y borrar la linea de configuración que ocasiono el error, guardar los cambios e iniciar de nuevo el servicio. .. code-block:: console $ cd deliverancedemo/ $ ./bin/deliverance-proxy rules.xml También puede detener el servicio ``crtl+c`` y borrar la linea de configuración que ocasiono el error desde la consola con el comando. .. code-block:: console $ nano ./rules.xml guardar los cambios si lo hizo con nano ``ctrl+o`` y para salir ``ctrl+x`` luego iniciar de nuevo el servicio de Deliverance. .. code-block:: console $ cd deliverancedemo/ $ ./bin/deliverance-proxy rules.xml