We are excited to announce a major update to our GitHub integration that fundamentally changes how you deploy code to Pressable. This update introduces configurable deployment paths, support for diverse repository structures, and native .deployignore support, giving you precise control over your development workflow. This update is especially useful for teams and agencies using monorepos, custom build pipelines, or non-standard WordPress setups.
What’s New
Previously, Pressable mirrored your repository directly to wp-content, which limited flexibility for modern workflows. This update removes those constraints and introduces three key improvements:
1. Configurable Deployment Paths
You can now map any folder in your repository to any specific folder on your server.
- Repository Subdirectory: Choose exactly which folder to deploy from (e.g., deploy only a
dist/folder or a specific theme inside a monorepo). - Destination Path: Choose exactly where files go (e.g., deploy directly to
wp-content/themes/my-custom-theme/without affecting the rest of the directory).
2. Support for Any Repository Structure
Whether your repository contains a full WordPress installation, just a wp-content folder, or strictly a single theme or plugin, the system can now accommodate it. This allows you to organize your version control however you see fit without being forced into a specific directory structure.
3. .deployignore Support
For fine-grained control over what lands on your server, you can now add a .deployignore file to your repository root. Similar to .gitignore, this file allows you to:
- Protect specific files or directories from being modified or deleted during deployment.
- Exclude build tools (e.g.,
node_modules/,.github/). - Prevent local configurations from overwriting production settings.
⚠️ READ BEFORE ENABLING: Sync-As-Is Behavior
This update introduces a “Sync-As-Is” philosophy. Files that exist on the server but NOT in your GitHub repository will be deleted from the destination path during deployment.
This replaces the old “Include/Delete” toggles. If you need to preserve files on the server that do not exist in your git repository (such as third-party plugins, specific configurations, or uploads), you must use a
.deployignorefile to protect them from the sync process.
Availability
- New Users: All accounts created on or after December 10, 2025, have this feature enabled automatically.
- Existing Users: You can opt-in to the new integration on a site-by-site basis. Please contact Customer Support to activate it for your account.
Learn More
For a deep dive on how to configure your paths, the correct syntax for .deployignore files, and migration guides for existing sites, please consult our Knowledge Base.