在WordPress中如何將PHP獲取的文章標題傳遞給JavaScript并作為請求參數使用?

在WordPress中如何將PHP獲取的文章標題傳遞給JavaScript并作為請求參數使用?

本文介紹如何在WordPress中將php獲取的文章標題傳遞給JavaScript,并將其用作ajax請求的參數。這在需要前端利用后端數據時非常實用。

WordPress后臺包含眾多文章,我們需要獲取這些文章標題,并將其作為參數請求外部接口。PHP的get_the_title()函數可以獲取文章標題,而jquery的$.ajax()函數則負責接口請求。關鍵在于如何將PHP變量傳遞給JavaScript。

WordPress的wp_localize_script()函數可以完美解決這個問題,它允許將PHP變量傳遞給JavaScript。步驟如下:

首先,使用PHP獲取所有文章標題。利用WP_Query類查詢所有文章,并用get_the_title()函數提取標題:

立即學習PHP免費學習筆記(深入)”;

$titles = array(); $args = array(     'post_type' => 'post',     'posts_per_page' => -1, ); $query = new WP_Query($args); if ($query->have_posts()) {     while ($query->have_posts()) {         $query->the_post();         $titles[] = get_the_title();     }     wp_reset_postdata(); }

接下來,使用wp_enqueue_script()加載JavaScript文件,并用wp_localize_script()將PHP變量傳遞給JavaScript:

wp_enqueue_script('my_script', get_template_directory_uri() . '/JS/my_script.js', array('jquery'), '1.0', true); wp_localize_script('my_script', 'my_script_vars', array(     'titles' => $titles, ));

這將把$titles數組作為my_script_vars.titles對象傳遞到my_script.js文件中。

最后,在my_script.js中,使用my_script_vars.titles訪問文章標題,并將其作為AJAX請求的參數:

jQuery(document).ready(function($) {     $.ajax({         type: 'GET',         url: 'your_api_endpoint',         data: {             titles: my_script_vars.titles         },         success: function(response) {             console.log(response);         }     }); });

通過以上步驟,成功地將PHP獲取的文章標題傳遞給JavaScript,并在前端用作AJAX請求的參數,實現了WordPress前后端數據交互。

? 版權聲明
THE END
喜歡就支持一下吧
點贊13 分享