🔥WORDPRESS PLUGINS YOU WON'T FIND ANYWHERE ELSE!BloatSlayer🔍SEO Surgeon📦TrackShip🚀LaunchPad🎯CommandPost🔑VeriKeyProofFlow💬SiteChat
Docs › CommandPost

CommandPost Documentation

Everything you need to know about managing your Gmail inbox, building email templates, and receiving browser notifications directly from your WordPress dashboard.

Overview

CommandPost brings your Gmail inbox, a full email template builder, and real-time browser notifications into the WordPress admin panel. Instead of switching between browser tabs to check email, you can read, reply, and compose messages without ever leaving your dashboard.

The plugin connects to Google's Gmail API using OAuth 2.0, ensuring that your email credentials are never stored on your server. Once authorized, CommandPost syncs your inbox in the background and presents it in a familiar, tabbed interface. Each connected Gmail account gets its own tab, so you can manage personal and business email side by side.

CommandPost also includes a drag-and-drop email template builder with 16 pre-built templates for common scenarios like welcome emails, invoices, newsletters, and follow-ups. Templates can be customized per account or shared across all connected accounts. Browser notifications keep you informed of new messages even when you are working in another part of the admin or a different browser tab entirely.

Installation

CommandPost is installed like any other WordPress plugin. Download the .zip file from your Boulley Technology account or from the email you received after purchase. Then navigate to Plugins › Add New › Upload Plugin in your WordPress admin, select the ZIP file, and click Install Now.

Once installed, click Activate. CommandPost registers itself under Tools › CommandPost in the admin menu. The first time you open the page, you will see the Settings tab prompting you to configure your Google OAuth credentials. No data is synced until you complete the OAuth setup described in the next section.

CommandPost requires PHP 7.4 or higher and WordPress 5.8+. It has no external PHP dependencies beyond what WordPress provides. The plugin uses the WordPress HTTP API to communicate with Google's servers, so your hosting environment must allow outbound HTTPS requests to accounts.google.com and gmail.googleapis.com.

Google OAuth Setup

Before you can connect a Gmail account, you need to create a Google Cloud project and configure OAuth credentials. This is a one-time setup that takes roughly five minutes.

Step 1: Create a Google Cloud Project

Go to console.cloud.google.com and sign in with the Google account you want to use as the project owner. Click Select a project at the top of the page, then click New Project. Give it a name like "My Site Email" and click Create.

Step 2: Enable the Gmail API

With your new project selected, navigate to APIs & Services › Library. Search for "Gmail API" and click on it. Click the Enable button. This allows your project to access Gmail endpoints on behalf of authorized users.

Step 3: Configure the OAuth Consent Screen

Go to APIs & Services › OAuth consent screen. Choose External as the user type (unless you have a Google Workspace organization and want to restrict access). Fill in the app name, support email, and developer email. On the Scopes step, add gmail.readonly and gmail.modify. Save and continue through the remaining steps.

Step 4: Create OAuth Credentials

Go to APIs & Services › Credentials. Click Create Credentials › OAuth client ID. Select Web application as the application type. Under Authorized redirect URIs, add:

https://yoursite.com/wp-admin/admin.php?page=commandpost&tab=settings

Replace yoursite.com with your actual domain. Click Create. Google will display your Client ID and Client Secret. Copy both values.

Step 5: Enter Credentials in CommandPost

Back in WordPress, go to Tools › CommandPost › Settings. Paste the Client ID and Client Secret into the corresponding fields and click Save. CommandPost will validate the credentials and display a green checkmark when they are accepted.

Important: If your site is behind HTTP (not HTTPS), Google will reject the redirect URI. You must have a valid SSL certificate installed. Most modern hosts provide free SSL via Let's Encrypt.

Connecting Gmail

Once your OAuth credentials are saved, a Connect with Google button appears on the Settings tab. Clicking it redirects you to Google's consent screen, where you choose which Gmail account to authorize and grant the requested permissions (read and modify mail).

After you authorize, Google redirects you back to CommandPost. The plugin stores an encrypted refresh token in the database and immediately performs an initial sync of your inbox. Depending on the size of your inbox, this may take a few seconds.

CommandPost supports connecting multiple Gmail accounts. Each account appears as a separate tab in the inbox view. To add another account, return to the Settings tab and click Connect Another Account. There is no limit on the number of accounts you can connect with a Pro license. The free version is limited to a single account.

Tip: If you are testing in a Google Cloud project that is still in "Testing" mode, you must add your Gmail address as a test user under the OAuth consent screen. Otherwise Google will block the authorization attempt.

Gmail Inbox

The Inbox tab is the primary view in CommandPost. It displays your messages in a clean, scannable list with sender name, subject line, preview text, and timestamp. Unread messages are highlighted with a left border accent and bold subject text so you can quickly spot new mail.

