Hace un tiempo consulte para ver si conocían algún plugin para poner un load more en comentarios, al estilo de Twitter o Facebook que van cargando más contenido en la misma página, y así poder paginar los comentarios.
Luego de algunas recomendaciones y meter mano, he logrado lo que necesitaba.
Peeeeero, y claro, siempre hay un pero... Con un pequeño inconveniente.
Todo funcionaba bien, hasta que cambié los enlaces por defecto de WP, por permalinks mas "lindos"
Les dejo el mismo código en 2 sitios, para que vean, como en uno funciona y en el otro no, a ver si me pueden ayudar a saber cuál es el problema.
Links por defecto (Funciona)
http://test2.lovienlared.com.ar/?p=1
Permalinks personalizados (No Funciona)
http://test.lovienlared.com.ar/hola-mundo/
Básicamente lo que hice, en el archivo de comments del tema que estoy usando, sólo dejé el loop que lee los mensajes, la parte previa y posterior, las corrí al single.php
Y los códigos que toman parte son:
En el raíz del sitio:
fbmore.js
Código Javascript
:
Ver original$(function() {
$('.load_more').live("click",function() {
var msg_off = $(this).attr("off");
var last_msg_id = $(this).attr("id");
if(last_msg_id!='end'){
$.ajax({
type: "POST",
url: "http://test2.lovienlared.com.ar/fbmore.php",
data: "lmpost="+ last_msg_id + "&lmoff="+ msg_off,
beforeSend: function() {
$('a.load_more').append('<img src="http://test2.lovienlared.com.ar/facebook_style_loader.gif" />');
},
success: function(html){
$(".facebook_style").remove();
$("div#updates").append(html);
}
});
}
return false;
});
});
y el fbmore.php
Código PHP:
Ver original<?php require('wp-blog-header.php');
$lmpost=$_POST['lmpost']; } ?>
<?php query_posts($query_string . '&p='.$lmpost.''); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php endwhile; endif; ?>
<div class="clear"></div>
<?php comments_template(); ?>
<?php ?>
En comments.php está el enlace que envia la orden de leer más comentarios y envía el "id" numérico del post
Código PHP:
Ver original<?php if ($paged==1) { ?>
<div class="facebook_style" id="facebook_style"><a>No hay más comentarios</a></div>
<?php } elseif ($paged==0) { } else { ?>
<div class="facebook_style" id="facebook_style"><a off="<?php echo $paged-1; ?>" id="<?php echo $post->ID; ?>" href="#" class="load_more" >Mostrar más comentarios <img src="http://127.0.0.1/elgastronomo/arrow1.png" /></a></div>
<?php } ?>
Mis 2 sospechas más grandes son:
id="<?php echo $post->ID; ?> Que en lugar de pasarle el id numérico, quizás deba pasarle el slug
Y la que más creo que genera el problema
require('wp-blog-header.php');
Que quizás al llamarse desde
http://test.lovienlared.com.ar/hola-mundo/(lo busca aca)
cuando en realidad ese archivo está un directorio más abajo.
En fin, se que es mucho trabajo que me den una mano, pero ojalá quizas a simple vista vean cual es mi error, o quizas puedan montar esto ustedes mismo y probarlo, para ver como se arregla.
Desde ya muchas gracias. Cualquier duda me avisan, que como es algo que diseñé yo en parte, esta hecho con poco conocimiento, y si bien funciona (casi) al usar permalinks me encuentro con eso que no se como arreglar.