As mmm didn’t post an answer but just wrote a comment, here is the answer:
As the documentation for wp_ajax states in its notes, the hook only fires for logged in users.
If you want to use an ajax call on the frontend for users that are not logged in, you have to use the wp_ajax_nopriv hook.
So instead of
add_action( 'wp_ajax_save_like', 'lr_save_like_request' );
you have to write
add_action( 'wp_ajax_nopriv_save_like', 'lr_save_like_request' );
Thats all, the functionality of the two hooks is exactly the same, the only difference is that one fires only for logged in users and the other one for everybody.
Related Posts:
- Stop admin-ajax?
- How can I get logged in user’s session data from admin-ajax?
- Plugin: AJAX query external API to sync to tables
- WordPress is creating nonce as a logged in user but verifying it incorrectly
- admin-ajax.php returns 0 even when the post status code is 200 OK
- Can I use application/json content type in WordPress
- AJAX call not initializing for non-admins in WordPress
- PHP “php://input” vs $_POST
- Google Maps API throws “Uncaught ReferenceError: google is not defined” only when using AJAX
- Access-Control-Allow-Origin error sending a jQuery Post to Google API’s
- Access-Control-Allow-Origin error sending a jQuery Post to Google API’s
- How to solve the error “SCRIPT7002: XMLHttpRequest: Network Error 0x80070005, Access is denied.” in IE
- Show spinner GIF during an $http request in AngularJS?
- Refresh HTML Page in Browser Automatically on Timer – Every 15 Min
- JavaScript implementation of Gzip
- jQuery: Performing synchronous AJAX requests
- ASP.NET MVC controller actions that return JSON or partial html
- jQuery’s .on() method combined with the submit event
- Ajax takes 10x as long as it should/could
- Admin Ajax is returning 0
- How to check if I am in admin-ajax.php?
- Best way to end WordPress ajax request and why?
- How to load wp_editor() through AJAX/jQuery
- How does admin-ajax.php work?
- How to cache json with wp-super cache
- Load minimum WordPress environment
- Why use wp_send_json() over echo json_encode()?
- Why use admin-ajax.php and how does it work?
- How to get a unique nonce for each Ajax request?
- Open a Thickbox with content trough AJAX
- Initialize TinyMCE editor / visual editor after AJAX insert
- Why not register shortcodes if is_admin dashboard?
- WordPress AJAX with Axios
- Why is die() used at the end of function that handles an Ajax request?
- Why might a plugin’s ‘do_shortcode’ not work in an AJAX request?
- Making my AJAX powered WordPress Crawlable
- Is there a JavaScript API? How to access public and private data in JS?
- Get Previous & Next posts by Post ID
- is_admin() returns true when using admin-ajax.php from front end script
- failed to load wp-admin/admin-ajax.php
- How to save dismissable notice state in WP 4.2?
- Using Backbone with the WordPress AJAX API
- Using Ajax with a Class file
- Ajax in a settings page (update_option is undefined)
- How to pass data parameter to ajax action function handler
- WordPress Ajax Data Security
- Allowing admin-ajax.php to receive “application/json” instead of “x-www-form-urlencoded”
- Displaying PHP Errors from admin-ajax.php
- wp_set_auth_cookie() doesn’t work in Ajax call
- gettext does not translate when called in ajax
- Execute one AJAX request after another AJAX request finished
- Custom column for changing post status via ajax
- WP-AJAX vs WP REST API: What to use for requests to the website from outside?
- Ajax and autocomplete
- How can I make an Ajax login form work with FORCE_SSL_ADMIN enabled?
- WP List Table custom quick edit box – post meta data missing and columns change on submit
- How to add to cart via AJAX Woocommerce [closed]
- Nonces and Cache
- SSL breaks customizer: page isn’t returned from ajax
- Why is a 500 error generated by admin-ajax.php not going into the Apache error log?
- Are ‘wp_ajax’ and ‘wp_ajax_nopriv’ exclusive to authenticated and non-authenticated users?
- How to HTML5 FormData Ajax
- admin-ajax.php vs Custom Page Template for Ajax Requests
- How to override WP_DEBUG for Ajax responses?
- redirect out of wp-admin, without losing admin-ajax.php
- Call to undefined function add_action()
- Is it safe to assume that a nonce may be validated more than once?
- Including WordPress in RESTful API
- Multiple ajax nonce requests
- Get posts with ajax
- admin-ajax.php doesn’t work when using POST data and Axios
- How to call a PHP function with Ajax when the user clicks a button
- REST API endpoint for elasticpress autosuggest
- Ajax for non-logged-in users
- Contact Form 7 Custom Post Action
- Custom Form with Ajax
- How to process ajax requests correctly using ajax plugins
- ajax – why multiple calls to wp_create_nonce() return same value?
- Update user meta using with ajax
- Registering AJAX callback function that is part of a class without instantiating the class in function.php
- WordPress function that makes HTML safe to be sent via AJAX request
- How do I hook an Ajax request into a PHP callback?
- admin-ajax.php returns 0. How do I debug it and fix it?
- Ajax requests without JQuery
- Admin Notification after save_post, when ajax saving in gutenberg
- How to properly use wp.ajax.post?
- Load tinyMCE / wp_editor() via AJAX [duplicate]
- How to tie built in AJAX to an add_action?
- Using Nonces for AJAX that only retrieves data
- WordPress AJAX Login Screen
- AJAX vs Fragment Caching for W3 Total Cache [closed]
- Saving (Updating) Post / Page Edits With AJAX
- Prevent reload confirmation after AJAX save
- Is there any way of of making an admin-ajax request without the use of die()?
- How to verify nonce from Bulk/Quick Edit in save_post?
- Using ajax on categories and wordpress loops
- Custom PHP endpoint for a plugin’s AJAX call
- Detecting post type within init action
- Ajax request returning full page code
- How can I send data to admin-ajax via JS Fetch?