Click any message to expand it inline. The full message body renders below the subject line, including HTML-formatted emails. You can reply directly from the expanded view using the reply box at the bottom, which supports rich text formatting and file attachments.

The inbox auto-refreshes based on your notification polling interval (configurable in Settings). You can also click the refresh icon at the top right to manually trigger a sync. CommandPost fetches only new or changed messages on each sync, so the refresh is fast even on large mailboxes.

If you have multiple accounts connected, each account's inbox is displayed in its own tab. Switching between tabs is instant because the data is cached locally in the database. The tab bar shows an unread count badge next to each account name.

Batch Actions

When you need to manage multiple messages at once, CommandPost provides batch actions. Use the checkbox on each message row to select individual messages, or click the Select All checkbox in the header to select everything on the current page.

With messages selected, a batch action bar appears at the top of the inbox with the following options:

  • Mark as Read — Removes the unread indicator from all selected messages.
  • Mark as Unread — Sets all selected messages back to unread status.
  • Trash — Moves selected messages to the Gmail trash. They can be recovered from the Trash tab within 30 days.
  • Delete Permanently — Permanently removes selected messages from Gmail. This action cannot be undone.

Batch actions are processed through the Gmail API in the background. A progress indicator shows how many messages have been processed, and a confirmation toast appears when the operation completes.

Sent Folder

The Sent tab shows all emails you have sent through CommandPost or through Gmail directly. It mirrors the Sent folder in your Gmail account and is synced alongside your inbox during each refresh cycle.

Each sent message displays the recipient(s), subject, preview text, and timestamp. Click a message to expand it and see the full content. If the recipient has replied, CommandPost shows the thread so you can follow the full conversation in context.

Sent messages are read-only in CommandPost. To forward or re-send a sent message, click the Forward button in the expanded message view, which opens the compose window with the original content pre-filled.

Trash

The Trash tab lists all messages that have been moved to trash, either through CommandPost's batch actions or directly in Gmail. Messages in the trash remain there for 30 days before Google automatically deletes them.

You can restore a trashed message by selecting it and clicking Move to Inbox. This removes the trash label and returns the message to your main inbox. If you need to permanently remove all trashed messages, click the Empty Trash button at the top of the tab. This is irreversible and applies to the Gmail account, not just CommandPost's local cache.

The trash count is displayed as a badge on the Trash tab label, giving you a quick sense of how many messages are pending deletion.

Email Templates

CommandPost includes a full-featured email template system that lets you create reusable, professionally designed email layouts. When composing or replying to a message, click the Use Template button to insert a template into the message body.

The plugin ships with 16 pre-built templates covering the most common use cases:

  • Welcome / Onboarding emails
  • Invoice and receipt notifications
  • Newsletter layouts (single and multi-column)
  • Follow-up and reminder emails
  • Event invitation and RSVP
  • Support ticket acknowledgment
  • Product launch announcements
  • Thank you / appreciation messages

Each template is fully responsive and tested across major email clients including Gmail, Outlook, Apple Mail, and Yahoo Mail. Templates use inline CSS to ensure consistent rendering, since most email clients strip <style> blocks.

To create a custom template, go to the Templates tab and click New Template. You can start from scratch using the drag-and-drop builder, duplicate an existing template, or paste raw HTML if you prefer to code your templates manually.

Drag & Drop Builder

The template builder provides a visual, block-based editor for creating email templates without writing any HTML. The left panel contains draggable block types, and the right panel shows a live preview of your template. Drag a block from the palette and drop it into the preview to add it.

Available block types include:

  • Header — A top banner with logo, title text, and background color. Supports image upload for custom header graphics.
  • Text — Rich text content with basic formatting (bold, italic, links, lists). Font size, color, and alignment are configurable.
  • Image — Upload an image or paste a URL. Supports alt text, width controls, and optional click-through links.
  • Button — A call-to-action button with customizable text, URL, background color, text color, border radius, and padding.
  • Divider — A horizontal rule with configurable thickness, color, and margin spacing.
  • Spacer — An empty block that adds vertical space between other elements. Height is adjustable from 8px to 120px.
  • Columns — A two-column or three-column layout. Each column can contain its own nested blocks (text, image, button).
  • Footer — A pre-styled footer block with placeholder text for your company address, unsubscribe link, and social media icons.

Every block can be rearranged by dragging it to a new position. Click any block in the preview to select it and reveal its settings panel. Use the trash icon to remove a block or the duplicate icon to copy it.

The builder includes two modes: Visual (the default drag-and-drop interface) and Code (a raw HTML editor). You can switch between them at any time. Changes made in Code mode are reflected immediately in Visual mode and vice versa.

Per-Account Templates

