{"id":54894,"date":"2017-03-08T21:30:35","date_gmt":"2017-03-08T21:30:35","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/ajax-load-more-rest-api\/"},"modified":"2025-06-05T19:03:40","modified_gmt":"2025-06-05T19:03:40","slug":"ajax-load-more-rest-api","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/ajax-load-more-rest-api\/","author":7277085,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.2.6","stable_tag":"1.2.6","tested":"6.8.5","requires":"4.0","requires_php":"","requires_plugins":null,"header_name":"Ajax Load More for REST API","header_author":"Darren Cooney","header_description":"","assets_banners_color":"898f96","last_updated":"2025-06-05 19:03:40","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/connekthq.com\/donate\/","header_plugin_uri":"https:\/\/connekthq.com\/plugins\/ajax-load-more\/extensions\/rest-api\/","header_author_uri":"https:\/\/connekthq.com","rating":0,"author_block_rating":0,"active_installs":90,"downloads":8344,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.2.2":{"tag":"1.2.2","author":"dcooney","date":"2022-12-30 19:56:36"},"1.2.3":{"tag":"1.2.3","author":"dcooney","date":"2023-02-16 19:39:26"},"1.2.4":{"tag":"1.2.4","author":"dcooney","date":"2024-12-05 13:40:51"},"1.2.5":{"tag":"1.2.5","author":"dcooney","date":"2025-06-05 18:52:53"},"1.2.6":{"tag":"1.2.6","author":"dcooney","date":"2025-06-05 19:03:40"},"2.0":{"tag":"2.0","author":"dcooney","date":"2021-01-20 21:44:17"}},"upgrade_notice":{"":"<ul>\n<li>None<\/li>\n<\/ul>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":0},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":2848164,"resolution":"128x128","location":"assets","locale":""}},"assets_banners":{"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":2848164,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.2","1.2.3","1.2.4","1.2.5","1.2.6","2.0"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[57639,129131,5908,4884,23853],"plugin_category":[59],"plugin_contributors":[139331,78879],"plugin_business_model":[],"class_list":["post-54894","plugin","type-plugin","status-publish","hentry","plugin_tags-ajax-load-more","plugin_tags-endpoints","plugin_tags-infinite-scroll","plugin_tags-lazy-load","plugin_tags-rest-api","plugin_category-utilities-and-tools","plugin_contributors-connekthq","plugin_contributors-dcooney","plugin_committers-dcooney","plugin_committers-edanzer"],"banners":{"banner":"https:\/\/ps.w.org\/ajax-load-more-rest-api\/assets\/banner-772x250.jpg?rev=2848164","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/ajax-load-more-rest-api\/assets\/icon-128x128.png?rev=2848164","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>The REST API extension will enable compatibility between Ajax Load More and the WP REST API plugin.<\/p>\n\n<p>Easily access your website data (as JSON) through an HTTP REST API and display the results using the beauty of infinite scrolling with Ajax Load More.<\/p>\n\n<p>https:\/\/connekthq.com\/plugins\/ajax-load-more\/extensions\/rest-api\/<\/p>\n\n<h4>How It Works<\/h4>\n\n<p>The REST API add-on works by routing the standard Ajax Load More admin-ajax.php requests through to API endpoints for data retrieval. The data is returned as JSON, then parsed and displayed using Underscore.js styled templates on the front-end of your website.<\/p>\n\n<p>Using a simple GET request, a JavaScript Repeater Template and a custom endpoint (\/wp-json\/ajaxloadmore\/posts) developed specifically for Ajax Load More, users are able to access website data and infinite scroll the results using the WP REST API.<\/p>\n\n<p><strong><a href=\"https:\/\/connekthq.com\/plugins\/ajax-load-more\/examples\/rest-api-example\/\">View Example<\/a><\/strong><\/p>\n\n<!--section=installation-->\n<h4>Uploading in WordPress Dashboard<\/h4>\n\n<ol>\n<li>Navigate to the 'Add New' in the plugins dashboard<\/li>\n<li>Navigate to the 'Upload' area<\/li>\n<li>Select <code>ajax-load-more-rest-api.zip<\/code> from your computer<\/li>\n<li>Click 'Install Now'<\/li>\n<li>Activate the plugin in the Plugin dashboard<\/li>\n<\/ol>\n\n<h4>Using FTP<\/h4>\n\n<ol>\n<li>Download <code>ajax-load-more-rest-api.zip<\/code>.<\/li>\n<li>Extract the <code>ajax-load-more-rest-api<\/code> directory to your computer.<\/li>\n<li>Upload the <code>ajax-load-more-rest-api<\/code> directory to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Ensure Ajax Load More is installed prior to activating the plugin.<\/li>\n<li>Activate the plugin in the WP plugin dashboard.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='what%20is%20a%20namespace%20in%20an%20api%20endpoint%3F'><h3>What is a Namespace in an API endpoint?<\/h3><\/dt>\n<dd><p>Namespaces are the first part of the URL for the endpoint. Namespaces allows for two plugins to add a route of the same name, with different functionality.<\/p>\n\n<p>Need more info? Read the official documentation on Namespacing.\nhttp:\/\/v2.wp-api.org\/extending\/adding\/#namespacing<\/p><\/dd>\n<dt id='i%20want%20to%20create%20some%20custom%20api%20endpoints%2C%20where%20should%20i%20save%20them%3F'><h3>I want to create some custom API endpoints, where should I save them?<\/h3><\/dt>\n<dd><p>You should add your custom endpoints to the functions.php file in your current theme directory.<\/p><\/dd>\n<dt id='can%20i%20use%20a%20regular%20php%20based%20repeater%20template%20with%20this%20add-on%3F'><h3>Can I use a regular PHP based Repeater Template with this add-on?<\/h3><\/dt>\n<dd><p>No, all Repeater Templates that are used with the REST API add-on must be coded as a JavaScript template.<\/p><\/dd>\n<dt id='are%20all%20ajax%20load%20more%20shortcode%20parameters%20available%20with%20the%20rest%20api%20add-on%3F'><h3>Are all Ajax Load More shortcode parameters available with the REST API add-on?<\/h3><\/dt>\n<dd><p>Yes! As long as you are using the default \/wp-json\/ajaxloadmore\/posts endpoint all values passed via shortcode will be parsed in your API call.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.6 - June 5, 2025<\/h4>\n\n<ul>\n<li>NEW: Adding Ajax Load More as a required plugin.<\/li>\n<li>UPDATE: Code cleanup, readme and WP tested version.<\/li>\n<\/ul>\n\n<h4>1.2.4 - November 11, 2024<\/h4>\n\n<ul>\n<li>UPDATE: Readme, contributors, WordPress tested version<\/li>\n<\/ul>\n\n<h4>1.2.3 - February 23, 2023<\/h4>\n\n<ul>\n<li>FIX: Fixed up PHP warnign messages found in debug log for default endpoint.<\/li>\n<\/ul>\n\n<h4>1.2.2 - December 30, 2022<\/h4>\n\n<ul>\n<li>FIX: Added fix for saving posts in editor when REST API shortcode in place.<\/li>\n<li>UPDATE: Updated custo endpoint to rely on core ALM query params.<\/li>\n<li>UPDATE: Code cleanup.<\/li>\n<\/ul>\n\n<h4>1.2.1 - January 20, 2021<\/h4>\n\n<ul>\n<li>UPDATE - Updated REST API endpoint to include <code>permissions_callback<\/code> which is now required to remove PHP notices\/warnings.<\/li>\n<\/ul>\n\n<h4>1.2 - March 14, 2017<\/h4>\n\n<ul>\n<li>NOTICE - Moved extension to .org repo.<\/li>\n<li>UPDATE - Removed REST API plugin Requirement if core WP 4.7 or greater is running.<\/li>\n<\/ul>\n\n<h4>1.1 - September 5, 2016<\/h4>\n\n<ul>\n<li>MILESTONE - Must update core Ajax Load More to 2.12.0 when updating this add-on.<\/li>\n<li>UPDATE - Updated endpoint + js function to hold new return data to match core ALM for posts and total posts<\/li>\n<\/ul>\n\n<p>= 1.0 - June 5, 2016=\n* Initial Release.<\/p>","raw_excerpt":"An Ajax Load More extension that adds compatibility for the WP REST API.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/54894","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=54894"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/dcooney"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=54894"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=54894"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=54894"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=54894"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=54894"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=54894"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}