Go to file
Jonathan Desrosiers f6b8632508 Code Modernization: Remove JSON extension workarounds for PHP < 5.6.
The PHP native JSON extension has been bundled and compiled with PHP by default since version 5.2.0. Because the minimum version of PHP required by WordPress is now 5.6.20 (see #46594 and [45058]), JSON extension related polyfills and backwards compatibility code can now be removed.

This change removes code that supported JSON related functionality on older versions of PHP. This includes (but is not limited to) checks that `json_last_error()` exists, checking and setting the `JSON_UNESCAPED_SLASHES` and `JSON_PRETTY_PRINT` constants if not previously defined, and deprecating the `_wp_json_prepare_data()` function (which was 100% workaround code).

Follow up of [46205].

See #47699.
Props jrf, Clorith, pento.

git-svn-id: https://develop.svn.wordpress.org/trunk@46206 602fd350-edb4-49c9-b593-d223f7449a82
2019-09-20 20:07:28 +00:00
src Code Modernization: Remove JSON extension workarounds for PHP < 5.6. 2019-09-20 20:07:28 +00:00
tests Code Modernization: Remove JSON extension workarounds for PHP < 5.6. 2019-09-20 20:07:28 +00:00
tools Block Editor: Update the WordPress Packages to the ones used in the Gutenberg 6.5 release 2019-09-19 15:17:39 +00:00
.editorconfig General: Instruct file editors not to trim trailing whitespace in markdown files. 2018-03-20 22:14:53 +00:00
.env Build Tools: Miscellaneous local-env improvements. 2019-08-12 08:28:33 +00:00
.gitignore Build Tools: Miscellaneous local-env improvements. 2019-08-12 08:28:33 +00:00
.jshintrc Build tools: Fix the travis:js build. 2018-12-24 13:53:11 +00:00
.npmrc Once upon a midnight dreary, while I coded, weak and weary, 2018-05-23 10:04:22 +00:00
.nvmrc Once upon a midnight dreary, while I coded, weak and weary, 2018-05-23 10:04:22 +00:00
.travis.yml Build/Test Tools: add php info to travis output 2019-09-14 19:27:46 +00:00
appveyor.yml Build/Test Tools: Remove the dependency on a globally installed Grunt. 2019-05-26 19:34:24 +00:00
composer.json Build/Test Tools: Specify PHP 5.6 as the required version of PHP in Composer. 2019-09-20 17:32:23 +00:00
composer.lock Build/Test Tools: Specify PHP 5.6 as the required version of PHP in Composer. 2019-09-20 17:32:23 +00:00
docker-compose.yml Build Tools: Pass the LOCAL_DIR environment variable through to the phpunit Docker container. 2019-08-23 01:55:28 +00:00
Gruntfile.js Accessibility: Replace wp-a11y.js with @wordpress/a11y package 2019-09-18 17:40:35 +00:00
jsdoc.conf.json Build Tools: Fix JSDoc configuration include paths. 2018-06-14 12:45:06 +00:00
package-lock.json Block Editor: Update the WordPress Packages to the ones used in the Gutenberg 6.5 release 2019-09-19 15:17:39 +00:00
package.json Block Editor: Update the WordPress Packages to the ones used in the Gutenberg 6.5 release 2019-09-19 15:17:39 +00:00
phpcs.xml.dist Coding Standards: Move the remaining PHPCS errors to report as warnings, and add Travis tests. 2019-07-19 07:47:16 +00:00
phpunit.xml.dist Coding Standards: Fix the remaining issues in /tests. 2019-07-08 00:55:20 +00:00
README.md Build Tools: Add a WordPress Development Environment. 2019-08-05 07:09:14 +00:00
webpack.config.js Build tools: Allow building WordPress to src. 2018-12-24 13:28:22 +00:00
wp-cli.yml Build/Tests: Default to running unit tests from src. 2019-01-09 10:09:02 +00:00
wp-config-sample.php General: Replace "Happy blogging" with "Happy publishing". 2019-01-08 04:29:06 +00:00
wp-tests-config-sample.php Tests: Revert [44509]. 2019-01-09 11:13:03 +00:00

WordPress

Build Status

Welcome to the WordPress development repository! Please check out our contributor handbook for information about how to open bug reports, contribute patches, test, documention, or get involved in any way you can.

Getting Started

WordPress is a PHP/MySQL-based project. We have a basic development environment that you can quickly get up and running with a few commands. First off, you will need to download and install Docker, if you don't have it already. After that, there are a few commands to run:

Development Environment Commands

Running these commands will start the development environment:

npm install
npm run build:dev
npm run env:start
npm run env:install

Additionally, npm run env:stop will stop the environment.

npm run env:cli runs the WP-CLI tool. WP-CLI has a lot of useful commands you can use to work on your WordPress site. Where the documentation mentions running wp, run npm run env:cli instead. For example, npm run env:cli help.

npm run test:php and npm run test:e2e run the PHP and E2E test suites, respectively.