Go to file
Jonathan Desrosiers 1bcd41b7c1 Upgrade/Install: Detect the presence of the native PHP JSON extension before updating.
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]), the related polyfills and workarounds have been removed (see [46205-46206,46208]).

However, even though the JSON extension is now included in PHP by default, it is still possible to disable the extension in a custom configuration. This change will prevent sites from upgrading if the JSON extension is disabled to prevent compatibility issues.

Props jrf, jorbin, dd32, desrosj.
Fixes #47699.

git-svn-id: https://develop.svn.wordpress.org/trunk@46455 602fd350-edb4-49c9-b593-d223f7449a82
2019-10-09 22:20:37 +00:00
src Upgrade/Install: Detect the presence of the native PHP JSON extension before updating. 2019-10-09 22:20:37 +00:00
tests REST API: Do not addslash when receiving meta arrays of non-string values. 2019-10-09 17:34:20 +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 Tools: Pass the current uid/gid to Docker containers. 2019-09-26 04:57:38 +00:00
Gruntfile.js Build/Test: Update Grunt Uglify options 2019-10-05 21:59:32 +00:00
README.md Build Tools: Add a WordPress Development Environment. 2019-08-05 07:09:14 +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: Move Composer script command line directives to the PHPCS ruleset. 2019-09-25 14:01:51 +00:00
composer.lock Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
docker-compose.yml Build Tools: Pass the current uid/gid to Docker containers. 2019-09-26 04:57:38 +00:00
jsdoc.conf.json Build Tools: Fix JSDoc configuration include paths. 2018-06-14 12:45:06 +00:00
package-lock.json Build/Test: Bump devDependencies for WordPress 5.3 2019-10-05 19:47:04 +00:00
package.json Build/Test: Bump devDependencies for WordPress 5.3 2019-10-05 19:47:04 +00:00
phpcompat.xml.dist Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
phpcs.xml.dist Build/Test Tools: Move Composer script command line directives to the PHPCS ruleset. 2019-09-25 14:01:51 +00:00
phpunit.xml.dist Code Modernization: Remove all code using a `version_compare()` with a PHP version older than PHP 5.6. 2019-09-20 22:01:36 +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

README.md

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.