Simple Machines Community Forum

SMF Support => Language Specific Support => Español (Spanish) => Topic started by: Jotade29 on September 17, 2022, 09:01:17 PM

Title: ¿Dónde está definida $message['member']?
Post by: Jotade29 on September 17, 2022, 09:01:17 PM
Buenas, en el display.template se refleja mucho el message[member], lo que no sé es en qué archivo se hace la consulta a la base de datos para que de $message['member'] te extraiga las cosas que se reflejan, por ejemplo,  en el display, por ejemplo $message['member']['id]...

Dicho de otro modo, si he agregado una columna nueva a la tabla members, por ejemplo, llamada 'asignatura', ¿dónde tendría que hacer la consulta para que me lo muestre con $message['member']['asignatura']?

Mi versión es 2.0.19.

Gracias.
Title: Re: ¿Dónde está definida $message['member']?
Post by: Diego Andrés on September 17, 2022, 09:12:59 PM
Sources/Display.php
Title: Re: ¿Dónde está definida $message['member']?
Post by: Jotade29 on September 17, 2022, 09:34:43 PM
Buenas @Diego Andrés , gracias por tu ayuda como siempre. Ahí no está, y si está dime en qué lugar, por favor. La variable la he encontrado en el array de load.php. Ahora bien, para invocar desde ahí los datos de esa columna usan $profile['id'], por ejemplo, en caso de querer mostrar la id del usuario, ¿dónde se mete la información a '$profile'? Entiendo que en la función loadmemberdata, pero lo añado al caso "elseif ($set == 'profile')" y no me muestra nada, añadiendo 'mem.asignatura', parto de que tengo una columna en members que se llama así. Gracias
Title: Re: ¿Dónde está definida $message['member']?
Post by: Diego Andrés on September 17, 2022, 11:54:30 PM
'member' => &$memberContext[$message['id_member']],

La id ya se encuentra en el arreglo que carga desde $memberContext. No sé a qué te refieres.
Simplemente usa $message['member']['id'] ?
Title: Re: ¿Dónde está definida $message['member']?
Post by: Jotade29 on September 19, 2022, 08:30:47 PM
Quote from: Diego Andrés on September 17, 2022, 11:54:30 PM'member' => &$memberContext[$message['id_member']],

La id ya se encuentra en el arreglo que carga desde $memberContext. No sé a qué te refieres.
Simplemente usa $message['member']['id'] ?

Gracias por responder, @Diego Andrés
Lo de memberid era un ejemplo, porque si sé modificar eso, por ejemplo, puedo hacer, por decirlo de algún modo, casi cualquier otra cosa, para visualizarlo en el display.template, y que me muestre la información de ese usuario que publica.

No te sigo en el ejemplo, es decir, "message[member][id]" se carga desde $profile['id_member'] ¿no? No sé de dónde sale la referencia de -> 'member' => &$memberContext[$message['id_member']], porque hasta donde he visto, se carga desde profile[id_member]. Recuerdo que la versión que uso es la 2.0.19

Gracias.

Title: Re: ¿Dónde está definida $message['member']?
Post by: Diego Andrés on September 19, 2022, 08:57:44 PM
Quote from: Jotade29 on September 19, 2022, 08:30:47 PMNo sé de dónde sale la referencia de -> 'member' => &$memberContext[$message['id_member']]

Del Display.php en el arreglo de los mensajes? No entiendo la pregunta.
// Compose the memory eat- I mean message array.
    $output = array(...

Quote from: Jotade29 on September 19, 2022, 08:30:47 PMporque hasta donde he visto, se carga desde profile[id_member]
Pues así es, pero eso no tiene implicación alguna para el Display.php ya que 'member' => &$memberContext[$message['id_member']], contendrá $profile pues lo invoca desde $memberContext.

Quote from: Jotade29 on September 19, 2022, 08:30:47 PMRecuerdo que la versión que uso es la 2.0.19
Todo esto es basándome en dicha versión. Igual como te mencioné en otro momento, lo mejor sería que actualices de una vez a 2.1 para evitar 'rehacer' tus cambios otra vez puesto que 2.0.x está prácticamente eol.