Skip to content

Developing on WordPress VIP

WordPress VIP’s infrastructure is built with robust, built-in security and performance enhancement features. Because of these customizations, developers will find that several aspects of the platform are dissimilar to other hosting platforms. The information below is intended to highlight some of those differences for developers who are new to the VIP Platform and provide an overview of the tools and accounts that they need to get started.

GitHub repository

There is no SFTP access to an application’s code or other related assets. Developers can only modify an application’s code by using a version-controlled GitHub development workflow.

All customer development teams are strongly recommended to use the GitHub pull request flow in order to streamline code reviews and deployments.

Every WordPress and Node.js application on the VIP Platform is supplied with a GitHub repository within the wpcomvip GitHub organization.

WordPress repositories

GitHub repositories for WordPress applications are initialized as a fork of the vip-go-skeleton repository. Review the WordPress skeleton documentation to understand the purpose of the supplied files and directories and how to develop with them.

Node.js repositories

Github repositories for Node.js applications are initialized as a fork of the vip-go-node-skeleton repository. Any code pushed to the Node.js repository in a GitHub pull request can be analyzed by Harmonia for pre-deploy testing and validation.

Developers for Node.js applications should take time to review the requirements for their application code to successfully build and deploy to a VIP Platform environment.

GitHub user accounts

To modify code, a developer’s GitHub user account must be added to the application’s wpcomvip GitHub repository with write access or greater. A developer should reach out to one of the organization’s primary contacts to request access to an application’s GitHub repository if it has not yet been granted.

VIP Dashboard and VIP-CLI

Developers can review and interact with the settings of an application’s environments by using the VIP Dashboard and VIP-CLI. A developer’s ability to modify the settings of an application’s environments is dependent on the Org role and/or App role that is assigned to their VIP Dashboard user account for that application.

Review the documentation for an overview of the tools and features available in the application view of the VIP Dashboard. The VIP Dashboard provides the ability to manage domains, TLS certificates, software settings, review several types of logs, and much more.

A VIP Dashboard user account is also required to have access to VIP-CLI commands. VIP-CLI is a command-line interface for interacting with VIP Platform applications and environments. Developers can use VIP-CLI to run WP-CLI commands and perform actions such as syncing data from production to development environments. A developer must install VIP-CLI on their local machine, and authenticate their user account by retrieving their personal access token from the VIP Dashboard.

VIP Dashboard user accounts

To have access to an application’s VIP Dashboard, a developer must accept an invitation to the application’s organization. A developer should reach out to one of the organization’s primary contacts to request an invitation to access to an application’s VIP Dashboard if it has not yet been granted.

Local development for WordPress applications

Developers for WordPress applications are strongly encouraged to use the VIP Local Development Environment. The VIP Local Development Environment is a feature built in to VIP-CLI and nearly replicates the features and behaviors of a WordPress application’s platform environment. The VIP Local Development Environment is the only local development application eligible to receive support from the WordPress VIP Support team.

When developing code locally that requires Node.js—such as plugins or themes for a WordPress application—it is recommended that Node.js on the local development environment is maintained at a Long Term Support (LTS) release version. The resulting artifact from code built locally is then committed to the application’s GitHub repository as static assets. Node.js is not run on VIP WordPress environments.

Developers are encouraged to install PHP_CodeSniffer (PHPCS) to aid with local development. Scanning code locally with PHPCS provides useful feedback on code quality based on a defined set of coding standards.

Logs and monitoring

Developers should review the documentation for the types of logs and performance monitoring options that are available to them. These include but are not limited to:

Last updated: December 22, 2023

Relevant to

  • Node.js
  • WordPress