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.
Últimos mensajes por categorías en nueva página
Últimos mensajes por categorías en nueva página
URL: http://www.entre88teclas.es/foro
Versión phpBB: 3.0.10
MODs Instalados: Ninguno
Plantilla(s) usada(s): Prosilver (modificada)
Servidor:
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No
Estoy intentando hacer una página nueva en el foro con un listado de últimos mensajes ordenados por categorías y por más que he usado el buscador no he encontrado nada así. He intentado adaptar alguno de los códigos de últimos mensajes para páginas externas y no he conseguido nada.
La idea es algo similar a esto: http://www.clubmazda.es/foros/ultimos.php
¿Sabéis si hay algún código de los archivos php+html por ahí?
Versión phpBB: 3.0.10
MODs Instalados: Ninguno
Plantilla(s) usada(s): Prosilver (modificada)
Servidor:
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No
Estoy intentando hacer una página nueva en el foro con un listado de últimos mensajes ordenados por categorías y por más que he usado el buscador no he encontrado nada así. He intentado adaptar alguno de los códigos de últimos mensajes para páginas externas y no he conseguido nada.
La idea es algo similar a esto: http://www.clubmazda.es/foros/ultimos.php
¿Sabéis si hay algún código de los archivos php+html por ahí?
Re: Últimos mensajes por categorías en nueva página
Tengo un código con el que trabajar, aunque no es por categoría, pero se pueden seleccionar todos los foros de una categoría, y tengo dos problemas:
1.- Me carga los últimos temas creados del foro seleccionado y no los últimos temas que tengan una respuesta más reciente, que es lo que quiero.
2.- ¿Cómo sería el código de un archivo .html para este .php, para poder darle el aspecto del viewforum.php?
Hay alguien por ahí? 
1.- Me carga los últimos temas creados del foro seleccionado y no los últimos temas que tengan una respuesta más reciente, que es lo que quiero.
2.- ¿Cómo sería el código de un archivo .html para este .php, para poder darle el aspecto del viewforum.php?
Código: Seleccionar todo
<?php
// Path to the phpBB 3.0 root directory
define("PHPBB_PATH", "../forum/");
// URL to the phpBB 3.0 installation
define("PHPBB_LOCATION", "http://www.tupagina.com/forum/");
// Time format to output the date/time (for format see PHP manual)
define("TIME_FORMAT", "d/m");
// php extension using
$phpEx = "php";
// No Editing unless you know what your doing
if ( !defined('IN_PHPBB') )
{
define('IN_PHPBB', true);
}
// Get the needed phpbb files, thank you phpbb =]
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
$user->setup();
?>
<body STYLE="background-color:transparent">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="./theme/common.css" rel="stylesheet" type="text/css" title="A" />
</body>
<?php
/* create_where_clauses( int[] gen_id, String type )
* This function outputs an SQL WHERE statement for use when grabbing
* posts and topics */
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');
}
// Set $out_where to nothing, this will be used of the gen_id
// size is empty, in other words "grab from anywhere" with
// no restrictions
$out_where = '';
if ($size_gen_id > 0)
{
// Get a list of all forums the user has permissions to read
$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))
{
// Create an array with all acceptable topic ids
$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:
$search_limit = 10;
// ID del foro específico. Si deseas más de un foro, separar por "comas".
$forum_id = array(4);
$forum_id_where = create_where_clauses($forum_id, 'forum');
$topics = 'SELECT * FROM ' . TOPICS_TABLE . '
' . $forum_id_where . '
AND topic_status <> ' . ITEM_MOVED . '
AND topic_approved = 1
ORDER BY topic_id DESC';
$topics_result = $db->sql_query_limit($topics, $search_limit);
while ($topics_row = $db->sql_fetchrow($topics_result))
{
$topic_title = $topics_row['topic_title'];
$topic_title = censor_text($topic_title);
$topic_author = get_username_string('full', $topics_row['topic_poster'], $topics_row['topic_first_poster_name'], $topics_row['topic_first_poster_colour']);
$topic_date = $user->format_date($topics_row['topic_time']);
$topic_last_post = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "p=" . $topics_row['topic_last_post_id'] . "#" . $topics_row['topic_last_post_id']);
$topic_last_author = get_username_string('full', $topics_row['topic_last_poster_id'], $topics_row['topic_last_poster_name'], $topics_row['topic_last_poster_colour']);
$topic_link = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "t=" . $topics_row['topic_id']);
echo "<b>!!</b> <a href=\"$topic_link\">$topic_title</a> por $topic_author - $topic_date<br>";
}
?>

