[Desarrollo MyBB]  Mi primer plugin (sin nombre)
Hola, bueno vengo a aportar mi primer plugin, me costo demasiado trabajo a pesar de ser tan sencillo :blush: ¿Que hace? Simple cambia los siguiente...

Hola, bueno vengo a aportar mi primer plugin, me costo demasiado trabajo a pesar de ser tan sencillo Blush

¿Que hace?
Simple cambia los siguientes códigos:
[yo] por el autor del tema
[Tu] por el lector o visitante
[foro] por el nombre del foro suyo

Es algo simple pero, al menos yo, nunca lo había visto en mybb Big Grin

Adiós, tengo planeado mejorarlo den ideas.
Última modificación: 16 Dec, 2012, 8:10 pm por AHRLabs.
no entendi absolutamente nada de lo que hace D:
lo probare en localhost .-. pero podrias dejar capturas y una mejor explicacion de lo que hace Tongue
Lo que hace es remplazar [yo], [tu] y [foro] por algo el nombre del autor, lector y el del foro, respectivamente.

Abajo coloco algunas imágenes, espero les agrade Big Grin

Adiós
Bastante bien para ser el primer plugin, lo si me parecería mejor si fuera con expresiones regulares, ya que podrías detectar [YO] - [Yo] - [yO] y el efecto sería el mismo, en cambio con str_replace, solo detecta y reemplaza [yo] y lo otro es que puedes y deberías hacer el llamado a la hook parse_message un sola vez ya que mensaje es una solo y los reemplazos puedes hacerlos todos en una sola función.

Todo esto es a modo de consejo, no tomes nada a mal Big Grin
mmm ya veo lo acabo de probar... pero en [yo] no deberia ir fijo el nick del user que puso el tag y solo [tu] deberia ser variable?

me refiero a que puse [yo][tu][foro] ... si lo veo como admin sale "admin" "admin" "nombre del foro" y si lo veo como test sale "test" "test" "nombre del foro", entonces [yo] y [tu] cumplen la misma funcion ? [yo] deberia ser fijo y [tu] variable dependiendo quien lea el tema :B

Saludos y buen trabajo de todas formas Smile y animo para que sigas mejorandolo!
(15 Dec, 2012, 9:06 pm)Steeep escribió: Bastante bien para ser el primer plugin, lo si me parecería mejor si fuera con expresiones regulares, ya que podrías detectar [YO] - [Yo] - [yO] y el efecto sería el mismo, en cambio con str_replace, solo detecta y reemplaza [yo] y lo otro es que puedes y deberías hacer el llamado a la hook parse_message un sola vez ya que mensaje es una solo y los reemplazos puedes hacerlos todos en una sola función.

Todo esto es a modo de consejo, no tomes nada a mal Big Grin

Lo de las expresiones ni idea como hacerlo Huh

En tanto a la función intenté hacerlo junto pero me tiraba errores y decidí hacerlo separado además si lo piensas así es más fácil editar si alguien desea hacerlo C: (pueden hacerlo a su gusto)

Adiós y gracias por las recomendaciones =3

Edito: Bender [tu] es el nick de quien lee el tema, el problema que le encuentro es que cuando un visitante lo lee aparece [yo]= Author y [tu]= Guest :c

Trataré de reparar eso gracias por los consejos C:
Última modificación: 15 Dec, 2012, 9:17 pm por AHRLabs.
Busca expresiones regulares con PHP, te saldrán resultados de inmediato.
Pero son 3 llamados distintos, para que quieres 3 si puedes hacer uno solo.
Que errores te daba al hacerlo en una sola función?
(15 Dec, 2012, 9:07 pm)bender escribió: mmm ya veo lo acabo de probar... pero en [yo] no deberia ir fijo el nick del user que puso el tag y solo [tu] deberia ser variable?

me refiero a que puse [yo][tu][foro] ... si lo veo como admin sale "admin" "admin" "nombre del foro" y si lo veo como test sale "test" "test" "nombre del foro", entonces [yo] y [tu] cumplen la misma funcion ? [yo] deberia ser fijo y [tu] variable dependiendo quien lea el tema :B

Saludos y buen trabajo de todas formas Smile y animo para que sigas mejorandolo!

(15 Dec, 2012, 9:14 pm)Steeep escribió: Busca expresiones regulares con PHP, te saldrán resultados de inmediato.
Pero son 3 llamados distintos, para que quieres 3 si puedes hacer uno solo.
Que errores te daba al hacerlo en una sola función?

Buscaré eso tambien quiero poner los colores de lo grupos C:

Los problemas variaban, al ponerlo en una sola función, en ocasiones no aparecían los resultados solo el código y otras errores de líneas, lo típico error en la línea 30 y así u.u mejor lo hice separado C:
Mejor usa postbit, el parser se ejecuta muchas veces en muchos lugares.

Código PHP:
$plugins->add_hook('postbit''foo');
function 
foo(&$post)
{
    global 
$mybb;

    
$code = array(
        
'[tu]'        => (isset($mybb->user['username']) ? htmlspecialchars_uni($mybb->user['username']) : 'Guest'),
        
'[foro]'    => $mybb->settings['bbname'],
        
'[yo]'        => $post['username']
    );
    
$post['message'] = str_replace(array_keys($code), array_values($code), $post['message']);

{SIGNATURE_IMAGE}