[Tutorial] Añadir bloque del ProPortal a cualquier sitio
Menudo nombre jaja Este es un tutorial de esto: http://www.soportemybb.com/tema_Como-Con...4#pid11674 Más o menos lo hago mejor aquí. 1. Para usar...

Menudo nombre jaja

Este es un tutorial de esto: http://www.soportemybb.com/tema_Como-Con...4#pid11674

Más o menos lo hago mejor aquí.

1. Para usar PHP usamos esto y instalamos este plugin: http://mybbhacks.zingaburga.com/showthread.php?tid=260
Se llama PHP en las plantillas, que habilita el modo de usar PHP en las plantillas.
2. Subir los archivos que vayáis a utilizar del ProPortal, por ej si es el bloque de top poster vais a su carpeta y en el ftp de vuestra web creáis una carpeta llamada "portal" y metéis los archivos ahí.
3. Después de haber instalado el plugin vamos a la plantilla portal o en la que vayáis a poner el bloque y ponéis:
Código PHP:
<?
include("portal/nombrebloque.php");
?>
3.1.Donde está nombrebloque es para el bloque que vayáis a subir
También se puede de esta manera aunque si no sabéis de PHP os recomiendo el paso
3, :
Vamos al bloque del topposter lo abrimos con el notepad++ y os saldrá todo esto:
(Abdón lo del code php en el css dale a width:100% sale muy enano ._.)
Código PHP:
<?php
/***************************************************************
 * ProPortal
 * Copyright © 2010 ProMyBB, All Rights Reserved
 *
 * Website: http://www.promybb.com/
 * License: http://creativecommons.org/licenses/by-nc-sa/3.0/
 ***************************************************************/
 
$tpaltbg alt_trow();
$query $db->query("SELECT uid, username, postnum, avatar, avatardimensions, usergroup, displaygroup FROM ".TABLE_PREFIX."users ORDER by postnum DESC LIMIT 0, 10");
while(
$user $db->fetch_array($query))
{
    
$username format_name($user['username'], $user['usergroup'], $user['displaygroup']);
    
$profilelink get_profile_link($user['uid']);
    if(
$user['postnum'] <= "1"){ $postnum my_number_format($user['postnum'])." ".$lang->have_post; }else{ $postnum my_number_format($user['postnum'])." ".$lang->have_posts; }
    
    if(
$user['avatar']){ $user['avatar'] = htmlspecialchars_uni($user['avatar']); }else{ $user['avatar'] = $mybb->settings['bburl']."/portal/images/user.png"$user['avatardimensions'] = "40|40"; }
    
$avatar_dimensions explode("|"$user['avatardimensions']);
    
    if(
$avatar_dimensions[0] && $avatar_dimensions[1])
    {
        list(
$max_width$max_height) = explode("x"my_strtolower("40x40"));
        if(
$avatar_dimensions[0] > $max_width || $avatar_dimensions[1] > $max_height)
        {
            require_once 
MYBB_ROOT."inc/functions_image.php";
            
$scaled_dimensions scale_image($avatar_dimensions[0], $avatar_dimensions[1], $max_width$max_height);
            
$block_avatar_width_height "width=\"{$scaled_dimensions['width']}\" height=\"{$scaled_dimensions['height']}\"";
        }
        else
        {
            
$block_avatar_width_height "width=\"{$avatar_dimensions[0]}\" height=\"{$avatar_dimensions[1]}\"";    
        }
    }
    
    
$topposters .= "<tr><td class=\"{$tpaltbg}\" width=\"50\" align=\"center\"><img src=\"".$user['avatar']."\" alt=\"\" {$block_avatar_width_height} border=\"0\" /></td><td class=\"{$tpaltbg}\"><a href=\"{$mybb->settings['bburl']}/{$profilelink}\">{$username}</a><br />{$postnum}</td></tr>";
    
$tpaltbg alt_trow();
}

echo 
"<table border=\"0\" cellspacing=\"".$theme['borderwidth']."\" cellpadding=\"".$theme['tablespace']."\" class=\"tborder\">
        <tr>
            <td class=\"thead\" colspan=\"2\"><div class=\"expcolimage\"><img src=\"
{$theme['imgdir']}/{$expcolimage}\" id=\"block_{$result_blocks['id']}_img\" class=\"expander\" alt=\"{$expaltext}\" title=\"{$expaltext}\" /></div>
<strong>
{$lang->top_posters}</strong></td>
        </tr>
        <tbody style=\"
{$expdisplay}\" id=\"block_{$result_blocks['id']}_e\">
        
