The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.?Create a ticket in our bug tracker.
To maintain the code and develop it for the future
Develop new features for WordPress
Maintain and improve design and UXUXUser experience
Design, develop, and maintain default themes
Maintain the utilities used to develop core
Maintain the bundled packages of default plugins
Maintain the bundled libraries available in core
Maintaining the bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. tracker
Review patches for accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) and privacy concerns
Prior knowledge that you’ll find helpful for working on core is:
Familiarity with WordPress is beneficial but you don’t need a deep understanding of core to get started
A version controlversion controlA version control system keeps track of the source code and revisions to the source code. WordPress uses Subversion (SVN) for version control, with Git mirrors for most repositories. system: either SVN or Git
If a betaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. or release candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). is available try out some Alpha or Beta testing
If you are unsure if you are on the latest npm version, run the following command:
npm install npm@latest -g
Docker – https://docs.docker.com/install/
A handy guide to setting up your local environment can be found in Contributing.md in the GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/githubGitHubGitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ repository. There you will find commands to help get your local environment up and running.
Largely, the setup process can be finished end to end by running the following command from the Gutenberg directory (Powershell works well if you are on Windows.):
The script will go step by step through the process of validating prerequisites are met. If there is something missing, the script will report what needs to be done to complete the setup. Re running the script a few times after making the suggested changes will complete setup.
Once you have the development version of Gutenberg running on your local environment you will need to run the following from within the Gutenberg directory:
npm run dev
This will monitor/update changes you make.
In order to avoid huge downloads at WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Contributor Days it is recommended that the environment is configured before the event.
Fork the Gutenberg repository to your own account.
Clone your fork locally to your ‘plugins’ directory using `git clone`
Create a new branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". in your fork with the the issue number somewhere in the branch name (example: `fix-adminadmin(and super admin)-align-center-12306` would be a good branch name for issue: “Latest Posts blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. “align center” has no effect in admin #12306”)
Make an initial commit
Publish your branch using:
git push -u origin <branch name>
Now you are ready to make your changes locally to fix the issue. When finished, commit your changes and push them to your branch.
If you are ready to submit your changes for review to merge into Gutenberg, simply create a pull request via github.com by navigating to your branch. Create pull request and fill out the information requested in the form.