Contribution Workflow
Contribution Workflow
This repository follows a structured weekly cadence for contributing to the WordPress ecosystem. Whether you are patching Core, updating plugins, or improving documentation, use the following standard operating procedures to ensure consistency and quality.
1. Prerequisites
Before contributing, ensure you have the following accounts and tools configured:
- WordPress.org ID: Required for attribution in the WordPress ecosystem.
- Local Development Environment: We recommend using wp-env or LocalWP.
- SVN/Git: Ensure you have both installed, as WordPress Core uses SVN for the official mirror while this repository tracks changes via Git.
2. Identifying Weekly Tasks
We focus on one specific area of the WordPress ecosystem every week. To find the current focus:
- Check the Issues tab for tags labeled
weekly-focus. - Browse the WordPress Trac for "good-first-bugs" or "needs-patch".
3. Development Process
Follow these steps to prepare your contribution:
Environment Setup
Clone the repository and install the necessary development dependencies:
git clone https://github.com/UditAkhourii/wordpress.git
cd wordpress
npm install
Creating a Feature Branch
Create a branch using the following naming convention: contribution/YYYY-MM-DD-[scope].
git checkout -b contribution/2023-10-27-core-fix
Code Standards
All contributions must adhere to the WordPress Coding Standards (WPCS). You can verify your changes using the provided linting script:
npm run lint
4. Submission Interface
When your contribution is ready, follow the submission workflow based on the target destination:
For WordPress Core (Trac)
- Generate a
.patchor.difffile. - Upload the file to the relevant Trac ticket.
- Reference the Trac ticket URL in your Pull Request (PR) in this repository.
For This Repository
Submit a PR to the main branch. Your PR description must include the following template:
| Field | Description | | :--- | :--- | | Contribution Type | (e.g., Core, Documentation, Plugin, Theme) | | Trac/GitHub Issue URL | Link to the upstream WordPress ticket | | Status | (e.g., Pending Review, Committed, Needs Revision) | | Summary of Changes | A brief explanation of the fix or improvement |
5. Automated Validation
Upon submitting a PR, the following automated checks are triggered:
- PHPCS: Validates PHP syntax against WordPress standards.
- JSHint: Validates JavaScript files.
- Markdown Lint: Ensures documentation remains readable and consistent.
6. Weekly Sync and Review
Contributions are reviewed every week. If your PR requires changes:
- Address the feedback in your local branch.
- Push the updates; the PR will update automatically.
- Once approved, the contribution is marked as
completedand logged in our weekly contribution history.