WP Patreon Login, Sync, & Setup Wizard not working

Hi! For whatever reason, the setup wizard does not work for me. I get 401 errors. I managed to connect the site to Patreon manually by setting up an API v2 client.

I did an initial post import, and it was successful. However, when I put up a new Patreon post, it did not auto sync. I did another manual pull, and it added the new post, but oddly, it did not import the featured image.

Locked Patreon posts only unlock when I’m logged in as a site admin. They don’t unlock for users if they are already logged into Patreon, and the Patreon login form on the site does not work (401 errors again).

I assume this is due to connection issues. I tried reconnecting but got 401 errors again. It did manage to delete my client before giving me an error though. So I created a new client and connected it manually. Same problems. I tried deleting and creating new (API v2) clients several times, but nothing changed. Same 401 errors.

Any ideas?

Here’s my setup:
WP 5.8.2 with PHP 7.4.26
Patreon WordPress 1.8.0 with API v2
Patreon Button, Widgets and Plugin 2.1.4

Do you have mixed https:// and http:// urls at your site? Can your site be viewed through either protocol?

HTTP automatically forwards to HTTPS

If it helps to see the site, it’s

ryantlittle.com/blog

Now, login is different than the post sync and setup wizards. Which of them are not working?

Like I described in my post, all of them are not working.

Ah. At what point does the setup wizard fail?

(Sorry for the delay in responding, @codebard , I was a bit under the weather)

Setup Wizard says, “Patreon Wordpress would like to create an OAuth client for your campaign,” and I click “Allow.” The next page says, “Sorry - No authorization code received from Patreon.”

The Patreon plugin logs this error:

fetch_creator_info - API v2 Class - UUID 14be75d3-c956-4b16-8d55-51f5e5573a96 - Response code: 401 Response :{“errors”:[{“code”:1,“code_name”:“Unauthorized”,“detail”:“The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn’t understand how to supply the credentials required.”,“id”:“14be75d3-c956-4b16-8d55-51f5e5573a96”,“status”:“401”,“title”:“Unauthorized”}]}

Odd. Is there any security plugin at your site? Does your host have any security features like mod_security at your server?

Also do you have any plugins that modify oAuth? Or redirect plugins?

No security plugin, no mod_security. Pretty basic LEMP stack on a Digital Ocean droplet running nginx.

The only WP plugins I have installed are WordPress Patreon, the Patron button & widget, and Akismet.

On further thought, the only unusual thing about the site is some code in the nginx.conf to escape grav (my main CMS).

I was planning to eventually switch over completely to WP, but in the meantime WP is nested in the site as a separate blog. That’s probably the most likely source of trouble; I’ll try disabling it today and see if that fixes things. Maybe I can hurry up and just switch the whole site to WP too…

To start with, the rewrite rules that the plugin and WP in general needs, have to be translated exactly to Nginx. You can start by checking them out.

Nginx used to provide advantages in terms of performance, but with event mpm and using PHP as php-fpm, Apache is as performant for most uses. Switching to full LAMP stack on such a setup could make your life much easier since rewrite rules occupy a large part in WP plugin ecoysystem.