Novedades :
.
CHAT KDESCARGO

Escuchanos En:
Ultimas Novedades

baners






 

etiquetas_pt







 

mas imagenes






imagen busca


Materiales de producción Trucos productos auxiliares


Trucos Hidden Cave

 

Últimos mensajes en el índice del foro y en páginas externas

La finalidad de esta guía, es compartir algunos códigos con los cuales poder tener una tabla con los últimos posts del foro.
Además colocaré una serie de códigos para que puedan hacer lo mismo en sus páginas externas (portales, wordpress, joomla, etc...).

En realidad es muy sencillo y útil. Espero les sirva.

1) Tabla con los últimos 5 temas en el índice del foro.

Esto se vería así en prosilver:
Imagen
Clic para agrandar la imagen


Y así en subsilver2:
Imagen
Clic para agrandar la imagen


Para lograr esto, debes hacer las siguientes modificaciones:

  • En index.php, Buscar:
    Code: Seleccionar todo
    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup('viewforum');
    
    display_forums('', $config['load_moderators']);

  • Agregar después:
    Code: 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 = 5;
    
    
        $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

    ** nota: En la siguiente línea pueden modificar el 5, por otro número, para que les muestre 8 temas, por ejemplo.
    Code: Seleccionar todo
        // Número de últimos posts a mostrar (editar el 5 si así lo deseas):
        $search_limit = 5;

  • Si tu estilo es prosilver (o está basado en él), abrir /styles/prosilver/template/index_body.html y Buscar:

    Code: Seleccionar todo
    <!-- INCLUDE forumlist_body.html -->


    Agregar ANTES:
    Code: Seleccionar todo
        </ul>
           <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>Ú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>

  • Si tu estilo es subsilver2 (o está basado en él), abrir /styles/subsilver2/template/index_body.html y Buscar:

    Code: Seleccionar todo
    <!-- INCLUDE forumlist_body.html -->


    Agregar ANTES:
    Code: Seleccionar todo
       <table class="tablebg" width="100%" cellspacing="1">
       <tr>
          <td class="cat"><h4>Últimos Posts</h4></td>
       </tr>
       <tr>
          <td class="row1"><p class="genmed">
                     <!-- BEGIN last_topics -->
    
            <a href="{last_topics.POST_LINK}">{LAST_POST_IMG}</a> <a href="{last_topics.POST_LINK}" ><b>{last_topics.TOPIC_TITLE}</b></a> por {last_topics.POST_AUTHOR} - {last_topics.POST_DATE}<br>
    
            <!-- END last_topics -->
             </p></td>
       </tr>
       </table>
    <br>

    nota: Si en la palabra Últimos, aparece un carácter extraño en la "U", es por el acento. Deben ir en su editor de texto a Guardar como... y guardar el archivo en formato UTF8 ;)

  • Limpiar caché.



2) Tabla de últimos posts en páginas externas al foro.