Última edición por gustav el 01 Abr 2012, 06:11, editado 1 vez en total.
Re: Últimos mensajes por categorías en nueva página
Si mira este tema por completo veras como adaptar el código php y el HTML para que se vea como una pagina personalizado. Modificar script para mostrar URL amigables en portal como veras, primero tenían el código como tú, todo junto, luego se va separando en diferentes archivos 

Re: Últimos mensajes por categorías en nueva página
Muchas gracias Alorse, ya he conseguido que cargue el html con el estilo.
El problema es que aunque esté indicado que cargue los 10 últimos temas, sólo carga uno. Además, carga de los últimos temas creados, no los últimos temas con respuesta.
Necesitaría ayuda para conseguir que:
1.- Cargue los últimos temas con últimos mensajes (igual que al ver el enlace "Buscar mensajes nuevos") y no los últimos temas creados del foro específico señalado en el .php
2.- Que el html cargue los mensajes indicados, en este caso 10, y no sólo 1 tema, como hace actualmente.
El .php es el mismo de arriba, sólo que con este añadido
Dejo el html por si me puedes echar una mano.
Gracias!
El problema es que aunque esté indicado que cargue los 10 últimos temas, sólo carga uno. Además, carga de los últimos temas creados, no los últimos temas con respuesta.
Necesitaría ayuda para conseguir que:
1.- Cargue los últimos temas con últimos mensajes (igual que al ver el enlace "Buscar mensajes nuevos") y no los últimos temas creados del foro específico señalado en el .php
2.- Que el html cargue los mensajes indicados, en este caso 10, y no sólo 1 tema, como hace actualmente.
El .php es el mismo de arriba, sólo que con este añadido
Código: Seleccionar todo
$template->assign_block_vars('last', array(
'FORUM_IMG' => $forum_image,
'TOPIC_TITLE' => censor_text($topic_title),
'POST_LINK' => $topic_link,
'POST_AUTHOR' => $topic_author,
));
$template->set_filenames(array(
'body' => 'nombredearchivo.html', //nombre del archivo html
));
Código: Seleccionar todo
<!-- INCLUDE overall_header.html -->
<h2>LAST</h2>
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<div class="content">
<p>
TU CONTENIDO IRÍA AQUÍ. PUEDE SER TEXTO O CÓDIGO
</p>
</div>
<span class="corners-bottom"><span></span></span></div>
</div>
<div class="forabg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="icon"><dt>Ultimos temas</dt></dl>
</li>
</ul>
<div class="panel" style="padding:6px;">
<!-- BEGIN last -->
<a href="{last.POST_LINK}" class="forumtitle">{last.TOPIC_TITLE}</a>
<br />
<!-- END last -->
</div>
<span class="corners-bottom"><span></span></span>
</div>
</div>
<!-- IF PAGINATION -->
<div class="pagination">
<!-- IF PAGE_NUMBER -->
<!-- IF PAGINATION -->{TOTAL_TOPICS} • <a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{PAGE_NUMBER}</a> • <span>{PAGINATION}</span><!-- ELSE --> • {PAGE_NUMBER}<!-- ENDIF -->
<!-- ENDIF -->
</div>
<!-- ENDIF -->
<!-- INCLUDE jumpbox.html -->
<!-- INCLUDE overall_footer.html -->
Re: Últimos mensajes por categorías en nueva página
Ahora veo bien tu foro, el copy de phpBB esta incompleto y falta el copyright de la traducción.
Re: Últimos mensajes por categorías en nueva página
Perdón, he estado modificando el estilo y utilicé un footer antiguo al que se lo había quitado hace tiempo. La plantilla anterior, cuando abrí el tema si lo tenía. Ya lo he arreglado.Alorse escribió:Ahora veo bien tu foro, el copy de phpBB esta incompleto y falta el copyright de la traducción.
Última edición por gustav el 02 Abr 2012, 18:36, editado 1 vez en total.
Re: Últimos mensajes por categorías en nueva página
Alorse, se que no es el sitio, pero no se cómo contactar, me he registrado en phpBBMODs, y no recibo el email de activación 

Re: Últimos mensajes por categorías en nueva página
No veo que te hallas registrado, o no al menos con este nick.gustav escribió:Alorse, se que no es el sitio, pero no se cómo contactar, me he registrado en phpBBMODs, y no recibo el email de activación
Re: Últimos mensajes por categorías en nueva página
No es este nick, pero el email es el admin de la página de soporte.Alorse escribió:No veo que te hallas registrado, o no al menos con este nick.gustav escribió:Alorse, se que no es el sitio, pero no se cómo contactar, me he registrado en phpBBMODs, y no recibo el email de activación
Re: Últimos mensajes por categorías en nueva página
La cuenta, ya esta activa, de igual manera mira en la bandeja de spam o algo, porque el sistema funciona bien.gustav escribió:No es este nick, pero el email es el admin de la página de soporte.