Recordad que para pedir soporte alguno, debéis facilitar los datos de soporte oportunos por favor, mirad aquí y leer las Normas generales del foro, esto nos servirá de ayuda para dar el mejor soporte..
Gracias.
La Administración de phpBB España.
barra lateral ultimos posts en mensajesTema Solucionado
barra lateral ultimos posts en mensajes
URL: http://audioforo.com
Versión phpBB: 3.0.11
MODs Instalados: Ninguno
Plantilla(s) usada(s): metro
Servidor: de pago
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No
Hola. He creado una barra lateral que se ve al abrir el foro. Pero cuando entras a un tema la barra ya no se ve, solo es visible en el índice.
Lo que quisiera es que la barra se viera siempre, en cualquier hilo.
A ver si me podéis decir cómo, porfa.
Gracias de antemano
Versión phpBB: 3.0.11
MODs Instalados: Ninguno
Plantilla(s) usada(s): metro
Servidor: de pago
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No
Hola. He creado una barra lateral que se ve al abrir el foro. Pero cuando entras a un tema la barra ya no se ve, solo es visible en el índice.
Lo que quisiera es que la barra se viera siempre, en cualquier hilo.
A ver si me podéis decir cómo, porfa.
Gracias de antemano
Re: barra lateral ultimos posts en mensajes
Simplemente pon el codigo de la barra en el archivo overall_header.html de tu estilo
Antes de nada, lee las Normas de phpBB-Es y las Normas de Soporte.
Como corregir el copyright de phpbb3 - Si tu foro no tiene copyright ,lee la guia antes de pedir soporte.No doy soporte por MP ni por MSN ,solo en los foros.
© angelismo- Webmaster de Webmastercreativo
© angelismo -Administrador de phpBB-es
Re: barra lateral ultimos posts en mensajes
ya lo tengo puesto allí y no me funciona. Quizá hay una orden que impide que se vea en los hilos. Sale el espacio pero no el contenido
Según la info de la plantilla, en el overall header he de decirle que quiero sidebar. También se lo he dicho en viewtopic body y en viewforum body. Luego está el archivo sidebar donde está la info de la barra. Te pongo el código del archivo "sidebar"
Según la info de la plantilla, en el overall header he de decirle que quiero sidebar. También se lo he dicho en viewtopic body y en viewforum body. Luego está el archivo sidebar donde está la info de la barra. Te pongo el código del archivo "sidebar"
Código: Seleccionar todo
<div id="sidebar">
<!-- Sidebar block beginning -->
<div class="sidebar-block">
<!-- Sidebar header beginning -->
<!-- Sidebar content beginning -->
<div class="sidebar-block-content">
<p>
<div class="forabg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon">
<dt>Últimos Posts</dt>
</dl>
</li>
</ul>
<ul class="topiclist forums">
<li class="row">
<dl>
<dt>
<!-- BEGIN last_topics -->
<a href="{last_topics.POST_LINK}">{LAST_POST_IMG}</a> <a href="{last_topics.POST_LINK}" class="forumtitle">{last_topics.TOPIC_TITLE}</a> por {last_topics.POST_AUTHOR} - {last_topics.POST_DATE}<br />
<!-- END last_topics -->
</dt>
</dl>
</li>
</ul>
<span class="corners-bottom"><span></span></span></div>
</div>
</p>
</div>
<!-- Sidebar content end -->
</div>
<!-- Sidebar block end -->
</div>
- Adjuntos
-
- Sin título.png (44.34 KiB) Visto 2448 veces
Última edición por pacorro el 10 Oct 2014, 21:36, editado 2 veces en total.
Re: barra lateral ultimos posts en mensajes
Y si ya puestos me dijérais cómo hacer que salga solamente una vez cada hilo sería la hostia.
O sea, ahora me salen los últimos posts, pero si esos han sido hechos en un mismo hilo entonces sale ese hilo tropecientas veces. Me gustaría que en realidad salieran los últimos hilos con nuevos mensajes, pero solamente una vez cada hilo.
Gracias
O sea, ahora me salen los últimos posts, pero si esos han sido hechos en un mismo hilo entonces sale ese hilo tropecientas veces. Me gustaría que en realidad salieran los últimos hilos con nuevos mensajes, pero solamente una vez cada hilo.
Gracias
Re: barra lateral ultimos posts en mensajes
la barra de últimos posts que uso es la de Mitch, sacada de este foro.
Pego aquí la info que tengo sobre la barra en index.php
En httpdocs/ phpbb 3-1 / index.php, Buscar:
Agregar después:
Pego aquí la info que tengo sobre la barra en index.php
En httpdocs/ phpbb 3-1 / index.php, Buscar:
Código: Seleccionar todo
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('viewforum');
display_forums('', $config['load_moderators']);
Agregar después:
Código: Seleccionar todo
// bloque últimos posts - mitch - phpBB-Es
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
function create_where_clauses($gen_id, $type)
{
global $db, $auth;
$size_gen_id = sizeof($gen_id);
switch($type)
{
case 'forum':
$type = 'forum_id';
break;
case 'topic':
$type = 'topic_id';
break;
default:
trigger_error('No type defined');
}
$out_where = '';
if ($size_gen_id > 0)
{
$auth_f_read = array_keys($auth->acl_getf('f_read', true));
if ($type == 'topic_id')
{
$sql = 'SELECT topic_id FROM ' . TOPICS_TABLE . '
WHERE ' . $db->sql_in_set('topic_id', $gen_id) . '
AND ' . $db->sql_in_set('forum_id', $auth_f_read);
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$topic_id_list[] = $row['topic_id'];
}
unset($gen_id);
$gen_id = $topic_id_list;
$size_gen_id = sizeof($gen_id);
}
$j = 0;
for ($i = 0; $i < $size_gen_id; $i++)
{
$id_check = (int) $gen_id[$i]; // If the type is topic, all checks have been made and the query can start to be built if( $type == 'topic_id' ) { $out_where .= ($j == 0) ? 'WHERE ' . $type . ' = ' . $id_check . ' ' : 'OR ' . $type . ' = ' . $id_check . ' '; } // If the type is forum, do the check to make sure the user has read permissions else if( $type == 'forum_id' && $auth->acl_get('f_read', $id_check) )
{
$out_where .= ($j == 0) ? 'WHERE ' . $type . ' = ' . $id_check . ' ' : 'OR ' . $type . ' = ' . $id_check . ' ';
}
$j++;
}
}
if ($out_where == '' && $size_gen_id > 0)
{
trigger_error('A list of topics/forums has not been created');
}
return $out_where;
}
// Número de últimos posts a mostrar (editar el 5 si así lo deseas):
$search_limit = 10;
$posts_ary = array(
'SELECT' => 'p.*, t.*, u.username, u.user_colour',
'FROM' => array(
POSTS_TABLE => 'p',
),
'LEFT_JOIN' => array(
array(
'FROM' => array(USERS_TABLE => 'u'),
'ON' => 'u.user_id = p.poster_id'
),
array(
'FROM' => array(TOPICS_TABLE => 't'),
'ON' => 'p.topic_id = t.topic_id'
),
),
'WHERE' => $db->sql_in_set('t.forum_id', array_keys($auth->acl_getf('f_read', true))) . '
AND t.topic_status <> ' . ITEM_MOVED . '
AND t.topic_approved = 1',
'ORDER_BY' => 'p.post_id DESC',
);
$posts = $db->sql_build_query('SELECT', $posts_ary);
$posts_result = $db->sql_query_limit($posts, $search_limit);
while ($posts_row = $db->sql_fetchrow($posts_result))
{
$topic_title = $posts_row['topic_title'];
$topic_title = censor_text($topic_title);
$post_author = get_username_string('full', $posts_row['poster_id'], $posts_row['username'], $posts_row['user_colour']);
$post_date = $user->format_date($posts_row['post_time']);
$post_link = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "p=" . $posts_row['post_id'] . "#p" . $posts_row['post_id']);
$post_text = nl2br($posts_row['post_text']);
$bbcode = new bbcode(base64_encode($bbcode_bitfield));
$bbcode->bbcode_second_pass($post_text, $posts_row['bbcode_uid'], $posts_row['bbcode_bitfield']);
$post_text = smiley_text($post_text);
$template->assign_block_vars('last_topics', array(
'TOPIC_TITLE' => censor_text($topic_title),
'POST_AUTHOR' => $post_author,
'POST_DATE' => $post_date,
'POST_LINK' => $post_link,
'POST_TEXT' => censor_text($post_text),
));
}
// Fin bloque últimos posts - mitch - phpBB-Es
Re: barra lateral ultimos posts en mensajes
Acabo de cambiar la barra de Mitch por la de Alorse
http://www.phpbb-es.com/foro/soporte-ph ... e&iaddlist
Salen los últimos hilos en vez de los últimos post, y es CASI lo que busco.
El problema es que los ordena por fecha de apertura del hilo, y es poco práctico. Quisiera que los ordenara por fecha de último post en dicho hilo.
¿me echáis un cable, porfa?
Pego el código:
En el index.php va esto...
En el en el archivo sidebar del template va esto otro:
Me podríais decir qué cambiar para que salga como quiero?
Saludos
http://www.phpbb-es.com/foro/soporte-ph ... e&iaddlist
Salen los últimos hilos en vez de los últimos post, y es CASI lo que busco.
El problema es que los ordena por fecha de apertura del hilo, y es poco práctico. Quisiera que los ordenara por fecha de último post en dicho hilo.
¿me echáis un cable, porfa?
Pego el código:
En el index.php va esto...
Código: Seleccionar todo
function last_topics_on_index($limit = 10) {
global $db, $template, $user, $auth;
global $phpbb_root_path, $phpEx;
$topics_ary = array(
'SELECT' => 'f.*, t.*, u.username, u.user_colour',
'FROM' => array(
TOPICS_TABLE => 't',
),
'LEFT_JOIN' => array(
array(
'FROM' => array(USERS_TABLE => 'u'),
'ON' => 'u.user_id = t.topic_poster'
),
array(
'FROM' => array(FORUMS_TABLE => 'f'),
'ON' => 't.forum_id = f.forum_id'
),
),
'WHERE' => $db->sql_in_set('t.forum_id', array_keys($auth->acl_getf('f_read', true))) . '
AND t.topic_status <> ' . ITEM_MOVED . '
AND t.topic_approved = 1
OR t.forum_id = 0', //OR t.forum_id = 0, esta linea es para que muestre tambien los globales ya que el id del foro de estos es 0
'ORDER_BY' => 't.topic_id DESC',
);
$topics = $db->sql_build_query('SELECT', $topics_ary);
$topics_result = $db->sql_query_limit($topics, $limit);
while ($topics_row = $db->sql_fetchrow($topics_result)) {
$forum_id = $topics_row['forum_id'];
$topic_title = $topics_row['topic_title'];
$topic_title = censor_text($topic_title);
// add-on - number of replies on topic title
$topic_replies = $topics_row['topic_replies'];
$topic_replies = $topic_replies == 1 ? "(".$topics_row['topic_replies']." respuesta)" : "(".$topics_row['topic_replies']." respuestas)";
$topic_replies = $topic_replies == '(0 respuestas)' ? '' : $topic_replies;
$topic_author = get_username_string('full', $topics_row['topic_last_poster_id'], $topics_row['topic_first_poster_name'], $topics_row['topic_first_poster_colour']);
$topic_date = $user->format_date($topics_row['topic_time']);
$topic_link = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $topics_row['forum_id'] . '&t=' . $topics_row['topic_id']);
$template->assign_block_vars('last_topics', array(
'TOPIC_TITLE' => censor_text($topic_title),
'TOPIC_AUTHOR' => $topic_author,
'TOPIC_DATE' => $topic_date,
'TOPIC_LINK' => $topic_link,
'TOPIC_REPLIES' => $topic_replies,
));
}
}
last_topics_on_index(10);// donde 10 es el número de mensajes a mostrar
En el en el archivo sidebar del template va esto otro:
Código: Seleccionar todo
<!-- // inicio ultimos mensajes by Alorse -->
<!-- IF not S_IS_BOT -->
<div class="panel bg3">
<div class="inner">
<span class="corners-top"><span></span></span>
<h3>Últimos mensajes</h3>
<div class="content">
<p>
<!-- BEGIN last_topics -->
<strong>{L_POST_SUBJECT}:</strong> <a href="{last_topics.TOPIC_LINK}">{last_topics.TOPIC_TITLE}</a> {last_topics.TOPIC_REPLIES}<br />
<strong>{L_AUTHOR}:</strong> {last_topics.TOPIC_AUTHOR}<br />
<strong>{L_FILEDATE}:</strong> {last_topics.TOPIC_DATE}<br /><br />
<!-- END last_post -->
</p>
</div>
<span class="corners-bottom"><span></span></span>
</div>
</div>
<!-- ENDIF -->
<!-- // fin ultimos mensajes by Alorse -->
Me podríais decir qué cambiar para que salga como quiero?
Saludos
Re: barra lateral ultimos posts en mensajes
ofrezco pagar una hora de curro al que me lo solucione.
Una barra lateral, que salgan los últimos post pero solamente una vez cada uno, con el número de respuestas al lado.
A ver si así, que llevo 3 meses con esto. Entiendo que vuestro tiempo os cuesta, así que si hace falta lo compenso con pasta.
Una barra lateral, que salgan los últimos post pero solamente una vez cada uno, con el número de respuestas al lado.
A ver si así, que llevo 3 meses con esto. Entiendo que vuestro tiempo os cuesta, así que si hace falta lo compenso con pasta.
Última edición por pacorro el 14 Oct 2014, 07:09, editado 2 veces en total.
Re: barra lateral ultimos posts en mensajes Tema Solucionado
Por otro lado ya no es recomendable usar el plugin que Mitch compartió hace unos años, esta desactualizado e incluye métodos como el create_where_clauses() que no son necesarios y solo ocupa espacio en los archivos.
Para logar que no se repitieran los temas en la barra fue necesario modificar la consulta SQL y así excluir los repetidos.