Cita:
Iniciado por chichote Postea el link de tu sitio, quizás tengas redundancia en tu código, no sabría darte una solución sin saber cual es puntualmente el problema.
Como tips te puedo decir que compares las peticiones propias de wordpress con las creadas por ti. Abre el wp-admin (navega entre sus items), abre tu consola y analiza los tiempos de respuesta de las peticiones ajax, si vez que son muy lentas, quiere decir que los tiempos de respuesta de tu servidor son lentos y la solución es que contrates una cuenta en una empresa que tenga mejores prestaciones. Si vez que anda rápido querrá decir que el problema lo tienes en tu código.
Saludos.
Gracias por contestar tan rápido!
Lo único que hago en mis llamadas ajax es recuperar un post y una serie de fotografías que necesito incluir para un slider y me tarda de 1,9s a 2,5s y no entiendo por qué tanta diferencia respecto a llamadas ajax que hace worpress en su admin.
El código de ajax donde recupero los post es :
Código PHP:
Ver originaladd_action('wp_ajax_buscar_posts', 'buscar_posts_callback');
add_action('wp_ajax_nopriv_buscar_posts', 'buscar_posts_callback');
function buscar_posts_callback(){
if ((!isset($_POST["miPost"])) || (!isset($_POST["slug"]))){
echo "<p>Lo sentimos, ocurrió un error recuperando los datos.</p>";
die();
}
//Buscamos los datos del post
$querySlider = array('category_name'=>'slider-'.$_POST["slug"],'order'=>"ASC");
$objetoSlider = new WP_Query($querySlider);
if ($objetoSlider->have_posts()){
?>
<div class="sliderSeccion-conoce">
<div class="slider-wrapper theme-default">
<div id="slider-conoce" class="nivoSlider">
<?php
while($objetoSlider->have_posts()){
$objetoSlider->the_post();
if (has_post_thumbnail()){
the_post_thumbnail();
}
}
?>
</div>
</div>
</div>
<?php
wp_reset_postdata();
}
?>
<?php
$queryDatos = array("cat"=>$_POST["miPost"]); $objetoDatos = new WP_Query($queryDatos);
if ($objetoDatos->have_posts()){
?>
<div class="contenido-conoce">
<?php
while($objetoDatos->have_posts()){
$objetoDatos->the_post();
?>
<div class="tituloContenido-conoce"><p><?php the_title();?></p></div>
<div class="textoContenido-conoce"><?php the_content();?></div>
<?php
}
if ($_POST["slug"]=="conoce-origenes"){
?>
<a class="enlaceContenido-conoce" href="algunsition" target="_blank">Más información.</a>
<?php
}
?>
</div>
<?php
wp_reset_postdata();
}
?>
<script type="text/javascript">
$(document).ready(function(){
$("#slider-conoce").nivoSlider({
directionNav:true,
effect:'fade',
pauseTime: 4000,
animSpeed:1000,
slices:1
});
$("#contenido-conoceDerecha").show("fade");
});
</script>
<?php
No es un código excesivamente complejo ni son 200 líneas de funcion...no sé donde puede estar tanta demora en la llamada ajax. :S