Configuring PhpStorm to create WordPress Plugins on Pantheon

Configure a local environment for building a WordPress plugin or theme using JetBrains PhpStorm.


Overview

JetBrains PhpStorm is a commercial PHP IDE that can be configured to work with WordPress sites, allowing users to easily build and maintain custom plugins. This doc will set you up with a local environment in PhpStorm to create your custom plugins and themes.

For detailed information, see WordPress Development using PhpStorm. This document focuses on integrating and showcasing the PhpStorm workflow and is current as of PhpStorm version 2017.1.4.

Create a WordPress site

If you do not already have one, create a new WordPress site on Pantheon. This will be your empty site, in which to develop your new plugin or theme.

Clone the Code Repository

Copy your site code to your local workstation using SFTP or clone your site codebase with Git.

Create a PhpStorm Project

  1. Open PhpStorm.
  2. Click Create New Project from the startup window or go to File Menu > New Project... if you have an existing project open.
  3. Name your project.
  4. Select WordPress Plugin as the project type on the left sidebar.
  5. Specify or browse to the file path to save your project's files. This is where PhpStorm will store its "working files", and should be separate from your WordPress directory.
  6. Specify or browse to the root directory for your local WordPress site, and click Create:

    Configuring wp-cli path for PhpStorm

There will not be any files open within your project once you complete these steps. You will find a PHP file in the project's root, which contains the standard plugin header for WordPress.

Configure WP-CLI (Optional)

Many WordPress plugin developers use the command line tool WP-CLI. This is useful if you have a local development environment and want to use WP-CLI to manage it.

Once you have installed WP-CLI on your local machine you can configure PhpStorm to recognize WP-CLI from within your project by following these steps:

  1. Launch PhpStorm Menu > Preferences...
  2. In the Tools Section click Command Line Tool Support then click the click + icon to add an entry.
  3. Choose the tool WP-CLI, and click OK.
  4. Select Executable Available and enter the file path to your local wp directory. Configuring wp-cli path for PhpStorm
  5. Click OK to save the changes.

Configure Your Pantheon Development Environment

  1. Put your Dev environment into SFTP mode, and click Connection Info to see the connection settings.
  2. With your PhpStorm project opened, go to the Tools Menu > Deployment and click the Configuration... option.
  3. Click + to add a web server.
  4. Enter your Pantheon site name, followed by a dash and the environment.
  5. Select SFTP for type and click OK. Add web server PhpStorm

Connection Tab

Use your site's SFTP connection information to configure the Connection tab:

  1. Type: SFTP
  2. SFTP Host: appserver.dev.<Site UUID>.drush.in
  3. Port: 2222
  4. User name: dev.<Site UUID>
  5. Auth Type: Select Password and specify password, or key pair and select your private SSH key.
  6. Root Path: Click the Autodetect button and the Root Path should be automatically populated:

    Add web server PhpStorm

  7. Click the Test SFTP Connection... button and make sure the connection is successful before moving forward. Click OK.

    Add web server PhpStorm

Mappings Tab

Provide the file paths within the Mappings tab to allow correspondence between project folders:

  1. Local path: This field is automatically populated and requires no edits.
  2. Deployment path on server: /code
  3. Web path on server: /
  4. Click OK.

Enabling Automatic Upload

Go to Tools Menu > Deployment > Automatic Upload.

You are now ready to begin editing your code. Any files you change and save locally will be automatically uploaded to your Pantheon development environment.