web-dev-qa-db-fra.com

Ajax charger plus de bouton dans le widget Articles récents

Je crée un widget Messages récents et j'essaie de créer plus de boutons pour qu'il puisse obtenir plus de liens Messages récents par ajax. Existe-t-il un tutoriel pour savoir comment le créer?

1
Mohamed Badawy

Regardez la documentation de WordPress sur AJAX

Dans votre thème ou plugin, vous voudrez avoir un code comme:

add_action('wp_ajax_my_load_recent', 'my_load_recent_posts');
add_action('wp_ajax_nopriv_my_load_recent', 'my_load_recent_posts');
function my_load_recent_posts() {
    $args = array(
        /* Arguments go here, i.e. how many posts to get */
    );
    query_posts($args); /* [1] */

    /* Header wrap output */
    if (have_posts()) : while (have_posts()) : the_post(); /* [2] */
        /* Output for each post */
    endwhile; else :
        /* Output for if there are no posts to get */
    endif;
    /* Footer wrap output */

    wp_reset_query();
}

[1] query_posts() documentation

[2] Documentation sur la boucle Wordpress

Ensuite, pour accéder à cette fonction, vous voudrez sûrement l'avoir sur votre ordinateur, si vous utilisez jQuery:

$.ajax(ajax_url/* [3] */, {
    method: 'POST',
    data: {
       action: 'my_load_recent',
    },
    success: function(response) {
        /* handling of the output returned by PHP function */
    },
    error: function() {
        /* what to do if there's a server error, like 404
    }
});

[3] Voir la documentation de WordPress sur AJAX pour générer le ajax_url: "Comme cet article suggère, utilisez wp_localize_script () pour rendre l’URL disponible pour votre script et le générer à l’aide de cette expression: admin_url ('admin-ajax.php') "

1
George Yates