Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

PhpBB: Línea de enlaces

Estas en el tema de PhpBB: Línea de enlaces en el foro de Sistemas de gestión de contenidos en Foros del Web. No se si os interesa, pero lo he conseguido Mi problema era que quería que cuando el usuario estuviese en un foro o en un ...
  #1 (permalink)  
Antiguo 01/12/2006, 17:30
Avatar de autonotel  
Fecha de Ingreso: junio-2003
Ubicación: Vigo
Mensajes: 480
Antigüedad: 20 años, 10 meses
Puntos: 13
PhpBB: Línea de enlaces

No se si os interesa, pero lo he conseguido

Mi problema era que quería que cuando el usuario estuviese en un foro o en un tema concretos, en la línea encima de la tabla principal, esa donde pone.. temas, respuestas, autora...Pues que encima, en lugar de poner:
foros (principal) ->Elforo en el questas
con sus enlaces correspondientes,
apareciese:
foros (principal) -> LaCategoria del Foroenelquestas ->ElForo en el Questas
con sus enlaces correspondientes.

Lo que he hecho ha sido:

En el archivo ViewForum.php he añadido el siguiente código:*
*Antes tienes que saber que en mi BD las tablas tienen el prefijo phpbb_ y que es lo normal.

Que este código lo he colocado inmediatamente después de:
-----------------------------------------------------------------

//
// Grab all the basic data (all topics except announcements)
// for this forum
//
$sql = "SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_username, p2.post_username AS post_username2, p2.post_time
FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2, " . USERS_TABLE . " u2
WHERE t.forum_id = $forum_id
AND t.topic_poster = u.user_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND u2.user_id = p2.poster_id
AND t.topic_type <> " . POST_ANNOUNCE . "
$limit_topics_time
ORDER BY t.topic_type DESC, t.topic_last_post_id DESC
LIMIT $start, ".$board_config['topics_per_page'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain topic information', '', __LINE__, __FILE__, $sql);
}

$total_topics = 0;
while( $row = $db->sql_fetchrow($result) )
{
$topic_rowset[] = $row;
$total_topics++;
}

$db->sql_freeresult($result);
--------------------- ahora lo que he puesto: --------------------------

//
// creamos variables TITULO.CAT..
//

$sql = "SELECT * from phpbb_forums where forum_id=$forum_id";
$result=mysql_db_query("foro",$sql);
$row=mysql_fetch_array($result);
$cat=$row["cat_id"];
mysql_free_result($result);
$ssql = "SELECT * from phpbb_categories where cat_id=$cat";
$results=mysql_db_query("foro",$ssql);
$row=mysql_fetch_array($results);
$titulo=$row["cat_title"];
mysql_free_result($results);
//
// Tan creadas.....
//

.....................................
Después de esto se añaden las variables para templates justo después de todo esto (o en medio, como quieras):

$template->assign_vars(array(
'FORUM_ID' => $forum_id,
'FORUM_NAME' => $forum_row['forum_name'],
'MODERATORS' => $forum_moderators,
'POST_IMG' => ( $forum_row['forum_status'] == FORUM_LOCKED ) ? ...
'FOLDER_IMG' => $images['folder'],
'FOLDER_NEW_IMG' => $images['folder_new'],
'FOLDER_HOT_IMG' => $images['folder_hot'],
'FOLDER_HOT_NEW_IMG' => $images['folder_hot_new'],
'FOLDER_LOCKED_IMG' => $images['folder_locked'],
'FOLDER_LOCKED_NEW_IMG' => $images['folder_locked_new'],
'FOLDER_STICKY_IMG' => $images['folder_sticky'],
'FOLDER_STICKY_NEW_IMG' => $images['folder_sticky_new'],
'FOLDER_ANNOUNCE_IMG' => $images['folder_announce'],
'FOLDER_ANNOUNCE_NEW_IMG' => $images['folder_announce_new'],
'L_TOPICS' => $lang['Topics'],
'L_REPLIES' => $lang['Replies'],
'L_VIEWS' => $lang['Views'],
'L_POSTS' => $lang['Posts'],
'L_LASTPOST' => $lang['Last_Post'],
'L_MODERATOR' => $l_moderators,
'L_MARK_TOPICS_READ' => $lang['Mark_all_topics'],
'L_POST_NEW_TOPIC' => ( $forum_row['forum_status'] == ...
'L_NO_NEW_POSTS' => $lang['No_new_posts'],
'L_NEW_POSTS' => $lang['New_posts'],
'L_NO_NEW_POSTS_LOCKED' => $lang['No_new_posts_locked'],
'L_NEW_POSTS_LOCKED' => $lang['New_posts_locked'],
'L_NO_NEW_POSTS_HOT' => $lang['No_new_posts_hot'],
'L_NEW_POSTS_HOT' => $lang['New_posts_hot'],
'L_ANNOUNCEMENT' => $lang['Post_Announcement'],
'L_STICKY' => $lang['Post_Sticky'],
'L_POSTED' => $lang['Posted'],
'L_JOINED' => $lang['Joined'],
'L_AUTHOR' => $lang['Author'],
'S_AUTH_LIST' => $s_auth_can,

'U_VIEW_FORUM' => append_sid("viewforum.$phpEx?" ....

'U_MARK_READ' => append_sid("viewforum.$phpEx?" . ..
----------------aqui, por ejemplo, es donde pones...........
'TITULO' => $titulo,
'CAT' => $cat,
--------------------

Ahora, tenemos que irnos al template:

nos vamos a ViewForum_Body.tpl (dentro de....bueno, ya sabéis donde está no?)...El template es el Subsilver en este caso.

y ponemos(al menos es lo que yo he puesto, seguro que se puede hacer mucho más profesional):

Creo que es en la octava linea más o menos. Bueno, ahí ya lo véis. Es todo igual menos lo de en medio.

<td align="left" valign="middle" width="100%"><span class="nav"> <a href="{U_INDEX}" class="nav">Todos los Foros</a> -> <a href="http://www.autonotel.com/foros/index.php?c={CAT}" class="nav">{TITULO}</a> -> <a class="nav" href="{U_VIEW_FORUM}">{FORUM_NAME}</a></span></td>


-------------------------------------------------

Ojalá a lguien le sirva de algo. Si es así...

Última edición por autonotel; 04/12/2006 a las 15:25
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:23.