ホームページ > バックエンド開発 > PHPチュートリアル > WordPress 投稿に「もっと読み込む」Ajax ボタンを実装するにはどうすればよいですか?

WordPress 投稿に「もっと読み込む」Ajax ボタンを実装するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-29 03:22:12
オリジナル
768 人が閲覧しました

How to Implement an

WordPress の「Load More Posts Ajax」ボタン

このチュートリアルでは、WordPress に「Load More」ボタンを実装して投稿を段階的に読み込む問題について説明します。アヤックス経由。この問題には、新しい投稿をオンデマンドで取得して表示するための jQuery、Ajax、WordPress 関数の統合が含まれます。

解決策:

index.php テンプレート ファイルに、ID「ajax-posts」のコンテナ要素を作成し、限られた数の投稿をクエリして表示するための PHP コードを含めます(例: 3)。 ID「more_posts」のボタンを追加して、追加の投稿の読み込みをトリガーします。

functions.php ファイルで、Ajax リクエストを処理する関数 (more_post_ajax()) を作成します。この関数は、ページごとのオフセットと投稿数をパラメーターとして受け取り、データベースにクエリを実行して次の投稿セットを取得します。

Ajax 呼び出し (スクリプト ファイルまたはインラインのいずれか) )、Ajax URL を設定し、ページごとのオフセットと投稿数をデータとして送信し、取得した投稿を「ajax-posts」コンテナーに追加してページをインクリメントすることで応答を処理します。 number.

コード例:

index.php

<div>
ログイン後にコピー

functions.php

function more_post_ajax() {
    // Get offset and number of posts per page
    $offset = $_POST['offset'];
    $ppp = $_POST['ppp'];

    // Query database to retrieve next set of posts

    // Return retrieved posts
    echo $posts;
    exit;
}
ログイン後にコピー

Ajax

// Set Ajax URL
var ajaxUrl = '<?php echo admin_url('admin-ajax.php') ?>';

// When "Load More" button is clicked
$('#more_posts').on('click', function() {
    // Disable button temporarily
    $(this).attr('disabled', true);

    // Send Ajax request with offset and number of posts per page
    $.post(ajaxUrl, {
        action: 'more_post_ajax',
        offset: (page * ppp) + 1,
        ppp: ppp
    })
    .success(function(posts) {
        // Append retrieved posts to container
        $('#ajax-posts').append(posts);
        // Increment page number
        page++;
        // Re-enable "Load More" button
        $('#more_posts').attr('disabled', false);
    });
});
ログイン後にコピー
に電話します

以上がWordPress 投稿に「もっと読み込む」Ajax ボタンを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート