Customer Review (CR) plugin collects reviews via aggregated review forms. Aggregated review forms are hosted on AWS (Amazon Web Services) infrastructure. Customer reviews are transferred from an aggregated review form to a WooCommerce website when a customer submits the review form. The reviews are transmitted via WP REST API.
WP REST API provides API endpoints for WordPress that allow developers to interact with sites remotely by sending and receiving special calls. WP REST API is a native feature of WordPress (not WooCommerce). It is built into WordPress and enabled by default. So, normally you don't need to do anything to enable it. However, there are cases when WP REST API might be disabled or blocked. This would prevent our plugin from working properly. Let's discuss what could be blocking WP REST API and what to do in these situations.
0. A Quick Test
Before you read further, we recommend you to perform a quick test on your site to verify that WP REST API actually doesn't work. There are situations when the indicator on the Diagnostics page might show a wrong status.
To do the test, create a dummy order in your shop for yourself and mark it completed. Then, send a manual review reminder for this order (from Orders page in WooCommerce) and try to leave a review. If you are able to successfully submit the review form, check if the review has appeared on your WooCommerce site.
If you can see the review, it means that everything works good and you can stop reading here. If you received an error message after submitting the review form, then continue reading further.
1. Security Plugins
First, you should check if there are any security related plugins (for example, "All In One WP Security & Firewall") installed on your site. These plugins could be blocking WP REST API. Usually, it is possible to adjust blocking of REST API in settings of these plugins.
There are also plugins designed specifically for blocking REST API (for example, "Disable REST API"). Usually, they enable you to choose which WP REST API points to whitelist and which to block. This is very useful because you can allow the endpoint of our plugin ("/ivole/v1/review") to make it work and block all other standard endpoints.
2. Custom Code in functions.php
Each WordPress theme comes with functions.php file that can be used to add custom code. You should check if this file contains any PHP code for blocking WP REST API.
3. Entire Site Protected with a Password
If your entire site is locked from the internet with a password, this would block WP REST API as well. Some people lock their staging sites or sites which are still being developed with passwords. You would need to allow access to the WP REST API endpoint of our plugin with a password.
4. Sites Locked with "Coming Soon" or Maintenance Modes
If your entire site is locked with "Coming Soon" page or with a maintenance mode, then WP REST API won't work. You would need to make your website available to make WP REST API endpoint of our plugin work.
5. Caching Plugins
Sometimes caching plugins could cause issues with transmission of reviews. Please try to temporarily deactivate all caching plugins and check submission of a review form will work. If you confirmed that the issue is caused by a caching plugin, please contact us. We will check if it is possible to make our plugin compatible with your caching plugin.
6. Site Hosting
Some hosting providers might be blocking WP REST API. If you think that this could be the case, try to reach out to the support team of your hosting provider.
We hope that these tips will be helpful and you will be able to resolve the problem with WP REST API. If you still have any questions, please don't hesitate to post them on our support forum or submit a ticket for our support team (available for customers with premium licenses).