LinuxParty
Creación de Componentes en Joomla
Ejemplo componente HelloWorld.
Si has utilizado Joomla! antes de leer este tutorial, habrás notado que las extensiones se instalan mediante un archivo comprimido que contiene todas las cosas que son necesarias para la instalación y desinstalación de ellas.
Joomla! se divide en dos interfaces principales, la interfaz de usuario (site) y la de administración (admin). Por tanto, nuestro componente tiene que tener esa misma distribución.
Con el gestor de archivos favorito, crea un directorio (fuera de tu directorio de instalación de Joomla!) que contenga:
- helloworld.xml
- site/helloworld.php
- site/index.html
- admin/index.html
- admin/helloworld.php
- admin/sql/index.html
- admin/sql/updates/index.html
- admin/sql/updates/mysql/index.html
- admin/sql/updates/mysql/0.0.1.sql
El fichero 0.0.1.sql es un archivo vacío que permite inicializar la versión del schema (esquema) del componente com_helloworld.
Los archivos helloworld.php de las dos carpetas (admin y site) por el momento estarán en blanco. Para identificarlos escribimos en uno “Hello World” y al otro “Hello World Administración” respectivamente.
Los archivos index.html van a ser comunes para todas las carpetas durante el proceso de desarrollo del componente y tan solo contendrán esta línea:
<html><body bgcolor="#FFFFFF"></body></html>
El archivo helloworld.xml contendrá toda la distribución de carpetas y archivos que iremos añadiendo a lo largo de este artículo, necesarios para el funcionamiento del componente. Es el archivo clave de nuestro componente, ya que es la única manera que Joomla! tiene para interpretar lo que queremos lograr. El archivo inicialmente contendrá lo siguiente:
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" version="2.5.0" method="upgrade">
<name>Hello World!</name>
<!-- Los siguientes elementos son opcionales y sin restricciones de formato -->
<creationDate>Octubre 2012</creationDate>
<author>Carlos R & Andoitz B</author>
<authorEmail>email</authorEmail>
<authorUrl>http://www.ejemplo.org</authorUrl>
<copyright>Copyright Info</copyright>
<license>Licencia Info</license>
<!-- La versión de desarrollo del componente se registra en la tabla del mismo -->
<version>0.0.1</version>
<!-- La descripción es opcional. Por defecto se introduce el nombre del componente →
<description>Descripción del Componente Hello World...</description>
<!-- Para las actualizaciones; Nuevo en 2.5 -->
<update>
<schemas>
<schemapath type="mysql">sql/updates/mysql</schemapath>
</schemas>
</update>
<!-- Archivos pertenecientes a la interfaz de usuario -->
<!-- Note el atributo de la carpeta: Este atributo describe hacia donde
y de donde van ha ser copiados los archivos del paquete de instalación.-->
<files folder="site">
<filename>index.html</filename>
<filename>helloworld.php</filename>
</files>
<administration>
<!-- Menú de la sección Administración -->
<menu>Hello World!</menu>
<!-- Archivos pertenecientes a la administración -->
<!-- Note el atributo de la carpeta: Este atributo describe hacia dónde
y de donde van a ser copiados los archivos del paquete de instalación. -->
<files folder="admin"> !-- Archivos principales de la carpeta admin -->
<filename>index.html</filename>
<filename>helloworld.php</filename>
<!-- Archivos de la sección de SQL -->
<folder>sql</folder>
</files>
</administration>
</extension>
Crea un archivo comprimido (.zip) de este directorio con el nombre com_helloworld o descarga directamente el archivo que brinda la sección para los desarrolladores en la documentación de Joomla! e instálalo mediante el gestor de extensiones de Joomla!. Puedes probar este componente básico poniendo tusitio/index.php?option=com_helloworld (Figura 1) o tusitio/administrator/index.php?option=com_helloworld (Figura 2) en tu navegador. También se puede observar que el componente Hello World! es visible en la administración de la instalación de Joomla! en el menú Componentes (Figura 3).
< Anterior | Desarrollo de componentes en Joomla 2.5 (2 de 8)
-
Programación
- Cómo instalar y utilizar Scikit-Learn en Linux
- Thomas E. Kurtz, coinventor de BASIC, muere a los 96 años
- Profesor de informática del MIT prueba el impacto de la IA en la formación de programadores
- Lanzamiento del IDE de código abierto Qt Creator 14 con soporte para complementos basados en Lua
- Plantillas para Joomla - Episodio 1: Plantillas, marcos y clubes o no...
- Este es el mejor libro que he visto para aprender a programar en Python en castellano desde cero, gratis y online
- ¿Deberían los niños seguir aprendiendo a programar en la era de la IA?
- La 'obsolescencia' de VBScript confirmada por Microsoft y su eventual eliminación de Windows
- El Gran Debate: ¿Deberían los Modelos de Inteligencia Artificial Ser de Código Abierto?
- El lenguaje de programación BASIC cumple 60 años
- El CEO de Nvidia dice que los niños no deberían aprender a programar
- 40 años de Turbo Pascal: recuerdos del dinosaurio codificador que revolucionó los IDE
- Los lenguajes de programación más populares y dónde aprenderlos.
- Top 5 de los principales lenguajes de programación para desarrollar aplicaciones de escritorio Linux
- Qt Creator 12 lanzado con complementos de grabación de pantalla y Explorador de compiladores