By default, templates in CommandPost are scoped to the Gmail account that created them. This means that if you have two accounts connected, templates created while Account A's tab is active are only visible when composing from Account A.

This scoping is useful when your accounts serve different purposes. For example, you might have branded business templates for your company account and simpler personal templates for your personal Gmail. Each account's template library stays organized and relevant.

If you want a template to be available across all connected accounts, open the template in the builder and check the Share across all accounts option at the top. Shared templates appear in the template picker regardless of which account tab is active. You can convert a shared template back to account-specific at any time.

Browser Notifications

CommandPost can send browser notifications when new emails arrive, so you do not need to keep the CommandPost tab open or continuously check your inbox. Notifications use the Web Notifications API built into modern browsers and appear as native desktop notifications.

To enable notifications, go to Settings › Notifications and toggle Enable Browser Notifications. Your browser will ask for permission to show notifications. Click Allow when prompted. If you previously denied permission, you will need to update it in your browser's site settings.

You can configure the poll interval to control how frequently CommandPost checks for new messages. The default is 60 seconds. Shorter intervals mean faster notification delivery but slightly more server load. Intervals of 30 to 120 seconds work well for most sites.

An optional notification sound can be enabled from the same settings panel. Choose from several built-in tones or disable the sound for silent visual notifications. Each connected account can be individually toggled, so you can receive notifications for your work email but not your personal one, for example.

License Activation

CommandPost is free to use with a single Gmail account and basic templates. Upgrading to a Pro license unlocks unlimited Gmail accounts, the full template builder with all block types, shared templates, and priority support.

To activate your license, go to Tools › CommandPost › License. Enter the license key you received after purchase (it looks like CP-XXXX-XXXX-XXXX-XXXX) and click Activate. CommandPost validates the key against the Boulley Technology license server and binds it to your site's domain.

Each license key is valid for one domain. If you need to move your license to a different site, deactivate it first from the License tab, then activate it on the new domain. If you lose access to the old site, you can deactivate the key from your Boulley Technology account portal.

Troubleshooting

OAuth Redirect Error

If Google displays an error after you click "Connect with Google", the most common cause is a mismatched redirect URI. Open your Google Cloud credentials and verify that the Authorized Redirect URI exactly matches your CommandPost settings URL, including the protocol (https://) and any trailing parameters. Also ensure that your OAuth consent screen is not expired or in a revoked state.

Inbox Not Syncing

If your inbox appears empty after connecting, check that your server can make outbound HTTPS requests. Some hosting providers block external API calls on shared plans. You can test this by running wp_remote_get('https://gmail.googleapis.com') in a custom snippet. If the request times out, contact your host about unblocking Google API endpoints.

Notifications Not Appearing

Browser notifications require HTTPS, a supported browser (Chrome, Firefox, Edge, Safari 16+), and explicit permission. Check your browser's notification settings for your site. If the site is listed as "blocked", change it to "allow" and refresh the page. Also verify that the poll interval is not set to zero, which disables polling.

Templates Not Showing in Compose

If the "Use Template" button does not display any templates, confirm that you have created or imported at least one template for the active account. Templates are account-scoped by default, so switching to a different Gmail account tab may show a different set. Check the Share across all accounts option on a template to make it universally available.

Refresh Token Expired

Google OAuth refresh tokens can expire if the user revokes access, the Google Cloud project is deleted, or the token has not been used for six months. If CommandPost displays a "token expired" error, go to Settings and click Reconnect for the affected account. This initiates a fresh OAuth flow and generates a new refresh token.

FAQ

Does CommandPost store my email password?
No. CommandPost uses Google OAuth 2.0, which means your password is never shared with or stored by the plugin. CommandPost only stores an encrypted refresh token that grants it limited API access to read and modify your Gmail. You can revoke this access at any time from your Google account security settings.
Can I use CommandPost with Google Workspace (G Suite) accounts?
Yes. Google Workspace accounts work exactly like regular Gmail accounts. If your Workspace admin has restricted third-party app access, they may need to allow your OAuth Client ID in the Google Admin Console under Security › API Controls › App Access Control.
How many Gmail accounts can I connect?
The free version supports one Gmail account. A Pro license removes this limit entirely. You can connect as many accounts as you need, and each one gets its own tab in the inbox view with independent settings and templates.
Will CommandPost slow down my WordPress admin?
No. CommandPost only loads its assets on its own admin page. It does not add scripts or styles to other admin pages or the frontend. Email syncing happens via AJAX in the background, so it does not block page loads. The notification polling uses a lightweight heartbeat that adds negligible overhead.
Can I export my email templates?
Yes. Each template can be exported as raw HTML from the Code view in the template builder. You can copy the HTML and use it in any email platform. Import works the same way: paste HTML into Code mode and switch to Visual mode to continue editing with the drag-and-drop builder.
BT
BT Assistant Ask me anything!