- WordPress.org
- WordPress.com
WordPress.org is the self-hosted version. You’ll authenticate using your site URL and application credentials rather than an OAuth redirect.
1
Open Integrations
Go to Settings > Integrations > Blog in Pressmaster and toggle the blog switcher on.
2
Select WordPress.org
Choose WordPress.org as your platform.
3
Get your application username
In your WordPress admin panel, click the dropdown next to your user icon and select Edit Profile. Copy your Username and paste it into the Application User Name field in Pressmaster.
4
Generate an application password
Still in your WordPress profile, find the Application Passwords section. Enter a name for the password (for example, “Pressmaster”) and click Add New Application Password. Copy the generated password and paste it into the Application Password field in Pressmaster.
5
Enter your site URL
Copy the full URL of your WordPress.org site and paste it into the Site URL field in Pressmaster.
6
Connect
Click Connect WordPress.org. Pressmaster verifies the credentials and confirms the connection.
7
Choose publish or draft
Select whether articles should be published immediately or saved as drafts for review. Click Save to apply your preference.
After connecting
When you click Publish Article in Pressmaster, the article is sent directly to your WordPress site and published according to your preference (publish immediately or save as draft). Scheduled posts publish automatically at the scheduled time. When publishing to WordPress.com, Pressmaster displays your site’s categories so you can select the right one for each article.Troubleshooting
”Invalid credentials” error (WordPress.org)
If you’ve completed the WordPress.org setup (application password and site URL) but the connection fails with an “Invalid credentials” message, the WordPress REST API is typically rejecting the request with:There’s no alternate authentication method for WordPress.org (self-hosted). If your site is actually hosted on WordPress.com, use the WordPress.com tab above instead, its OAuth connection doesn’t hit this error. If your blog runs on a different platform, see the Webflow, Wix, or Ghost integration guides.
.com and a .org (or similar) domain, confirm which one your WordPress site actually lives on, and that it’s the one you entered in the Site URL field. Entering the wrong domain will always produce this error.
Test the REST API directly
While logged out of WordPress, visit this URL in your browser (replace [your-domain] with your actual domain):
- A clean JSON response (even the same
rest_not_logged_inerror) means the REST API is reachable and the problem is authentication-specific. Skip to Fix: Authorization header not passed through below. - A blank page, a generic 403/406, or a page from your hosting provider (not JSON) means the request isn’t reaching WordPress at all. Start with Fix: .htaccess blocking the request below.
1
Regenerate permalinks
In WordPress Admin, go to Settings > Permalinks and click Save Changes without making any changes. This regenerates a clean
.htaccess file automatically and often resolves the issue on its own.2
Manually reset .htaccess (if step 1 doesn't help)
Back up your current
.htaccess file first, download a copy or rename it to .htaccess_backup. The file is in your WordPress root directory (usually /public_html/ or /www/). Replace its contents with:rest_not_logged_in error after applying the fix above, your server is reachable but stripping the Authorization header before it reaches WordPress. This is a known issue on some Apache/PHP hosting setups, independent of the WordPress rewrite rules.
Add this to the very top of your .htaccess file, above the # BEGIN WordPress block:
This fix resolves most cases, but not all, it isn’t universally guaranteed. If it doesn’t work, ask your hosting provider whether PHP is running in CGI or FastCGI mode. In that mode, Apache can strip the Authorization header regardless of
.htaccess rules. Your host needs to either enable CGIPassAuth On, or confirm PHP is running as a native Apache module instead.- Security plugins (Wordfence, Sucuri, etc.), review the plugin’s firewall or activity log for blocked requests around the time of your connection attempt. These often block REST API authorization headers by default.
- Host-level firewall (WAF), some hosts (GoDaddy, SiteGround, etc.) run their own firewall in front of WordPress. Ask your host whether
Authorizationheaders or/wp-json/requests are being blocked.
Pressmaster doesn’t currently publish a stable list of outbound IP addresses to whitelist with your host. Focus troubleshooting on the header-passthrough and firewall-log checks above instead.
- The exact response from the
/wp-json/wp/v2/users/metest - Which fixes you’ve already tried (permalinks reset, manual
.htaccess, Authorization header rule) - Your hosting provider’s name, and whether PHP CGI/FastCGI mode was confirmed
- Any firewall or security plugin logs you can share