{$topposters}
        </tbody>
    </table>"
;
?>

Bueno si no sabéis de PHP yo os dejo aquí todo el code personalizado para vuestra web! :


Código PHP:
<?php
$tpaltbg 
alt_trow();
$query $db->query("SELECT uid, username, postnum, avatar, avatardimensions, usergroup, displaygroup FROM ".TABLE_PREFIX."users ORDER by postnum DESC LIMIT 0, 10");
while(
$user $db->fetch_array($query))
{
    
$username format_name($user['username'], $user['usergroup'], $user['displaygroup']);
    
$profilelink get_profile_link($user['uid']);
    if(
$user['postnum'] <= "1"){ $postnum my_number_format($user['postnum'])." ".$lang->have_post; }else{ $postnum my_number_format($user['postnum'])." ".$lang->have_posts; }
    
    if(
$user['avatar']){ $user['avatar'] = htmlspecialchars_uni($user['avatar']); }else{ $user['avatar'] = $mybb->settings['bburl']."/images/pixel.gif"$user['avatardimensions'] = "40|40"; }
    
$avatar_dimensions explode("|"$user['avatardimensions']);
    
    if(
$avatar_dimensions[0] && $avatar_dimensions[1])
    {
        list(
$max_width$max_height) = explode("x"my_strtolower("40x40"));
        if(
$avatar_dimensions[0] > $max_width || $avatar_dimensions[1] > $max_height)
        {
            require_once 
MYBB_ROOT."inc/functions_image.php";
            
$scaled_dimensions scale_image($avatar_dimensions[0], $avatar_dimensions[1], $max_width$max_height);
            
$block_avatar_width_height "width=\"{$scaled_dimensions['width']}\" height=\"{$scaled_dimensions['height']}\"";
        }
        else
        {
            
$block_avatar_width_height "width=\"{$avatar_dimensions[0]}\" height=\"{$avatar_dimensions[1]}\"";    
        }
    }
    
    
$topposters .= "<tr><td class=\"{$tpaltbg}\" width=\"50\" align=\"center\"><img src=\"".$user['avatar']."\" alt=\"\" {$block_avatar_width_height} border=\"0\" /></td><td class=\"{$tpaltbg}\"><a href=\"{$mybb->settings['bburl']}/{$profilelink}\">{$username}</a><br />{$postnum}</td></tr>";
    
$tpaltbg alt_trow();
}

echo 
"<table border=\"0\" cellspacing=\"".$theme['borderwidth']."\" cellpadding=\"".$theme['tablespace']."\" class=\"tborder\">
        <tr>
            <td class=\"thead\" colspan=\"2\"><strong>Top posteadores de "
.$mybb->settings['home']."</strong></td>
        </tr>
        <tbody>
        
{$topposters}
        </tbody>
    </table>"
;
?>

No le he cambiado mucho pero así está bien ^^
Por defecto están 10 personas, si queréis más buscar la línea: DESC LIMIT 0, 10 y donde está el 10 lo modificáis por vuestro número.
Y ya ta creo si me falta algo decídmelo ;P

Bla bla bla. jajaja

Si queréis ajustar algún bloque ponerlo aquí y os ayudaremos.


Licencia (CC BY-NC-ND 3.0)

[Imagen: 80x15.png] Este tutorial se encuentra bajo una licencia Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported.

Autor de esta guía: Gypaete.
Si deseas publicarlo en otros sitios tendrás que publicar la licencia y la autoría.
Está muy bueno el tutorial aunque como tú dices hay algunos bloques que ajustarlos como el de ¿Quién esta en línea?, welcome, entre otros xd.
Reputación + Saludos!
Bien Gypaete, es bueno verte por aquí compartiendo Big Grin.

PD: Dale una mejor estructura al mensaje inicial...
Buena info, yo creo que a muchos servirá. Aunque el plugin no lo he probado, ya que estuve tratandolo en la nueva versión, pero algunas funciones no son respetadas y otras si, habría que mirar que y donde se puede usar php, jeje, ya que algunas cosas no las toma y otras si, pero no lo mire a detalle, pues prefiero intentar con mas código, jeje.

Aún asi es una excelente herramienta, creo que mirare un poco más esto, ya que promete buenas cosas si es que usas el portal que ya traer por defecto MyBB. Pero con eso de que estoy tambien mirando el Pro Portal, no se por donde comenzar xD.
Gracias por el tutorial!