Tutorial Crear mods en SMF - Capitulo III
Bueno en el capitulo anterior habiamos terminado de crear el
install.xml. Ahora vamos a ver de que se encarga el
package-info.xml.
Abrimos el archivo con nuestro editor. Al igual que en el archivo anterior ponemos lo referent a xml, lo pongo otra vez:
<?xml version="1.0"?>
<!DOCTYPE package-info SYSTEM "http://www.simplemachines.org/xml/package-info">
<package-info xmlns="http://www.simplemachines.org/xml/package-info" xmlns:smf="http://www.simplemachines.org/">
Ponemos el nombre del bbcode entre
<name></name>, al igual que en el anterior ponemos el id de esta forma
<id>Autor:nombredelmod
</id> (el nombre del mod en este caso tiene que ir todo junto, ejemplo: h1bbcode), luego ponemos el tipo que siempre es una modificacion, y lo ponemos asi:
<type>modification
</type> y por ultimo la version del mod entre
<version></version>. Todo nos quedaria hasta ahora asi:
<?xml version="1.0"?>
<!DOCTYPE package-info SYSTEM "http://www.simplemachines.org/xml/package-info">
<package-info xmlns="http://www.simplemachines.org/xml/package-info" xmlns:smf="http://www.simplemachines.org/">
<name>H1 BBCode</name>
<id>lucas-ruroken:H1BBCode</id>
<type>modification</type>
<version>1.0.0</version>
Bien, ahora mostraremos que funcion va a ser el
package-info.xml. Abrimos con un
<install>, y le decimos al archivo la modificaciones que vamos a realizar, como estan ya estaban en el
install.xml le decimos que realize las modificaciones de ese archivo de esta forma:
<modification type="file">install.xml</modification>. Ahora si nosotros tenemos un archivo aparte (por ejemplo una imagen) y lo queremos meter en una carpeta especifica lo tenemos que hacer de esta forma por ejemplo:
<require-file name="h1.gif" destination="$imagesdir/bbc" />, Ahi le estamos diciendo que se requiere el archivo h1.gif y que lo mande a la carpeta
Themes/default/images/bbc, Facil no?.
Ahora cerramos con un
</install>.
Nos podria quedar asi:
<install>
<modification type="file">install.xml</modification>
<require-file name="h1.gif" destination="$imagesdir/bbc" />
</install>
Ahora creamos la parte referida a la desinstalacion, y la haremos de esta forma:
Abrimos con un
<uninstall> y hacemos los procesos inversos. Ponemos
<modification type="file" reverse="true">install.xml</modification> y luego decimos que borre el archivo:
<remove-file name="$imagesdir/bbc/h1.gif" /> (Si tenemos que remover mas archivos tenemos que poner uno de bajo de otro por ejemplo asi:
<remove-file name="$imagesdir/bbc/h1.gif" />
<remove-file name="$imagesdir/bbc/h2.gif" />
<remove-file name="$imagesdir/bbc/h3.gif" />
es lo mismo para agregar).
Bien ahora cerramos con un
<uninstall> y por ultimo cerramos con un
</package-info>.
Todo nos podria quedar algo asi para que tengan una idea:
<?xml version="1.0"?>
<!DOCTYPE package-info SYSTEM "http://www.simplemachines.org/xml/package-info">
<package-info xmlns="http://www.simplemachines.org/xml/package-info" xmlns:smf="http://www.simplemachines.org/">
<name>H1 BBCode</name>
<id>lucas-ruroken:H1BBCode</id>
<type>modification</type>
<version>1.0.0</version>
<install>
<modification type="file">install.xml</modification>
<require-file name="h1.gif" destination="$imagesdir/bbc" />
</install>
</uninstall>
<modification type="file" reverse="true">install.xml</modification>
<remove-file name="$imagesdir/bbc/h1.gif" />
</uninstall>
</package-info>
Ahora podemos comprimir ambos archivos en un zip, por ejemplo h1.zip (no vale otra extension) y ya se podra instalar en nuestro smf

.
Hasta aca vimos lo referido al install y al package, en los chapters que siguen podremos ver que modificaciones hacer y a que archivos. Tambien enseñare como desde el package-info crear una tabla en la base de datos pero todo eso mas adelante
