[Desarrollo MyBB]  Reemplazar templates
Si, correcto, otra vez yo D: Bueno ahora tengo un problema feo :c Después de la feroz batalla con el php logré hacer que mi plugin funcione (solo s...

Si, correcto, otra vez yo D:
Bueno ahora tengo un problema feo :c

Después de la feroz batalla con el php logré hacer que mi plugin funcione (solo se instala) ahora tengo que hacer que este funcione visualmente.

El plugin trata de dar un promedio de post por temas y eso de momento "funciona" pero tengo problemas al editar plantillas Dodgy

El código _activate que tengo es:

function miplugin_activate ()
{
require MYBB_ROOT."/inc/adminfunctions_templates";
    find_replace_templatesets('index_stats', '#{\$lang->stats_mostonline}#'<!-- miplugin -->$miplugin<!-- /miplugin -->');

	return true;
}

Pero como es lógico en mi... no sirve... Confusedmiley-roll::whistling:

Adiós y perdonen que pida tanta ayuda pero si me ayudan santa claus les dará muuuchos regalos esta navida Wink
Durante *_activate debe ser asi:
find_replace_templatesets('index_stats', '#'.preg_quote('{$lang->stats_mostonline}').'#i', '{$lang->stats_mostonline}<!-- miplugin -->{$miplugin}<!-- /miplugin -->');

Y durante *_deactivate como sigue:
find_replace_templatesets('index_stats', '#'.preg_quote('<!-- miplugin -->{$miplugin}<!-- /miplugin -->').'#i', '', false);
- - - Actualizado - - -
No lo digo por nada mal pero igual podrías revisar el código de otros plugins, no hay problema con eso mientras no lo copees.
Omar G.
Última modificación: 17 Dec, 2012, 11:03 pm por nicods_20055.
Omar G.17 Dec, 2012, 11:02 pmOmar G. escribió: Durante *_activate debe ser asi:
find_replace_templatesets('index_stats', '#'.preg_quote('{$lang->stats_mostonline}').'#i', '{$lang->stats_mostonline}<!-- miplugin -->{$miplugin}<!-- /miplugin -->');

Y durante *_deactivate como sigue:
find_replace_templatesets('index_stats', '#'.preg_quote('<!-- miplugin -->{$miplugin}<!-- /miplugin -->').'#i', '', false);
- - - Actualizado - - -
No lo digo por nada mal pero igual podrías revisar el código de otros plugins, no hay problema con eso mientras no lo copees.

Disculpa, pero me podrías explicar para que sirven los pequeños detalles que le agregaste a mi código, lo digo para saber mejor lo que hice mal Big Grin

Lo de copiar de otros códigos, el plugin anterior que hice me base en uno o dos que me parecieron simples y la idea fue de un plugin que traduci para phpbb Smile
No me meterán a la cárcel por hacerlo vdd?? :c

Adiós.
Pero en serio no me meterán a la cárcel :c
Abre el archivo ./inc/adminfunctions_templates.php y veras algo similar:
/**
 * Find and replace a string in a particular template through every template set.
 *
 * @param string The name of the template
 * @param string The regular expression to match in the template
 * @param string The replacement string
 * @param int Set to 1 to automatically create templates which do not exist for that set (based off master) - Defaults to 1
 * @return bolean true if updated one or more templates, false if not.
 */

function find_replace_templatesets($title, $find, $replace, $autocreate=1)
{
...
}

Basicamente se explica solo.

$title = El nombre del template.
$find = expresion regular de lo que buscar dentro del template.
$replace = reemplazar lo de arriba con esto, solo si se encuentra.
$autocreate = Crear el template si no existe? Generalmente se pone 0 o false durante la desactivacion, ya que no importa si no existe el template.
Omar G.
Colaboradores
Omar G.
This forum uses Lukasz Tkacz MyBB addons.