este tutorial es válidao para versiones 1.1.x y 2.0
para agregar paginas a smf se necesitan dos archivos, uno en Sources y un template que se subirá a /Themes/default/
primero, nos vamos a nuestro archivo index.php , y buscamos esto:
'activate' => array('Register.php', 'Activate'),
y despues agregamos esto:
'nombre de tu pagina' => array('Pagina.php', 'Pagina'), cambiandolo por lo que quieras ponerle, por ejemplo, vamos a hacer una pagina que se llame afiliados:
'afiliados' => array('Afiliados.php', 'Afiliados'),
luego creamos un archivo llamado Afiliados.php y lo subimos a la carpeta /Sources con lo siguiente:
<?php
if (!defined('SMF'))
die('Hacking attempt...');
function Afiliados() { //cambiamos el afiliados por el nombre de nuestra pagina
global $context;
$context['page_title'] = 'el titulo de mi pagina'; //este será el título que aparecera en tu página
// necesitamos llamar a el template
loadTemplate('Afiliados'); // aquí también cambiamos el nombre con el de la página que estés haciendo
}
?>
en esta página puedes poner todas tus funciones que vayas a necesitar en tu página, de esta manera te evitas de poner querys u otras funciones directamente en los archivos template.
luego creamos un archivo template con el nombre Mipaginaa.template.php <= es importante que escribas el nombre con mayúscula y le agregues el .template
y lo subimos a /Themes/default/ con lo siguiente:
<?php
function template_main()
{
global $context, $settings, $options, $txt, $scripturl;
echo '
<table width="100%" border="0" cellspacing="0" cellpadding="3" >
<tr>
<td>', theme_linktree(), '</td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="4" align="center" class="tborder">
<tr class="titlebg">
<td align="center" >mi pagina</td>
</tr><tr>
<td class="windowbg">';
echo '<table border="0" cellpadding="0" cellspacing="3" width="100%">
<tr>
<td width="100%" valign="top">
aqui va mi contenido
</td></tr></table>';
echo '
</td>
</tr>
</table><br /><br />
';
}
?>
este es un ejemplo para 1.1.11 con tablas, pero puedes poner lo que tu quieras dentro del echo ' ';
y listo, ya tienes tu pagina, ahora simplemente la llamas asi: misitio.com/index.php?action=afiliados o el nombre que le diste a tu pagina
Fuente