J3.x

Crear un módulo simple/Agregar Actualización Automática

From Joomla! Documentation

< J3.x:Creating a simple module
This page is a translated version of the page J3.x:Creating a simple module/Adding Auto Update and the translation is 100% complete.

Other languages:
English • ‎español • ‎français • ‎Bahasa Indonesia • ‎Nederlands
Joomla! 
3.x
Tutorial
Crear un módulo simple

Esta es una serie de artículos múltiples sobre cómo crear un módulo para Joomla! Versión Joomla 3.x. Puedes navegar por los artículos en esta serie usando el menú desplegable de navegación.

Comienza con la Introducción y navega por los artículos de esta serie usando el botón de navegación en la parte inferior o en el cuadro de la derecha ("Artículos de esta serie").



Esta sección del tutorial te ayudará a crear un servidor de actualización para que el módulo pueda utilizar el sistema de actualización de un clic de Joomla.

Introducción y Lectura previa

La primera cosa a hacer es leer el tutorial Gestionar Actualizaciones de Componentes con Joomla 2.5 - Parte 1 para tener una idea cómo funciona el proceso de actualización en Joomla. Si bien fue escrito para 2.5 el proceso no ha cambiado para Joomla 3.x. Lee también Desarrollo de un servidor de actualización - esto es lo que vamos a implementar en este tutorial.

Recuerdas el archivo sql de actualización que hemos mencionado en la sección Utilizar la base de datos? Es el que se utilizará para actualizar nuestra base de datos ahora. Mientras que una nueva versión comprimida de nuestro módulo se utilizará para actualizar todos los archivos php. Para mantener esto sencillo, por ahora vamos a actualizar los archivos y base de datos sql sin ningún tipo de comprobaciones de la versión de Joomla y la versión del módulo que está actualmente instalado (se recomienda que esto se utilice en un módulo de producción).

Actualizar nuestro módulo

La única manera de actualizar nuestro módulo es agregar un servidor de actualizaciones en el archivo xml.

<updateservers>
	<server type="extension" name="Helloworld" priority="1">http://www.example.com/helloworld_update.xml</server>
</updateservers>

Joomla! ahora la buscara en http://www.example.com/helloworld_update.xml las actualizaciones con una frecuencia establecida en las opciones del gestor extensiones.

Crear una actualización

Así que ahora que Joomla buscara las actualizaciones para nuestra extensión - vamos crear una para poner a prueba nuestro proceso.

Crear una copia del módulo como lo esta ahora. A continuación, vamos a actualizar el número de versión a 1.0.1, y también vamos a añadir algo a nuestro archivo SQL de Actualización - en este caso un archivo extra de Idioma Alemán.

<version>1.0.1</version>
INSERT INTO `#__helloworld` (`hello`, `lang`) VALUES ('Hallo Welt', 'de-DE');

Ten en cuenta que también puedes editar cualquiera de nuestros archivos php - todos los archivos php serán reemplazados por los que están en el archivo de actualización (Nota: Esta es la razón por la cual se desalientan hacks fundamentales de cualquier extensión - se perderán en la actualización de la extensión).

Ahora debemos crear el archivo xml en http://www.example.com/helloworld_update.xml para dejar a Joomla conocer una actualización disponible.

<updates>
	<update>
		<name>Helloworld</name>
		<description>This is mod_helloworld 1.0.1</description>
		<element>mod_helloworld</element>
		<type>module</type>
		<version>1.0.1</version>
		<downloads>
			<downloadurl type="full" format="zip">http://www.example.com/mod_helloworld_101.zip</downloadurl>
		</downloads>
		<maintainer>Joomla</maintainer>
		<maintainerurl>http://www.example.com</maintainerurl>
		<targetplatform name="joomla" version="3.6"/>
		<client>site</client>
	</update>
</updates>

donde http://www.example.com/mod_helloworld_101.zip es el archivo zip de nuestra recién creada actualización. Si ahora inicias una sesión en el lado servidor de Joomla, debes poder ver en el panel de control que una actualización automática está disponible (si no, puede que necesites purgar la caché en la sección de actualización del administrador de extensiones). Simplemente haz clic en actualizar y encontrarás que tu módulo ha sido actualizado a la versión 1.0.1.

Nota: Considera que la etiqueta actualización en este caso, es específica para la versión 3.6 de Joomla! y la actualización no será reconocida por una versión anterior o posterior de Joomla!. Consulta la sección S:MyLanguage/Deploying_an_Update_Server#Extension/Desarrollo de un Servidor de Actualización para más detalles sobre como especificacar la "actualización" y la importancia de las etiquetas "targetplatform".

Módulos Comerciales

Ten en cuenta que tenemos a nuestro archivo vinculado a las actualizaciones de las extensiones de archivo xml. Y a partir de ese archivo xml tenemos una ubicación para el archivo zip del módulo. Esto significa que si alguien recorre esta pista hacia atrás podría encontrar la fuente física del archivo zip de los módulos (y tenerla a disposición/uso después de que la suscripción ha expirado, etc.). Por esta razón, generalmente los módulos comerciales no contienen actualizaciones automáticas (a pesar de que a menudo se informará de las actualizaciones por alguna forma alternativa).

Conclusión

La actualización de los módulos en Joomla es muy fácil para los usuarios y a realizar por los desarrolladores de extensiones y se debe esperar que de manera estándar vengan con cualquier módulo en Joomla! 3.1.