Skip to content

Commit

Permalink
Merge pull request #1 from devuri/devuri-patch-1
Browse files Browse the repository at this point in the history
Update README.md
  • Loading branch information
devuri authored Feb 18, 2024
2 parents 438d1c7 + e03b564 commit ef4d16b
Showing 1 changed file with 55 additions and 41 deletions.
96 changes: 55 additions & 41 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,74 +1,88 @@
# WP Example Project
# WPFramework

This Composer project, `devuri/wp-example`, is designed for building robust WordPress applications, leveraging the power of `devuri/wp-framework` and a suite of essential plugins and themes for WordPress development. It's structured to facilitate easy development, deployment, and maintenance of WordPress sites.
Effortlessly spin up a fully-configured WordPress site in no time with `devuri/wpframework`, tailored for swift development and deployment of secure scalable WordPress applications. Drawing inspiration from the simplicity of modern frameworks, this offers a seamless setup experience, embedding industry best practices right from the start.

## Features

- Integrated with `devuri/wp-framework` for enhanced WordPress development.
- Includes a variety of plugins for functionality ranging from code highlighting to security and SEO.
- Bundles popular themes like Kadence, Hello Elementor, and Twenty Twenty-Three for design flexibility.
- Configured with a custom WordPress install directory and installer paths for mu-plugins, plugins, and themes.
- **Quick Setup**: Start a new WordPress project with a single command.
- **Best Practices**: Comes configured with modern development practices and standards.
- **Scalable Structure**: Ready-made for building anything from small blogs to large, [multi-tenant](#) web applications.
- **Security Focused**: Pre-configured with security best practices to keep your site safe.
- **Developer Tools**: Integrated tools for debugging, testing, and deployment to enhance your workflow.

## Requirements
- **Modular Structure**: Promotes a modular approach to WordPress development, allowing you to organize your code into separate modules or packages for better code organization and reusability.
- **Dependency Management**: With the help of Composer, allows you to manage your WordPress plugins, themes, and libraries effortlessly. It provides a composer.json file to easily include and update dependencies.
- **Environment Configuration**: Implements the concept of environment-specific configurations using the `.env` file. You can define environment variables for different environments (e.g., development, staging, production) to easily manage database connections, API keys, and other environment-specific settings.
- **Enhanced Security**: By moving sensitive files outside of the web root directory, it helps improve the security of your WordPress installation. Critical files are stored outside the public directory, preventing direct access.
- **Version Control Friendly**: Encourages the use of version control systems like Git. By separating core WordPress files from your project files, it makes it easier to manage and track changes to your custom code while excluding WordPress core files from version control.
- **Modern Development Workflow**: Embraces modern development practices, allowing you to use build tools like Webpack for asset management and build processes. You can easily integrate frontend frameworks or preprocessors into your project for an optimized development workflow.
- **Tenancy** introduces comprehensive [`multi-tenant`](https://devuri.github.io/wp-framework/multi-tenant/) functionality, enabling the support of multiple tenants (websites) within a single environment. Each tenant benefits from its own dedicated database, configuration, and customization options, all while operating on a shared infrastructure. This design ensures maximum flexibility for tailoring solutions to meet specific requirements.

## Getting Started

### Prerequisites

- PHP 7.4 or higher
- Composer
- MySQL or MariaDB database

## Installation
### Creating a New Project

1. **Clone the Project**
#### Installation

Begin by cloning this project into your local development environment:
Run the following command in your terminal:

```sh
git clone https://github.com/your-username/wp-example.git
cd wp-example
```
```shell
composer create-project devuri/wpframework your-project-name
```
> Replace `your-project-name` with your desired project directory.
2. **Install Dependencies**
After the installation process, you will find a new `.env` file in your project directory. This file contains all the necessary environment variables.

Run Composer to install the required PHP packages:
**Navigate to Your Project Directory**:

```sh
composer install
```bash
cd your-project-name
```

3. **WordPress Configuration**
Open the `.env` file in a text editor of your choice and make the following configurations:

After installing the dependencies, configure your WordPress installation as you would normally. The WordPress core will be located in the `public/wp` directory.
**DB_NAME:** Set the name of your database.

4. **Activating Plugins and Themes**
**DB_USER:** Set the database user.

Activate the required plugins and themes through the WordPress admin dashboard or WP-CLI.
**DB_PASSWORD:** Set the database password.

## Structure
**DB_HOST:** In most cases, this can remain as 'localhost' if you are using the default database host.

- `public/wp`: WordPress core installation directory.
- `public/mu-plugins`: Directory for Must-Use plugins.
- `public/plugins`: Standard WordPress plugins directory.
- `public/app/themes`: WordPress themes directory.
```shell
WP_HOME='https://yourdomain.com'
WP_SITEURL="${WP_HOME}/wp"

DB_NAME=your_db_name
DB_USER=your_db_user
DB_PASSWORD=your_db_password
```

## Plugins Included
Update the **WP_HOME** value with the correct URL for your application.

- Easy Code Highlighter
- Advanced Custom Site Status
- Application Passwords Manager
- ... and more, offering a wide range of functionality from SEO optimization to security enhancements.
## Run WordPress Installation:

## Themes Included
Navigate to your project's public domain in a web browser to run the WordPress installation, or use WP-CLI to install WordPress.
> Utilize the extensive customization options to tailor your WordPress application to your needs.
- Kadence
- Hello Elementor
- Twenty Twenty-Three
## Documentation

## Customization

Feel free to customize the Composer `require` section to include or exclude plugins and themes as per your project requirements.
For more detailed instructions and comprehensive documentation, visit [WPFramework Documentation](#).

## Contributing

Contributions to the project are welcome! Please follow the standard GitHub pull request process to propose changes.
If you have ideas for improvements or want to contribute code, please follow our [Contributing Guidelines](#).

## Support

Need help or have a question? Open an issue on our [GitHub repository](https://github.com/devuri/wpframework/issues), and we'll be happy to assist.

## License

This project is open-sourced software licensed under the MIT License. See the LICENSE file for more information.
This project is open-sourced software licensed under the [MIT License](LICENSE).

0 comments on commit ef4d16b

Please sign in to comment.