Ordenar entradas de blog por Me Gusta en Wordpress

  • Autor Autor Fox
  • Fecha de inicio Fecha de inicio
F

Fox

Hola Betas,

Tenía en mente ordenar los post de un blog en wordpress mediante la cantidad de MeGusta de cada post en Wordpress, navegando en Google encontré un Plugin interesante.

Enlace eliminado

El tutorial en español está aquí.

Enlace eliminado

Ya lo tengo instalado y lo que no entiendo es el modo de uso.

Uso:

Una vez instalado el plugin, en cada entrada que creas, se añadirá un campo personalizado “facebook_likes”.

Cuando llamas a la función <?php the_content(); ?> el plugin comprueba el número de “me gusta” del post y actualiza este campo.

Si no utilizas la función <?php the_content(); ?> inserta en tu LOOP la siguiente función: <?php update_facebook_likes(); ?>

Para listar los posts según el numero de “me gusta” de Facebook, tu post query (ver la referencia oficial) tiene que ser parecida a esta: <?php query_posts(‘meta_key=facebook_likes&orderby=meta_value’); ?>

No entendí bien lo que está en negrita 😕

Lo que en sí quiero hacer es crear una página aparte (ejemplo: myblog.com/top10.php) el cual me muestra los 10 post que tengan mas número de MeGusta de Wordpress.

¿Alguién sabe como podría hacerlo?

Gracias.
 
En tu plantilla normalmente tienes algo así:

Insertar CODE, HTML o PHP:
<?php query_posts(‘orderby=meta_ value’); ?>

Dejalo asi:

Insertar CODE, HTML o PHP:
<?php query_posts(‘meta_key=facebook_likes&orderby=meta_ value’); ?>

Es el query que usa para mostrar los post, solo agregale la metakey de facebook_likes y lo ordenará de acuerdo al número de likes.
 
Hola, gracias por responder.

El problema es que revisé todos los archivos del theme y no encuentro el query_post, solo encontré el <?php the_content(); ?>, existe algúna manera de agregar el query_posts manualmente?


Saludos
 
Hola, perdón por demorar en responder.

El código del index.php que tengo es el siguiente:

PHP:
<?php get_header(); ?>
<?php get_sidebar(); ?>
<div id="postcont">

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
                 <div class="titlex">
<h2><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2>

<?php include (TEMPLATEPATH . '/inc/meta.php' ); ?><div class="coments_globe"><?php comments_popup_link('0', '1', '%'); ?></div>
                 </div><!--titlex-->   




            <div class="entry">
                <?php the_content(); ?>
            </div>             



            <div class="postmetadata">
             <div class="topdata"></div>
              <div class="metacontent">
                <div class="cattag">
                 <div class="cattop">
                    Publicado en <?php the_category(', ') ?>
                    </div>            <div class="catbottom">
                   Tags <?php the_tags(','); ?>
                  </div>
                  <div class="comdata">
                  <div class="coments_globe2"><?php comments_popup_link('0', '1', '%'); ?></div>
                  </div>
                  <div class="fullentry"><a href="<?php the_permalink() ?>"><img src="<?php bloginfo('template_directory'); ?>/images/full_entry.jpg" alt="Leer Entrada" /></a></div>
                  </div>
                 </div>
                <div class="bottomdata"></div>
            </div>
        </div>
    <?php endwhile; ?>
    <?php include (TEMPLATEPATH . '/inc/nav.php' ); ?>
    <?php else : ?>
        <h2>No se encontró</h2>
    <?php endif; ?></div>
<?php get_footer(); ?>

Me he dado cuenta que al instalar el plugin se agrega un campo personalizado, pero cuando quiero mostrar los Post según el número de "Me gusta de Facebook" se generá una infinidad de post todos repetidos,

y no sé donde podría agregar el código que el plugin indica

Gracias, espero tu respuesta 🙂
 
Si no me equivoco, debería ir antes del
PHP:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

O a lo sumo en alguna parte de esa misma linea, porque si lo haces luego, no estarás ordenando nada ya que el código ya estará mostrándote el artículo "al que entro", debes ordenar los post antes de que el while comience a entrar en ellos calculo según entiendo, proba ponerlo antes de esa linea que te digo

Se feliz!
 
Si no me equivoco, debería ir antes del
PHP:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

O a lo sumo en alguna parte de esa misma linea, porque si lo haces luego, no estarás ordenando nada ya que el código ya estará mostrándote el artículo "al que entro", debes ordenar los post antes de que el while comience a entrar en ellos calculo según entiendo, proba ponerlo antes de esa linea que te digo

Se feliz!

Verdad, Ya funciona 😀

Gracias a todos por responder 😛7:
 
Atrás
Arriba