BACK TO DIRECTORY

4WP Drive

by 4WP.dev

5.0
(1 ratings)

4WP Drive connects Drive and GitHub folder workflows to WordPress: writers drop documents in incoming/, editors review them on the admin Incoming screen, and approved content becomes draft posts or updates existing posts and pages—without copy-paste. Analytics stores import history (folder alias, site slug, incoming published) and can restore a package back to incoming.

A plugin by 4wp.dev.

Learn more, workflow details, and comparisons on the plugin page at 4wp.dev/plugin/4wp-drive/.

Perfect for

  • Editorial teams that draft in Google Docs but publish in WordPress
  • Agencies with a shared Drive or GitHub incoming/ folder and a review step before publish
  • Content pipelines that need structured front-matter (title, slug, categories, SEO fields) parsed from the doc header
  • Sites that want API credentials stored encrypted and OAuth handled server-side

How it works

  1. Install and activate 4WP Drive.
  2. Connect a storage source in Settings Storage sources: Google Drive (OAuth) and/or GitHub (PAT + owner/repo).
  3. Drive: set the root folder ID; the plugin uses incoming/ and published/ subfolders. GitHub: set the repo and incoming path (default incoming/).
  4. Drop a package into incoming/ (Google Doc, Markdown, or Word on Drive; Markdown on GitHub) or run Sync.
  5. Open Incoming — pick a source tab (Google Drive or GitHub live; OneDrive and Dropbox on the roadmap), sync, select a document, then preview and Create new draft, Update existing post, or Reject.
  6. On import, files move to published/. Open Analytics to see history; Restore to incoming if you need the package back in the queue.

Key features

  • Google Drive OAuth — connect an admin Google account; tokens stored encrypted
  • Folder sync — scan incoming/ for Google Docs, Markdown, Word, and images (Drive) or Markdown packages (GitHub)
  • GitHub — live Markdown source: PAT, owner/repo, move to published/failed after import
  • Editorial Incoming — status bar, source tabs, document queue + side workspace for preview and import
  • Analytics — import history (source, post, folder alias, site slug, incoming published) and Restore to incoming
  • Document template — front-matter lines before a separator (--- or =====) map to post fields; body becomes post content (headings, lists, bold preserved)
  • Body block templates — map FAQ-style sections to 4WP FAQ or core Accordion; Core Image (default on) replaces [image:filename.jpeg] with core/image from the package folder
  • Configurable field map — title, slug, categories, tags, author, dates, SEO meta (when supported)
  • Featured image — import image from the same Drive subfolder
  • Update existing content — search and pick a post or page, then replace its content from the Drive document
  • Polylang multilingual import — pick content language in the Inbox when the site has multiple languages; assign language on create; filter update targets by language (WPML planned)
  • REST API + WP-CLI wp forwp-drive sync for manual sync
  • Roadmap sources — OneDrive and Dropbox

Privacy

OAuth tokens and Google API credentials are stored in your WordPress database (encrypted). Document content is fetched from Google Drive only when an administrator runs sync or import. No visitor-facing tracking.

4WP is our project brand; the letters “WP” appear only as part of that brand name, not as a reference to WordPress. This plugin is not affiliated with, endorsed, or sponsored by WordPress.

Source code: github.com/4wpdev/4wp-drive

Plugin overview and FAQ: 4wp.dev/plugin/4wp-drive/

Development

Human-readable PHP source is in the public GitHub repository above. The plugin ZIP includes src/ (PSR-4 autoload via src/Autoload.php when vendor/ is absent). No npm build step — admin scripts ship as plain JS in assets/.

Run tests: composer install && composer test && composer run lint

External services

This plugin connects to Google services when an administrator configures OAuth and syncs or imports documents.

Google OAuth 2.0

Used to authorize access to the connected Google account’s Drive files.

  • Authorization URL: https://accounts.google.com/o/oauth2/v2/auth
  • Token URL: https://oauth2.googleapis.com/token
  • Scope: https://www.googleapis.com/auth/drive

When an administrator clicks Connect Google Drive, the browser is redirected to Google to sign in and grant access. WordPress stores refresh and access tokens encrypted in the site database. Client ID and Client Secret are stored encrypted (or may be defined in wp-config.php).

Google terms: https://policies.google.com/terms
Google privacy: https://policies.google.com/privacy

Google Drive API

Used to list folders, download Google Docs (export as HTML/DOCX), and move files after import.

  • API hostname: https://www.googleapis.com/drive/v3/ (and related export endpoints)

Requests are made server-side only when an administrator runs sync, preview, or import. Document metadata and file content are processed on your server to create WordPress posts.

Google Drive API terms follow Google Cloud / Google API Services terms linked from the Google Cloud Console.

GitHub REST API

Used when an administrator saves a personal access token and syncs or imports from a GitHub repository.

  • API hostname: https://api.github.com/
  • Typical calls: repository metadata, Contents API (list, read, create, delete) to move files after import or restore

Requests are made server-side only. 4WP Drive uses the configured owner/repository. A classic token with repo scope can access other repositories the GitHub account can reach; a fine-grained token can be limited to one repository (Contents: Read and write).

GitHub terms: https://docs.github.com/en/site-policy/github-terms/github-terms-of-service
GitHub privacy: https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement

Screenshots

Storage sources — source registry (Google Drive and GitHub live; OneDrive, Dropbox planned).

Storage sources — source registry (Google Drive and GitHub live; OneDrive, Dropbox planned).

Google Drive — OAuth credentials, Connect, and folder mapping.

Google Drive — OAuth credentials, Connect, and folder mapping.

Document template — map front-matter labels to post fields and taxonomies.

Document template — map front-matter labels to post fields and taxonomies.

Drive folders — WordPress settings alongside the matching incoming / published / failed folders in Drive.

Drive folders — WordPress settings alongside the matching incoming / published / failed folders in Drive.

Incoming — synced articles from incoming/ with Preview, Import as Draft, and Reject.

Incoming — synced articles from incoming/ with Preview, Import as Draft, and Reject.

Document template — example header format next to a Google Doc with front-matter.

Document template — example header format next to a Google Doc with front-matter.

Inbox preview — parsed metadata and featured image before import.

Inbox preview — parsed metadata and featured image before import.

Imported draft — post editor with content, featured image, categories, and Yoast SEO fields.

Imported draft — post editor with content, featured image, categories, and Yoast SEO fields.

Published post — front-end article after import from Drive.

Published post — front-end article after import from Drive.

Plugin Details

Active Installs
0
Total Downloads
536
Version
1.5.0
Requires WP
6.4
Requires PHP
7.4
Tested Up To
7.1
Added
2026-06-14
Last Updated
2026-09-09 6:53pm GMT

Ratings

5
1
4
0
3
0
2
0
1
0