vinkla/wordplate

The WordPlate boilerplate

Maintainers

👁 vinkla

Package info

github.com/vinkla/wordplate

Type:project

pkg:composer/vinkla/wordplate

Statistics

Installs: 5 280

Dependents: 0

Suggesters: 0

Stars: 2 173

Open Issues: 0

12.11.0 2026-05-22 09:31 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT cc4ab34b7c20fed142af007af95979c706719cac

wordpresswordplate

This package is auto-updated.

Last update: 2026-06-16 08:09:27 UTC


README

👁 WordPlate

WordPlate

WordPlate is a boilerplate for WordPress, built with Composer and designed with sensible defaults.

👁 Build Status
👁 Monthly Downloads
👁 Latest Version

Features

  • WordPress + Composer = ❤️

    WordPress can be installed and updated with ease using Composer. To update WordPress, simply run the command composer update.

  • Environment Files

    Similar to Laravel, WordPlate stores environment variables, such as database credentials, in an .env file.

  • WP Packages

    WP Packages enables the management of WordPress plugins and themes through Composer.

  • Must-use plugins

    Don't worry about clients deactivating plugins; must-use plugins are enabled by default.

  • Vite.js

    Using Vite, you can rapidly set up and begin building and minifying your CSS and JavaScript.

  • Tailwind CSS

    Tailwind CSS is included by default, allowing you to quickly build custom designs.

  • Debugging

    Familiar debugging helper functions are integrated such as dump() and dd().

  • Clean UI

    Enhance the WordPress dashboard and improves the user experience for clients.

Installation

Before using WordPlate, make sure you have PHP 8.4 and MySQL 8.0 installed on your computer. You'll also need to have Composer, a package manager for PHP, installed on your computer.

To install WordPlate, open your terminal and enter the following command:

composer create-project --prefer-dist vinkla/wordplate example-app

After installing WordPlate, you'll need to update the database credentials in the .env file. This file is located in the root directory of your project. Open the file and update the following lines with your database credentials:

DB_NAME=database
DB_USER=username
DB_PASSWORD=password

To run your WordPlate application, you may serve it using PHP's built-in web server. Open your terminal and navigate to the public directory of your project. Then, enter the following command:

php -S 127.0.0.1:8000 -t public/

Finally, open your web browser and visit the following URLs to view your WordPlate application:

Configuration

Public Directory

After installing WordPlate, you'll need to configure your web server's document or web root to be the public directory. This is where the main entry point for your application, index.php, is located.

By setting the public directory as your web server's document root, you ensure that all HTTP requests are routed through the front controller, which handles the requests and returns the appropriate responses.

This configuration helps to improve the security and performance of your application by preventing direct access to files outside of the public directory.

Environment Configuration

WordPlate makes it easy to manage different configuration values based on the environment where your application is running. For example, you may need to use a different database locally than you do on your production server.

To accomplish this, WordPlate uses the vlucas/phpdotenv PHP package. When you install WordPlate, a .env.example file is included in the root directory of your application. If you installed WordPlate via Composer, this file will automatically be renamed to .env. Otherwise, you should rename the file manually.

It's important to note that your .env file should not be committed to your application's source control. This is because each developer or server using your application may require a different environment configuration. Additionally, committing your .env file to source control would be a security risk in the event that an intruder gains access to your repository, as any sensitive credentials would be exposed.

To learn more about managing environment variables in WordPlate, you can refer to Laravel's documentation on the topic:

Salt Keys

It's important to add salt keys to your environment file. These keys are used to encrypt sensitive data, such as user sessions, and help to ensure the security of your application.

If you don't set the salt keys, your user sessions and other encrypted data may be vulnerable to attacks. To make it easier to generate secure salt keys, we've created a salt key generator that you can use. If you haven't already done so, copy the .env.example file to a new file named .env. Then visit the generator and copy the randomly generated keys to your .env file.

Plugins

WP Packages

WordPlate includes integration with WP Packages, a Composer repository that mirrors the WordPress plugin and theme directories. With this integration, you can install and manage plugins using Composer.

To install a plugin, use wp-plugin as the vendor name and the plugin slug as the package name. For example, to install the clean-image-filenames plugin, you would use the following command:

composer require wp-plugin/clean-image-filenames

The installed packages will be located in the public/plugins directory.

Here's an example of what your composer.json file might look like:

"require": {
 "wp-plugin/clean-image-filenames": "^1.5"
}

For more information and examples, please visit the WP Packages website.

Must Use Plugins

Must-use plugins (also known as mu-plugins) are a type of WordPress plugin that is installed in a special directory inside the content folder. These plugins are automatically enabled on all sites in the WordPress installation.

To install plugins into the mu-plugins directory, add the plugin name to the installer-paths of your composer.json file:

"installer-paths": {
 "public/mu-plugins/{$name}": [
 "type:wordpress-muplugin",
 "wp-plugin/clean-image-filenames",
 ]
}

To install the plugin, use wp-plugin as the vendor name and the plugin slug as the package name:

composer require wp-plugin/clean-image-filenames

The plugin will be installed in the public/mu-plugins directory.

For more information on the must-use plugin autoloader, please refer to the Bedrock documentation.

Included Plugins

Headache

An easy-to-swallow painkiller plugin for WordPress. The plugin removes a lot of default WordPress stuff you just can't wait to get rid of. It removes meta tags such as feeds, version numbers and emojis.

  • Disables XML-RPC and protects against user enumeration
  • Removes feeds, emoji scripts, oEmbed, and block styles
  • Disables attachment pages and randomizes media slugs
  • Prevents indexing on non-production environments

Clean Image Filenames

The plugin automatically converts language accent characters in filenames when uploading to the media library. Characters are converted into browser and server friendly, non-accent characters.

  • Räksmörgås.jpgraksmorgas.jpg
  • Æblegrød_FTW!.gifaeblegrod-ftw.gif
  • Château de Ferrières.pngchateau-de-ferrieres.png

Vite.js

Vite is a build tool that provides a faster and leaner development experience for modern web projects. It comes with sensible defaults and is highly extensible via its Plugin and JavaScript APIs with full typing support.

# Start the dev server...
npm run dev

# Build for production...
npm run build

Learn more about Vite's backend integration.

Mail

To set up custom SMTP credentials for sending emails in your WordPlate application, you need to configure the required environment variables in your .env file.

MAIL_HOST=127.0.0.1
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="Example"

If you're using a local email service like Mailhog or Mailpit, you need to disable encryption by setting the MAIL_ENCRYPTION environment variable to null.

FAQ

Upgrade Guide

Acknowledgements

WordPlate wouldn't be possible without these amazing open-source projects.

License

The WordPlate package is open-sourced software licensed under the MIT license.