You need to enable JavaScript to run this app.

Ir al contenido principal

[MOD] Comunidades y Temas en la home

Miguel92
[MOD] Comunidades y Temas en la home
3
Mejor respuesta del mensaje [MOD] Comunidades y Temas en la home[font]Añadir estadísticas de las comunidades al home[/font]

1 - Ejecutan esta consulta (solo si no lo tienen)
ALTER TABLE w_stats ADD `stats_comunidades` int(11) NOT NULL DEFAULT 0, ADD `stats_temas` int(11) NOT NULL DEFAULT 0, ADD `stats_respuestas` int(11) NOT NULL DEFAULT 0;
2 - Ir a inc/class/c.tops.php y buscar
$q5 db_exec('fetch_row'db_exec([__FILE____LINE__], 'query''SELECT COUNT(cid) AS fc FROM f_comentarios')); 
debajo agregar
$q6 db_exec('fetch_row'db_exec([__FILE____LINE__], 'query''SELECT COUNT(c_id) AS total FROM c_comunidades WHERE c_estado = \'0\''));
$q7 db_exec('fetch_row'db_exec([__FILE____LINE__], 'query''SELECT COUNT(t_id) AS total FROM c_temas LEFT JOIN c_comunidades ON c_id = t_comunidad WHERE t_estado = \'0\' AND c_estado = \'0\''));
$q8 db_exec('fetch_row'db_exec([__FILE____LINE__], 'query''SELECT COUNT(r_id) AS total FROM c_respuestas LEFT JOIN c_temas ON t_id = r_tema LEFT JOIN c_comunidades ON c_id = t_id WHERE r_estado = \'0\' AND t_estado = \'0\' AND c_estado = \'0\'')); 
un poco más abajo buscar
$return['stats_comments'] = $q4[0];
$return['stats_foto_comments'] = $q5[0]; 
y debajo añadir
$return['stats_comunidades'] = $q6[0];
$return['stats_temas'] = $q7[0];
$return['stats_respuestas'] = $q8[0]; 
luego deben buscar
stats_foto_comments = \''.$return['stats_foto_comments'].'\' 
y a lado agregan lo siguiente
stats_comunidades = \''.$return['stats_comunidades'].'\', stats_temas = \''.$return['stats_temas'].'\', stats_respuestas = \''.$return['stats_respuestas'].'\' 

3 - Luego en themes/TUTHEME/templates/modules/m.home_stats.tpl buscan
</table
y arriba pegan, pueden poner el icono que deseen...
<tr>
    <td style="background-image:url({$tsConfig.images}/icons/details.png);">{$tsStats.stats_temastemas</td>
    <td style="background-image:url({$tsConfig.images}/icons/comment.png);">{$tsStats.stats_respuestascomentarios en temas</td>
</
tr
No esta comunidades pero si lo quieren solo deben agregar
<tr>
    <td style="background-image:url({$tsConfig.images}/icons/details.png);">{$tsStats.stats_comunidadescomunidades</td>
</
tr

Agregar las últimas comunidades y últimos temas en la home

1 - Abrir inc/php/posts.php y buscar
// AFILIADOS
$smarty->assign("tsAfiliados",$tsAfiliado->getAfiliados()); 
arriba añaden esto
// COMUNIDADES Y TEMAS
include TS_CLASS "c.comunidades.php";
$tsCom = new tsCom();
$smarty->assign("tsLastComunidades"$tsCom->getComRecentHome());
$smarty->assign("tsLastTemas"$tsCom->getTemasRecentHome()); 

2 - Luego va a inc/class/c.comunidades.php y buscan
function getComRecentHome() { 
y arriba agregan
function getTemasRecentHome() {
    global $tsCore$tsUser;
    $query db_exec([__FILE____LINE__], 'query''SELECT t_id, t_titulo, t_comunidad, t_autor, t_fecha, t_estado, t_ip, c_nombre, c_nombre_corto FROM c_temas LEFT JOIN c_comunidades ON t_comunidad = c_id LEFT JOIN u_miembros ON user_id = t_autor WHERE t_id > \'0\' '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == '' '&& user_activo = \'1\' && user_baneado = \'0\' && t_estado = \'0\'').' ORDER BY t_fecha DESC LIMIT 10');
    $data result_array($query);
    return $data;


3 - Por último ir a themes/TUTHEME/templates/t.home.tpl y lo ubican donde quieren, puede ir debajo de
{include file='modules/m.home_stats.tpl'}
y agregan lo siguiente
{include file='modules/m.home_temas.tpl'}

4 - Como ese archivo no existe en modules crean un archivo con ese nombre m.home_temas.tpl u otro nombre que deseen y dentro agregan todo esto
<div>
   <div class="box_title">
      <div class="box_txt estadisticas">&Uacute;ltimas comunidades</div>
   </div>
   <div class="box_cuerpo" style="padding: 0pt; height: 230px;">
       <ol class="filterBy cleanlist" style="display:block;">
           {foreach from=$tsLastComunidades key=i item=tema}
               <li>
               {if $i+1 < 10}0{/if}{$i+1}. 
                    <a href="{$tsConfig.url}/comunidades/{$tema.c_nombre_corto}/">{$tema.c_nombre}</a>
            </li>
           {/foreach}
       </ol>
   </div>
   <br class="space"/>
</div>
<div>
   <div class="box_title">
      <div class="box_txt estadisticas">&Uacute;ltimos temas</div>
   </div>
   <div class="box_cuerpo" style="padding: 0pt; height: 230px;">
       <ol class="filterBy cleanlist" style="display:block;">
           {foreach from=$tsLastTemas key=i item=tema}
               <li>
               {if $i+1 < 10}0{/if}{$i+1}. 
               <a href="{$tsConfig.url}/comunidades/{$tema.c_nombre_corto}/{$tema.t_id}/{$tema.t_titulo|seo}.html"><strong>{$tema.t_titulo}</strong></a>
               <!-- Agregar la comunidad
                    <a href="{$tsConfig.url}/comunidades/{$tema.c_nombre_corto}/">{$tema.c_nombre}</a>
               -->
            </li>
           {/foreach}
       </ol>
   </div>
   <br class="space"/>
</div>
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Todo esto es básico y simple, por el momento...
Las comunidades que estoy usando es la de KMario19