Con esto, me refiero a lo siguiente; supongamos que el foro se encuentra en la carpeta "/foro/" (http://www.tupagina.com/foro/). Pero aparte del foro, tienes un portal, el que se encuentra en la raíz, en home.php (siguiendo con el ejemplo, estaría en http://www.tupagina.com/home.php). Para lograr mostrar en este portal externo, los posts del foro, ya no nos sirven los códigos antes mencionados y tendremos que usar los que muestro a continuación.

Y dejaré 3 alternativas distintas... la primera, para mostrar los últimos mensajes de todo el foro. La segunda, para mostrar los ultimos mensajes de un foro en particular (que tú vas a especificar... por ejemplo el foro de noticias de tu web). Y por último, un código que te servirá para mostrar las respuestas de un tema específico, con su contenido.

  • Ejemplo 1: Últimos 5 posts de todo el foro

    en tu archivo .php externo, deberás agregar estas líneas:
    Code: Seleccionar todo
    <?php
    define('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './phpBB3/';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);
    include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
    include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
    
    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup('viewforum');
    
    /* 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 = 5;
    
    
    
    $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);
    
    echo "<b>!!</b> <a href=\"$post_link\">$topic_title</a> por $post_author - $post_date<br>";
    
    }
    ?>

    De este código, debes editar en esta línea:
    Code: Seleccionar todo
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './phpBB3/';

    editas el ./phpBB3/ por la carpeta en donde se encuentre tu foro... puede ser ./foro/. por ejemplo.

    Si quieres que en vez de 5 temas, muestre 8, u otro valor, lo editas el "5" en esta otra línea:
    Code: Seleccionar todo
    // Número de últimos posts a mostrar:
    $search_limit = 5;


    Y casi al final del código, esta línea:
    Code: Seleccionar todo
    echo "<b>!!</b> <a href=\"$post_link\">$topic_title</a> por $post_author - $post_date<br>";

    es la que muestra finalmente el resultado... la puedes modificar como quieras, cuidando de no modificar los $valores y las comillas iniciales y finales.

  • Ejemplo 2: Últimos posts de un foro en específico

    El código a agregar en tu .php sería este:
    Code: Seleccionar todo
    <?php
    define('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './phpBB3/';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);
    include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
    include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
    
    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup('viewforum');
    
    /* 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 = 5;
    
    // ID del foro específico. Si deseas más de un foro, separar por "comas".
    $forum_id = array(3);
    $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>";
    
    
    }
    ?>


    Debes editar la ruta de tu phpBB tal como lo indiqué en el código anterior. Lo mismo, si quieres editar el número de temas a mostrar, en la misma línea.
    Para editar el foro específico, lo haces en esta línea (cambiar el número 3):
    Code: Seleccionar todo
    // ID del foro específico. Si deseas más de un foro, separar por "comas".
    $forum_id = array(3);

    Ese 3, es la número ID del foro. Si te fijas, al entrar en un foro, la URL mostrada en el navegador es de este tipo: http://ejemplo.com/phpBB3/viewforum.php?f=3, ese número, es la ID de tu foro.
    Y tal como dice allí, puedes colocar más de un foro en específico, separado por comas.

  • Ejemplo 3: Últimos posts (respuestas) de un tema en específico.

    Con este código, mostraremos las respuestas (con su contenido) que se han dejado en un tema que nosotros especificamos. Se verán los bbcodes y todo lo demás :)

    El código es el siguiente:

    Code: Seleccionar todo
    <?php
    define('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './phpBB3/';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);
    include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
    include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
    
    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup('viewforum');
    
    /* 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 = 5;
    
    // ID del post específico. Si deseas más de un tema, separar por "comas".
    $topic_id = array(1);
    $topic_id_where = create_where_clauses($topic_id, 'topic');
    
    
    $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' => str_replace( array('WHERE ', 'topic_id'), array('', 't.topic_id'), $topic_id_where) . '
    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);
    
    echo "<b>!!</b> <a href=\"$post_link\">$topic_title</a> por $post_author - $post_date<br>$post_text<hr>";
    
    
    }
    ?>

    Y se aplica lo mismo que los anteriores; debes editar la ruta del foro, y puedes editar el número de temas a mostrar.
    La ID de tema (o los temas), se colocan en la siguiente línea (cambiar el número 1):
    Code: Seleccionar todo
    // ID del post específico. Si deseas más de un tema, separar por "comas".
    $topic_id = array(1);

    y la ID del tema, lo obtienes fijandote en este número de la URL del tema: http://ejemplo.com/phpBB3/viewtopic.php?f=3&t=4.




Espero les sea de utilidad. Las dudas en el foro oportuno por favor, acá en phpBB-Es.



Fuente: http://blog.phpbb.com/2009/11/09/how-to ... nal-pages/
Últimos posts en el índice, y modificación del original por mitch

Tutorial creado por mitch en Guías sobre phpBB 3

prueba



radio


emoticonos2

 

 

Añadir emoticonos de Yahoo a Blogger

Ahora podemos usar los emoticonos de Yahoo en nuestro blog (entradas y comentarios) sin demasiadas complicaciones.

emoticonos

Emoticonos de Skipe en Blogger

Skipe es un servicio gratuito que nos posibilita el hacer llamadas, videollamadas y enviar mensajería instantánea a través de Internet y que seguro muchos de vosotros ya conocéis.

Entre otras cosas, Skipe utiliza unos emoticonos muy bonitos para comunicarnos a través de su chat, y son estos emoticonos los que en esta entrada veremos como usar en nuestro blog de Blogger.

En primer lugar vamos a ver como incluir una imagen con los emoticonos y sus símbolos sobre el formulario de comentarios, para que nuestras visitas sepan como usar cada emoticono.

[1] En nuestro panel de Blogger nos situamos en Edición HTML.

[2] Marcamos ahora la casilla de "Expandir plantillas de artilugios".

[3] Localizamos esta línea de código:

<p><data:blogCommentMessage/></p>

[4] Justo debajo, pegamos este código:

<div style=' width: 370px; text-align: left; border: 2px solid #0084ce; background: #FEF9EA; padding: 10px; color:#0084ce; font-weight:bold; '>

<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhHxB-RTpg6UOH2YSlSUTzhfb4-i6yws3SDip_SainNi2Ts3LPbrILLdPdFxEjTNPLnX68ZywNrEMTGyO6VcHracfSOonYdC-9935SovvyJrAMpTjjzGOa2SVT4f7T3V76WanSEqwbW1I/s800/emoticon-0100-smile.gif'/> :a

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqDhDIkLW4agn0hSv64H7El82wAGuvAecpnxcsXaaY_CyS9cK7FJAncoWwVtwxsHm6U0V7aliQMh9t2Isf9wqbCx8BZhPibxiCaoYR2qDUArLRBRO9qNHoqy7Rr1OrV8r0CK7ggGdrL_A/s800/emoticon-0101-sadsmile.gif'/> :b

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-vXcbTgPnQd1gdVhw6zFvz-Ria2crxmi5P8FUbcQEC1tgBgX1hiHQpKLKUI7B_hIFEqanXUrVygj0mbHh1qr3hNt_4MFqgwlKA3EZ_hIrn6Qdy1Tc_p9wHasYtTLKFLE5AcHy1akKQl0/s800/emoticon-0102-bigsmile.gif'/> :c

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj77I89BlItLkglcGftefrURWW0uSe6E4sVVsv-6ycxzlMah1ygTjYv6iQ4Kl_P8762SsczjNTAwe_J9OJloP9ZXoKdPXGVz6ri1FWXo-5363TAFcq0_PzcMhrpBjvNKgHiofIV35CbMOk/s800/emoticon-0105-wink.gif'/> :d

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaLqYLF8A8ZLoPOvW4z29ASMzq3bdFDivLoRz9CW2wcHeny6Q10NYhq45HUTC2lZlIKnGbJNk1j77ujifMx3o1EHMXLPsbNH3cTrqjIwOA5iSHtl88BXCiYKKqWyXQmBejkoKpow6KuRE/s800/emoticon-0104-surprised.gif'/> :e

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh88rohdY7e9FlDEIcnUGBqC6OzqLj4KIAOG8qJ3s1mJ-EcP-Hf2enSWpNMzPObNDEWJCGonaQ4q8VQjM6pJKt907MECarcn12Eyw1sTD58g9jjg7HTdhPFWnlo2QZAJMcWdqQ1DLgCQ5Q/s800/emoticon-0106-crying.gif'/> :f

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8wn2Dx6yY8YQFlTyJH6lqP5GEsDzCHBaw2l_yLUlxTJLfjPUuSewrvXvKjCpHC1022sfpiLtBaR_uHrlJbmKabJTThJ8SHEGkH8YuS-5IFw1mjM9URfrEz4fA5xf-_U5D9oh1ZVi8yLo/s800/emoticon-0109-kiss.gif'/> :g

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikYDT2G645FwlJN-kQbOBRQMHZN7NXBnDH0omrfrfy5ri9LPvTgSvccS7aeNQ1loC6CvdUFoF2kM26OUskm0NItH8AVRjE3fOdR4XdYHIkGegA4oyLXZ4tDtVpbl43x11BmLS0aJi6tfY/s800/emoticon-0111-blush.gif'/> :h

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicbgAsPkbIKimLboplLDl0wutdY4G7oKNBjazrwp0MtJ4N8M5Ct_XLIGFrOyd7FlY8chWA1Ec6bebLYTP5K5B-5M27pSO-TP8GxpGNh9uInqKZC9eU5EDtpoi2L19Q0fZmXrkggaXixvw/s800/emoticon-0110-tongueout.gif'/> :i

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzW6MkHMjxhYauQ8JmcY7icmwmSAMJOSZqWXKDMLAX_qZlIVlI1UuD8VwkTLZtRMfYEV_cJoftaACFg6SjSG33jaPPqRuWQXc6O6_c7c9xyQAgdc5SINiSgmYp-7dZeCW1nTAVjMMTip4/s800/emoticon-0126-nerd.gif'/> :j

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg45mxlCBinlpiAVH6oH2nd7XKiZmIbMKluaUoXhoJl26JaQWvSYYJ_jBs8r622kqwa2le1U8NEmNIA2W6kH5fAJ_Q9GV4wrQu7zCF4L6Xnc4gfpMOMLN65FLdivWPRdzXdWP1Oazb3_fc/s800/emoticon-0103-cool.gif'/> :k

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM4bJDH00MtXYol-KL4NmIqcXbLhsG2JMqnyBwYjUBZd-HVFcDqNapJ0_n4BCwQVWXwmIWQfxjupv1ijJabTRQp2eL1BY9v0oH-YMWItiLJ3Av-5aCSlwZVR4UAWi_gSw1yPxPuOaGfxs/s800/emoticon-0130-devil.gif'/> :l

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCad9EVwRBc4N4NRWpPfmLmUhd4EW0ZPEVooFP5JsDf3VWHPsC_I-B8oLhwdNboDOBU8gtrIQLz1MHX0Ls9ePR8noFc5s2T38b89wIMZMFCSZ_VgT2-SD5GGcYg82jkC6C6ceumcIh584/s800/emoticon-0133-wait.gif'/> :m

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDn0encV7JrqPRT0EDY5JaAgRCeYjLg6Lrr-fw_LRbIlOKvup0P4xJnLC8IYhCZVYZ_Sfk_ANPHKxxfK4yd1tX_brQ7hZ7CsYec3PrP46_RQgZjY7jfbLMQI5mPpYJkFZ1B8sgICkGpOQ/s800/emoticon-0137-clapping.gif'/> :n

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQYPnAJ6HUHbMmCbThESfq04q68Sx_bZ9D8gBlP1NTCotpu3dwyxY0NGpiJ461K0YSWKWhJBy5tB9onZblv2MfC0tryh7ZlHYHQSys2qtU6Xltgf-ohZX3BUY6Za7iXAmixALcqg-FHeU/s800/emoticon-0136-giggle.gif'/> :o

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ0GVJzV0ncXR1zWtzjKvAYZw0JSJFc_ghzqNhsQWns2LBBSLCdT4aos5jhyphenhyphenSF0QYSA-mRP3gCDXyziDXAs0KkX_AWNo4mSYzAdDgKeByib5wa65IDXpPw61-5fG12RkSsG3XzjPm9Dsw/s800/emoticon-0141-whew.gif'/> :p

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXwtmCvsoENdnE4Wvjo-tgRIwyBlAiwdDyA8iS_4Vmfkr3Ww-XUMPwQmbSiGdTAhZrXxhXjV3JXFdNTIuZNQZLn0KWU6h1kZuaFksHRDyyfbwPo911Pxm5QMg4Ag1eaYUO8Rd258I-WaU/s800/emoticon-0148-yes.gif'/> :q

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiH3mP3EXCx07EUslYv5x_yE4N0QxN4Wg2mhAhhE0ZiMKCy_AaFw22YWlwfldSOV7gOvqAnSQ__dYntDzakSmCDd1S59P8HcikjYxE7Ooh1YrTanKglULYRU0dfAmT2dfxGBGSuL61aafU/s800/emoticon-0149-no.gif'/> :r

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0YEtREwSBpl4Fkd18MTFsmURAHR3B9HMlHCzKwqMKr86j8voger-_n-WrT8q9b7mDtgvZyDxa8tY-GBzC5-PSCHAtEhquJC_mgeMBt_gO-XdpbMPWl1I2XV9MFOCp_j2wigcIb4yHKjA/s800/emoticon-0178-rock.gif'/> :s

&#160;
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCU8nojwL1hOby6T9MtehHS-EYVT94Go_aXRNiD1MaFDXl4liqdXYF9o8xm3tHFHmEp2Oi0BYODd2nX3mkDppjN6VmN7WO4Z-jFscWTYFS3My78RTwoSEGdqCyRS8Ok_zRIsf9xFOb6ZY/s800/emoticon-0155-flower.gif'/> :t
</div>

[5] Guardamos los cambios y ya podemos comprobar que sobre el formulario de comentarios estarán los emoticonos y sus símbolos correspondientes.

Esto solo es una imagen de ejemplo, los emoticonos se muestran realmente en movimiento


Una vez incluida la imagen con los emoticonos, vamos a ver como incluir en la plantilla el código (script) que hará posible el usar los emoticonos en los comentarios.

[5] Localizamos la etiqueta </body> en nuestra plantilla (casi al final del código de la misma) y, justo sobre ella, pegamos el script:

<script type='text/javascript'>

//<![CDATA[
a = document.getElementById('comments');
if(a) {
b = a.getElementsByTagName("DD");
for(i=0; i < b.length; i++) {
if (b.item(i).getAttribute('CLASS') == 'Author-comment-body' , 'comment-body') {
_str = b.item(i).innerHTML.replace(/:j/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzW6MkHMjxhYauQ8JmcY7icmwmSAMJOSZqWXKDMLAX_qZlIVlI1UuD8VwkTLZtRMfYEV_cJoftaACFg6SjSG33jaPPqRuWQXc6O6_c7c9xyQAgdc5SINiSgmYp-7dZeCW1nTAVjMMTip4/s800/emoticon-0126-nerd.gif' alt='' class='smiley'/>");
_str = _str.replace(/:k/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg45mxlCBinlpiAVH6oH2nd7XKiZmIbMKluaUoXhoJl26JaQWvSYYJ_jBs8r622kqwa2le1U8NEmNIA2W6kH5fAJ_Q9GV4wrQu7zCF4L6Xnc4gfpMOMLN65FLdivWPRdzXdWP1Oazb3_fc/s800/emoticon-0103-cool.gif' alt='' class='smiley'/>");
_str = _str.replace(/:l/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM4bJDH00MtXYol-KL4NmIqcXbLhsG2JMqnyBwYjUBZd-HVFcDqNapJ0_n4BCwQVWXwmIWQfxjupv1ijJabTRQp2eL1BY9v0oH-YMWItiLJ3Av-5aCSlwZVR4UAWi_gSw1yPxPuOaGfxs/s800/emoticon-0130-devil.gif' alt='' class='smiley'/>");
_str = _str.replace(/:m/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCad9EVwRBc4N4NRWpPfmLmUhd4EW0ZPEVooFP5JsDf3VWHPsC_I-B8oLhwdNboDOBU8gtrIQLz1MHX0Ls9ePR8noFc5s2T38b89wIMZMFCSZ_VgT2-SD5GGcYg82jkC6C6ceumcIh584/s800/emoticon-0133-wait.gif' alt='' class='smiley'/>");
_str = _str.replace(/:n/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDn0encV7JrqPRT0EDY5JaAgRCeYjLg6Lrr-fw_LRbIlOKvup0P4xJnLC8IYhCZVYZ_Sfk_ANPHKxxfK4yd1tX_brQ7hZ7CsYec3PrP46_RQgZjY7jfbLMQI5mPpYJkFZ1B8sgICkGpOQ/s800/emoticon-0137-clapping.gif' alt='' class='smiley'/>");
_str = _str.replace(/:o/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjQYPnAJ6HUHbMmCbThESfq04q68Sx_bZ9D8gBlP1NTCotpu3dwyxY0NGpiJ461K0YSWKWhJBy5tB9onZblv2MfC0tryh7ZlHYHQSys2qtU6Xltgf-ohZX3BUY6Za7iXAmixALcqg-FHeU/s800/emoticon-0136-giggle.gif' alt='' class='smiley'/>");
_str = _str.replace(/:p/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ0GVJzV0ncXR1zWtzjKvAYZw0JSJFc_ghzqNhsQWns2LBBSLCdT4aos5jhyphenhyphenSF0QYSA-mRP3gCDXyziDXAs0KkX_AWNo4mSYzAdDgKeByib5wa65IDXpPw61-5fG12RkSsG3XzjPm9Dsw/s800/emoticon-0141-whew.gif' alt='' class='smiley'/>");
_str = _str.replace(/:q/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXwtmCvsoENdnE4Wvjo-tgRIwyBlAiwdDyA8iS_4Vmfkr3Ww-XUMPwQmbSiGdTAhZrXxhXjV3JXFdNTIuZNQZLn0KWU6h1kZuaFksHRDyyfbwPo911Pxm5QMg4Ag1eaYUO8Rd258I-WaU/s800/emoticon-0148-yes.gif' alt='' class='smiley'/>");
_str = _str.replace(/:r/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiH3mP3EXCx07EUslYv5x_yE4N0QxN4Wg2mhAhhE0ZiMKCy_AaFw22YWlwfldSOV7gOvqAnSQ__dYntDzakSmCDd1S59P8HcikjYxE7Ooh1YrTanKglULYRU0dfAmT2dfxGBGSuL61aafU/s800/emoticon-0149-no.gif' alt='' class='smiley'/>");
_str = _str.replace(/:t/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCU8nojwL1hOby6T9MtehHS-EYVT94Go_aXRNiD1MaFDXl4liqdXYF9o8xm3tHFHmEp2Oi0BYODd2nX3mkDppjN6VmN7WO4Z-jFscWTYFS3My78RTwoSEGdqCyRS8Ok_zRIsf9xFOb6ZY/s800/emoticon-0155-flower.gif' alt='' class='smiley'/>");
_str = _str.replace(/:s/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0YEtREwSBpl4Fkd18MTFsmURAHR3B9HMlHCzKwqMKr86j8voger-_n-WrT8q9b7mDtgvZyDxa8tY-GBzC5-PSCHAtEhquJC_mgeMBt_gO-XdpbMPWl1I2XV9MFOCp_j2wigcIb4yHKjA/s800/emoticon-0178-rock.gif' alt='' class='smiley'/>");

_str = _str.replace(/:a/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhHxB-RTpg6UOH2YSlSUTzhfb4-i6yws3SDip_SainNi2Ts3LPbrILLdPdFxEjTNPLnX68ZywNrEMTGyO6VcHracfSOonYdC-9935SovvyJrAMpTjjzGOa2SVT4f7T3V76WanSEqwbW1I/s800/emoticon-0100-smile.gif' alt='' class='smiley'/>");
_str = _str.replace(/:b/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqDhDIkLW4agn0hSv64H7El82wAGuvAecpnxcsXaaY_CyS9cK7FJAncoWwVtwxsHm6U0V7aliQMh9t2Isf9wqbCx8BZhPibxiCaoYR2qDUArLRBRO9qNHoqy7Rr1OrV8r0CK7ggGdrL_A/s800/emoticon-0101-sadsmile.gif' alt='' class='smiley'/>");
_str = _str.replace(/:c/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-vXcbTgPnQd1gdVhw6zFvz-Ria2crxmi5P8FUbcQEC1tgBgX1hiHQpKLKUI7B_hIFEqanXUrVygj0mbHh1qr3hNt_4MFqgwlKA3EZ_hIrn6Qdy1Tc_p9wHasYtTLKFLE5AcHy1akKQl0/s800/emoticon-0102-bigsmile.gif' alt='' class='smiley'/>");
_str = _str.replace(/:d/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj77I89BlItLkglcGftefrURWW0uSe6E4sVVsv-6ycxzlMah1ygTjYv6iQ4Kl_P8762SsczjNTAwe_J9OJloP9ZXoKdPXGVz6ri1FWXo-5363TAFcq0_PzcMhrpBjvNKgHiofIV35CbMOk/s800/emoticon-0105-wink.gif' alt='' class='smiley'/>");
_str = _str.replace(/:e/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaLqYLF8A8ZLoPOvW4z29ASMzq3bdFDivLoRz9CW2wcHeny6Q10NYhq45HUTC2lZlIKnGbJNk1j77ujifMx3o1EHMXLPsbNH3cTrqjIwOA5iSHtl88BXCiYKKqWyXQmBejkoKpow6KuRE/s800/emoticon-0104-surprised.gif' alt='' class='smiley'/>");
_str = _str.replace(/:f/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh88rohdY7e9FlDEIcnUGBqC6OzqLj4KIAOG8qJ3s1mJ-EcP-Hf2enSWpNMzPObNDEWJCGonaQ4q8VQjM6pJKt907MECarcn12Eyw1sTD58g9jjg7HTdhPFWnlo2QZAJMcWdqQ1DLgCQ5Q/s800/emoticon-0106-crying.gif' alt='' class='smiley'/>");
_str = _str.replace(/:g/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8wn2Dx6yY8YQFlTyJH6lqP5GEsDzCHBaw2l_yLUlxTJLfjPUuSewrvXvKjCpHC1022sfpiLtBaR_uHrlJbmKabJTThJ8SHEGkH8YuS-5IFw1mjM9URfrEz4fA5xf-_U5D9oh1ZVi8yLo/s800/emoticon-0109-kiss.gif' alt='' class='smiley'/>");
_str = _str.replace(/:h/gi, "<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikYDT2G645FwlJN-kQbOBRQMHZN7NXBnDH0omrfrfy5ri9LPvTgSvccS7aeNQ1loC6CvdUFoF2kM26OUskm0NItH8AVRjE3fOdR4XdYHIkGegA4oyLXZ4tDtVpbl43x11BmLS0aJi6tfY/s800/emoticon-0111-blush.gif' alt='' class='smiley'/>");
_str = _str.replace(/:i/ig,"<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicbgAsPkbIKimLboplLDl0wutdY4G7oKNBjazrwp0MtJ4N8M5Ct_XLIGFrOyd7FlY8chWA1Ec6bebLYTP5K5B-5M27pSO-TP8GxpGNh9uInqKZC9eU5EDtpoi2L19Q0fZmXrkggaXixvw/s800/emoticon-0110-tongueout.gif' alt='' class='smiley'/>")
b.item(i).innerHTML = _str;
}
}
}

//]]>

</script>

[6] Guardamos cambios.

Nota:
Para cambiar el diseño del rectángulo (div) donde van incluidos los emoticonos sobre el formulario, lo haremos en la primera línea del código:

<div style=' width: 370px; text-align: left; border: 2px solid #0084ce; background: #FEF9EA; padding: 10px; color:#0084ce; font-weight:bold;'>

width: 370px; Cambiamos el ancho del recuadro.

text-align: left; Alineación, en este caso a la izquierda.

border: 2px solid #0084ce; Grosor, aspecto y color del borde.

background: #FEF9EA; Color de fondo del rectángulo-contenedor.

padding: 10px; Distancia de los emoticonos (contenido) al borde.

color:#0084ce; Color del texto (los símbolos).

font-weight:bold; Fuente en negrita.

Cómo eliminar automáticamente los archivos temporales de Windows 7

aaa



bbb

ccc

Colocación dinámica


ecos del rocio



Instalar Windows XP desde cero



Propiedades de CSS (Hojas de Estilo en Cascada)


 

Copyright © 2013. paseando-prueva - All Rights Reserved template modificado por: mikydao