lms
17/11/2009, 21:19
Antes de vBulletin 4, ha podido hacer referencia a las variables de su plugin tal y como los referenciarías dentro de un script PHP estándar. Debido a los cambios en la forma de trabajar de vBulletin 4, esto ya no procede.
Una vez que entienda la vBullein de 4 formato de plantilla variable, en referencia a las variables de su plugin será sencillo. Echemos un vistazo al formato nueva variable mediante la comparación de algunos ejemplos de cómo se ven en 3.8.X vBulletin vBulletin y 4.
Ejemplo 1
En este ejemplo, vamos a suponer que usted ha escrito un plugin que almacena sus datos dentro de la variable $myplugin_output. Usando vBulletin 3.8.X, simplemente podrías insertar esa variable dentro de sus plantillas y tienes la pantalla de salida en el sitio.
Dentro de vBulletin 4, esta misma variable de su extensión ahora se hace referencia como sigue.
{vb:raw myplugin_output}
Dentro de vBulletin 4, todos de la nueva plantilla variables aparecen como el ejemplo anterior. La parte raw indica que esta es una variable raw (pura) y la traducción entre $myplugin_output y {vb:raw myplugin_output} se produce automáticamente.
Recuerda, usted todavía debe hacer referencia a esta variable como $myplugin_output dentro de su plugin. Únicamente en las plantillas la misma variable debe ser referenciada en el nuevo formato.
Ejemplo 2
Digamos que almacenar sus variables como una matriz y una variable de salida dentro de su plugin parece $myplugin_var['output1'] o $myplugin_var[output1]. Estas variables se manejan de la misma manera pero con una ligera variación. Esta misma variable se escribirá en una plantilla vBulletin como sigue
{vb:raw myplugin_var.output1}
Una vez más, está utilizando una variable raw en vBulletin 4. Esta vez, se llama a la clave dentro de la variable de matriz tras el nombre de la matriz y los dos están separados por un punto. Así que estos tipos de variables siempre siguen el siguiente formato.
$arrayName['key'] se traduce en {vb:raw arrayName.key}
Es así de simple. Siguiendo el formato de arriba, usted podrá hacer referencia a las variables de plugin sin problemas, tal y como lo lograron en las versiones anteriores de vBulletin.
Artículo original en inglés en Referring to plugin variables within your vBulletin 4 templates (Solo los usuarios registrados pueden ver enlaces)
Antes de vBulletin 4, usted podía hacer referencia a las variables de plugin dentro de las plantillas sin ningún tipo de trabajo adicional necesario. Digamos que usted quiere imprimir las palabras "Este es mi plugin" dentro de la plantilla header. El código siguiente (con la extensión correcta Hook Location) le permitiría hacerlo.
$myplugin_output = "Este es mi plugin";
A $myplugin_output se le referencia en la plantilla adecuada.
Con vBulletin 4 es necesario un poco de trabajo extra para que aparezca en su foro el texto personalizado. Ahora se debe hacer referencia a qué plantillas desea impulsar estas variables o vBulletin las ignora completamente.
Si usted quisiera hacer referencia a esta variable dentro de la plantilla Header, tendría que incluir lo siguiente en algún lugar dentro del código del plugin tras establecer la variable.
vB_Template::preRegister('header',array('myplugin_ output' => $myplugin_output));
Si usted quería impulsar esta variable a varias plantillas, tendría que incluir varias versiones de esta línea dentro de su plugin. Por ejemplo, si usted quiere empujar esta variable a su plantilla FORUMHOME, además de header, se tendrían que añadir las siguientes líneas a su código de plugin.
vB_Template::preRegister('header',array('myplugin_ output' => $myplugin_output));
vB_Template::preRegister('FORUMHOME',array('myplug in_output' => $myplugin_output));
Si usted quisiera hacer referencia a múltiples variables dentro de una plantilla, sólo tendría que añadir a la matriz existente.
vB_Template::preRegister('header',array(
'myplugin_output' => $myplugin_output,
'myplugin_output' => $myplugin_output2,
'myplugin_output' => $myplugin_output3,
);
Artículo original en inglés en Pushing your variables to vBulletin 4 templates (Solo los usuarios registrados pueden ver enlaces)
Salud2
Una vez que entienda la vBullein de 4 formato de plantilla variable, en referencia a las variables de su plugin será sencillo. Echemos un vistazo al formato nueva variable mediante la comparación de algunos ejemplos de cómo se ven en 3.8.X vBulletin vBulletin y 4.
Ejemplo 1
En este ejemplo, vamos a suponer que usted ha escrito un plugin que almacena sus datos dentro de la variable $myplugin_output. Usando vBulletin 3.8.X, simplemente podrías insertar esa variable dentro de sus plantillas y tienes la pantalla de salida en el sitio.
Dentro de vBulletin 4, esta misma variable de su extensión ahora se hace referencia como sigue.
{vb:raw myplugin_output}
Dentro de vBulletin 4, todos de la nueva plantilla variables aparecen como el ejemplo anterior. La parte raw indica que esta es una variable raw (pura) y la traducción entre $myplugin_output y {vb:raw myplugin_output} se produce automáticamente.
Recuerda, usted todavía debe hacer referencia a esta variable como $myplugin_output dentro de su plugin. Únicamente en las plantillas la misma variable debe ser referenciada en el nuevo formato.
Ejemplo 2
Digamos que almacenar sus variables como una matriz y una variable de salida dentro de su plugin parece $myplugin_var['output1'] o $myplugin_var[output1]. Estas variables se manejan de la misma manera pero con una ligera variación. Esta misma variable se escribirá en una plantilla vBulletin como sigue
{vb:raw myplugin_var.output1}
Una vez más, está utilizando una variable raw en vBulletin 4. Esta vez, se llama a la clave dentro de la variable de matriz tras el nombre de la matriz y los dos están separados por un punto. Así que estos tipos de variables siempre siguen el siguiente formato.
$arrayName['key'] se traduce en {vb:raw arrayName.key}
Es así de simple. Siguiendo el formato de arriba, usted podrá hacer referencia a las variables de plugin sin problemas, tal y como lo lograron en las versiones anteriores de vBulletin.
Artículo original en inglés en Referring to plugin variables within your vBulletin 4 templates (Solo los usuarios registrados pueden ver enlaces)
Antes de vBulletin 4, usted podía hacer referencia a las variables de plugin dentro de las plantillas sin ningún tipo de trabajo adicional necesario. Digamos que usted quiere imprimir las palabras "Este es mi plugin" dentro de la plantilla header. El código siguiente (con la extensión correcta Hook Location) le permitiría hacerlo.
$myplugin_output = "Este es mi plugin";
A $myplugin_output se le referencia en la plantilla adecuada.
Con vBulletin 4 es necesario un poco de trabajo extra para que aparezca en su foro el texto personalizado. Ahora se debe hacer referencia a qué plantillas desea impulsar estas variables o vBulletin las ignora completamente.
Si usted quisiera hacer referencia a esta variable dentro de la plantilla Header, tendría que incluir lo siguiente en algún lugar dentro del código del plugin tras establecer la variable.
vB_Template::preRegister('header',array('myplugin_ output' => $myplugin_output));
Si usted quería impulsar esta variable a varias plantillas, tendría que incluir varias versiones de esta línea dentro de su plugin. Por ejemplo, si usted quiere empujar esta variable a su plantilla FORUMHOME, además de header, se tendrían que añadir las siguientes líneas a su código de plugin.
vB_Template::preRegister('header',array('myplugin_ output' => $myplugin_output));
vB_Template::preRegister('FORUMHOME',array('myplug in_output' => $myplugin_output));
Si usted quisiera hacer referencia a múltiples variables dentro de una plantilla, sólo tendría que añadir a la matriz existente.
vB_Template::preRegister('header',array(
'myplugin_output' => $myplugin_output,
'myplugin_output' => $myplugin_output2,
'myplugin_output' => $myplugin_output3,
);
Artículo original en inglés en Pushing your variables to vBulletin 4 templates (Solo los usuarios registrados pueden ver enlaces)
Salud2