401 Error when trying to make a REST API call to site
adding this rule to .htaccess solved my problem: – RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
adding this rule to .htaccess solved my problem: – RewriteRule .* – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
You didn’t include the code for your send_email() function, but I looked at the original source (revision 1) of your question, and it seems to me that your send_email() function is good, but if this answer doesn’t help solve the issue, then add the function code into your question body. So I don’t know why … Read more
To retrieve a page by slug, just use /wp-json/wp/v2/pages/?slug=your-page-name-here, with “your-page-name-here” obviously being the slug of your page.
To attach anything onto the results, you need to loop through each item and set the property on the object before you return it. You can do a for loop or an array_map() which essentially does a loop and sets the value for each item in the return array to what is returned by the … Read more
What if in your register_rest_route() call you can pass it the permission_callback option: ‘permission_callback’ => function () { return current_user_can(‘customer’); // OR return current_user_can(‘shop_manager’); } That way you are sure that you are dealing with a logged in Woocommerce user?? These are the two roles that Woocommerce is adding to your site. https://docs.woocommerce.com/document/roles-capabilities/ I know … Read more
So, after some more testing, I figured out why it was not saving like it should. I was including the meta during init when it was in the admin panel, but not for anywhere else. Thus when it was being saved (assuming that it was saving as not admin) the meta field was not there … Read more
Just found the solution in another question of Stack Overflow. Using the function register_meta(): register_meta(‘user’, ‘icq’, array( “type” => “string”, “show_in_rest” => true )); Now I can make a request using: { “username” : “johndoe”, “email”: “[email protected]”, “password”: “qwerty”, “meta”: { “icq”: “11223344” } } And the response are: { “id”: 49, “username”: “johndoe”, “name”: … Read more
I found that there is no way to change the data which is coming to editor when it is loaded. But it’s possible to replace the data after that. JS: script.js wp.domReady(function () { const newData = window.myNewBlocksData; if (newData) { wp.data.dispatch(‘core/block-editor’).resetBlocks(wp.blocks.parse(newData)); console.log(‘replaced’); } }) PHP: <?php class MyBlocksManipulation { public $prefix = ‘my’; public … Read more
You should not GET on a POST only rest callback. The code below creates a POST call only register_rest_route(‘miningRigs/v1’, ‘createRig’, array( ‘methods’ => WP_REST_SERVER::CREATABLE, ‘callback’ => ‘createMiningRig’, )); Check http://localhost/wordpress-site/wp-json/miningRigs/v1 which shows you can only POST on createRig I just copy/paste you code + added the https://pressupinc.com/blog/2013/07/minimum-viable-wordpress-plugin/ then enabled the plugin on 4.9.5 and it … Read more
To answer your broader question about resources – while there are many articles out there, I would always recommend checking out the official WordPress API Handbook first. You first have to decide which JavaScript library you want to use to make HTTP requests to access the REST API. Axios is one example. To set the … Read more