Editar un archivo de los módulo del Board3 2.0.x Tema Solucionado
Publicado: 19 Oct 2014, 14:51
Guía sobre cómo se puede editar un archivo de módulo.
DATO IMPORTANTE:
***Puedes utilizar el archivo ../portal/modules/portal_default.php como base de ejemplo, haciendo una copia de éste.
Ejemplo:
****Quiero crear un bloque nuevo llamado "Gallery Block", modificando el archivo "Default"
PASO 1: Cambiar el nuevo nombre, tendras que colocarlo en vez de "Default"...
Abrir ../portal/modules/portal_default.php
Buscar:
Buscar la línea:
Reemplazar por:
Por supuesto, puedes agregar tus derechos de autor en la cabecera,
pero no se debe quitar el derecho de autor Board3.
****También se puede simplemente dejar Board3 v2 Portal, en la cabecera.
PASO 2: Cambiar nombre del módulo y class
a. Cambiar nombre del módulo
Buscar:
Reemplazar por:
b. Modificar el nombre de la class para que muestre el nombre de su módulo.
Si el nombre del archivo es portal_gallery.php, debe ser portal_gallery_module así:
PASO 3:
Después tienes que elegir las columnas donde puedes instalar y/o mover el módulo en el portal:
Buscar:
Lo que debes de modificar es el numero 31, éste paso es necesario.
El 31 significa que el modulo puede estar en cualquier lugar del portal, -arriba, izquierda, centro, derecha, abajo, (top, left, center, right, bottom), a cada lugar se le identifica con un número.
Por lo tanto, si en el ejemplo, tiene 31 es la sumatoria de todos los lados en el portal, significa que éste bloque podrá estar en cualquier lugar.
Las dos opciones más utilizadas son:
10 --> Laterales. (sumatoria de left y right)
21 --> Arriba, centro, abajo. (sumatoria de top, center y bottom)
PASO 4: Establecer la variable de idioma del título del módulo.
Esta variable del lenguaje tiene que ser definido en el archivo de idioma de su bloque.
PASO 5: Se debe definir una imagen de módulo:
Debes subir en la ruta que se muestra abajo, la imagen con el nombre que se muestra acá (portal_galley.png)
PASO 6: Después definir el nombre del archivo de idioma (subir tu archivo de idioma a la ruta indicada)
El comentario en el archivo se debe poner.
PASO 7: Si deseas utilizar un archivo personalizado en el ACP, puedes definirlo aquí:
Si no sabes utilizar éstos archivos, echa un vistazo a los archivos dentro de la adm/style/portal/ carpeta del Portal Board3 2.0.x-package.
PASO 8: Si tu Titulo de Block necesitas cambiarlo en el ACP o el Portal en función de la configuración del ACP,
o simplemente no quieres cambiar el título del módulo, siempre se puede forzar
esto poniendo el interruptor en true:
PASO 9: En las funciones siguientes se define el código PHP que se ejecutará en la página del portal.
OJO: Para los que desean cambiar un módulo de lugar, ésto es importante.
a. Función get_template_center define el código PHP para las columnas de la parte superior, central e inferior.
b. Función get_template_side define el código PHP de las columnas laterales.
Al final de la función, siempre devuelve el archivo de plantilla que debe ser cargado,
Con
SOBRE LA INSTALACION Y DESINSTALACION:
1. La instalación de la función siempre se ejecuta cuando se agrega el módulo.
Con esto puedes agregar es decir, las variables de configuración.
Asegúrate de que sus variables de configuración siempre empiezan con un "board3_ , que son únicos:
2. Desinstalar la función, se ejecutará en la desinstalación del módulo.
Asegúrate de quitar todo lo que se ha añadido al instalar la función ().
Fuente: http://www.board3.de/knowledge/kb_show.php?id=54
DATO IMPORTANTE:
***Puedes utilizar el archivo ../portal/modules/portal_default.php como base de ejemplo, haciendo una copia de éste.
Ejemplo:
****Quiero crear un bloque nuevo llamado "Gallery Block", modificando el archivo "Default"
PASO 1: Cambiar el nuevo nombre, tendras que colocarlo en vez de "Default"...
Abrir ../portal/modules/portal_default.php
Buscar:
Código: Seleccionar todo
/**
*
* @package Board3 Portal v2 - Default
* @copyright (c) Board3 Group ( www.board3.de )
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
Código: Seleccionar todo
* @package Board3 Portal v2 - Default
Código: Seleccionar todo
* @package Board3 Portal v2 - Gallery Block
pero no se debe quitar el derecho de autor Board3.
****También se puede simplemente dejar Board3 v2 Portal, en la cabecera.
PASO 2: Cambiar nombre del módulo y class
a. Cambiar nombre del módulo
Buscar:
Código: Seleccionar todo
/**
* @package Modulname
*/
Código: Seleccionar todo
/**
* @package Gallery Block
*/
Si el nombre del archivo es portal_gallery.php, debe ser portal_gallery_module así:
class portal_gallery_module
PASO 3:
Después tienes que elegir las columnas donde puedes instalar y/o mover el módulo en el portal:
Buscar:
Código: Seleccionar todo
/**
* Allowed columns: Just sum up your options (Exp: left + right = 10)
* top 1
* left 2
* center 4
* right 8
* bottom 16
*/
var $columns = 31;
El 31 significa que el modulo puede estar en cualquier lugar del portal, -arriba, izquierda, centro, derecha, abajo, (top, left, center, right, bottom), a cada lugar se le identifica con un número.
Por lo tanto, si en el ejemplo, tiene 31 es la sumatoria de todos los lados en el portal, significa que éste bloque podrá estar en cualquier lugar.
Las dos opciones más utilizadas son:
10 --> Laterales. (sumatoria de left y right)
21 --> Arriba, centro, abajo. (sumatoria de top, center y bottom)
PASO 4: Establecer la variable de idioma del título del módulo.
Esta variable del lenguaje tiene que ser definido en el archivo de idioma de su bloque.
Código: Seleccionar todo
/**
* Default modulename
*/
var $name = 'PORTAL_GALLERY';
Debes subir en la ruta que se muestra abajo, la imagen con el nombre que se muestra acá (portal_galley.png)
Código: Seleccionar todo
/**
* Default module-image:
* file must be in "{T_THEME_PATH}/images/portal/"
*/
var $image_src = 'portal_gallery.png';
Código: Seleccionar todo
/**
* module-language file
* file must be in "language/{$user->lang}/mods/portal/"
*/
var $language = 'portal_gallery_module';
PASO 7: Si deseas utilizar un archivo personalizado en el ACP, puedes definirlo aquí:
Código: Seleccionar todo
/**
* custom acp template
* file must be in "adm/style/portal/"
*/
var $custom_acp_tpl = '';
PASO 8: Si tu Titulo de Block necesitas cambiarlo en el ACP o el Portal en función de la configuración del ACP,
o simplemente no quieres cambiar el título del módulo, siempre se puede forzar
esto poniendo el interruptor en true:
Código: Seleccionar todo
/**
* hide module name in ACP configuration page
*/
public $hide_name = false;
OJO: Para los que desean cambiar un módulo de lugar, ésto es importante.
a. Función get_template_center define el código PHP para las columnas de la parte superior, central e inferior.
b. Función get_template_side define el código PHP de las columnas laterales.
Al final de la función, siempre devuelve el archivo de plantilla que debe ser cargado,
return 'modulename_center.html';
y si no devuelve nada, el bloque no se muestra, en otras palabras, no hay nada para mostrar.Con
get_template_acp function ()
se pueden definir las opciones en el ACP:Código: Seleccionar todo
function get_template_acp($module_id)
{
return array(
'title' => 'ACP_PORTAL_BOTS_SETTINGS',
'vars' => array(
'legend1' => 'ACP_PORTAL_BOTS_SETTINGS',
'board3_last_visited_bots_number_' . $module_id => array('lang' => 'PORTAL_LAST_VISITED_BOTS_NUMBER' , 'validate' => 'int', 'type' => 'text:3:3', 'explain' => true),
)
);
}
1. La instalación de la función siempre se ejecuta cuando se agrega el módulo.
Con esto puedes agregar es decir, las variables de configuración.
Asegúrate de que sus variables de configuración siempre empiezan con un "board3_ , que son únicos:
Código: Seleccionar todo
function install($module_id)
{
set_config('board3_last_visited_bots_number_' . $module_id, 1);
return true;
}
2. Desinstalar la función, se ejecutará en la desinstalación del módulo.
Asegúrate de quitar todo lo que se ha añadido al instalar la función ().
Código: Seleccionar todo
function uninstall($module_id)
{
global $db;
$del_config = array(
'board3_last_visited_bots_number_' . $module_id,
);
$sql = 'DELETE FROM ' . CONFIG_TABLE . '
WHERE ' . $db->sql_in_set('config_name', $del_config);
return $db->sql_query($sql);
}
Fuente: http://www.board3.de/knowledge/kb_show.php?id=54