Compare commits

...

296 Commits
5.7.8 ... 4.7.7

Author SHA1 Message Date
Pascal Birchler
896a5caad1 Tag 4.7.7
Built from https://develop.svn.wordpress.org/tags/4.7.7@42082


git-svn-id: http://core.svn.wordpress.org/tags/4.7.7@41911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-31 15:40:10 +00:00
Gary Pendergast
b14e1b3d42 Bump 4.7 branch to version 4.7.7.
Built from https://develop.svn.wordpress.org/branches/4.7@42070


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41899 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-31 13:13:33 +00:00
Gary Pendergast
cf1f0311c8 Database: Restore numbered placeholders in wpdb::prepare().
[41496] removed support for numbered placeholders in queries send through `wpdb::prepare()`, which, despite being undocumented, were quite commonly used.

This change restores support for numbered placeholders (as well as a subset of placeholder formatting), while also adding extra checks to ensure the correct number of arguments are being passed to `wpdb::prepare()`, given the number of placeholders.

Merges [41662], [42056] to the 4.7 branch.
See #41925.


Built from https://develop.svn.wordpress.org/branches/4.7@42058


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41887 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-31 12:34:34 +00:00
Dominik Schilling
0a70974b31 Taxonomy/Users: Use correct escaping function for URLs.
Merge of [41522] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@41524


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41357 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 21:21:35 +00:00
Dominik Schilling
f920f99c1c Bump 4.7 branch to version 4.7.6.
Built from https://develop.svn.wordpress.org/branches/4.7@41511


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41344 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 19:56:36 +00:00
Dominik Schilling
ec72da84f3 Bump 4.7 branch to version 4.7.3.
Built from https://develop.svn.wordpress.org/branches/4.7@41510


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41343 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 19:51:32 +00:00
Aaron Campbell
727aa4586a Database: Hardening to bring wpdb::prepare() inline with documentation.
`wpdb::prepare()` supports %s, %d, and %F as placeholders in the query string. Any other non-escaped % will be escaped.

Merges [41496] to 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@41498


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41331 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 18:12:33 +00:00
Aaron Campbell
8e19eed411 Database: Don’t trigger _doing_it_wrong() for null values in wpdb::prepare().
While `wpdb::prepare()` does not support null values (see #12819) they still appear in the wild like in the WordPress Importer and other plugins.

Merges [41483] to 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@41485


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41318 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 16:20:06 +00:00
Aaron Campbell
5b685405be Database: Hardening for wpdb::prepare()
Previously if you passed an array of values for placeholders, additional values could be passed as well. Now additional values will be ignored.

Merges [41470] to 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@41472


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41305 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 14:59:36 +00:00
John Blackbourn
2915a1c876 Filesystem API: Ensure filenames are valid before attempting to unzip them to ensure malformed file paths don't cause issues.
Merges [41457] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41459


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 14:38:34 +00:00
Aaron Campbell
2a7026d88f oEmbed: Add extra hardening around allowed HTML for improved sandboxing.
Merges [41448] to 4.7 branch.



Built from https://develop.svn.wordpress.org/branches/4.7@41451


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41284 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 13:48:35 +00:00
Dominik Schilling
af0877f0db TinyMCE: Improve the previews for shortcodes.
Merge of [41395] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41436


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41269 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 12:42:05 +00:00
Dominik Schilling
c259dff63c Customize: Ensure valid themes in the preview.
Merge of [41397] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41430


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41263 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 11:51:06 +00:00
Dominik Schilling
a0af012ed0 Taxonomy/Users: Provide a fallback for incorrect HTTP referrers.
Merge of [41398] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41418


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41251 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 11:12:08 +00:00
John Blackbourn
7c8fbd2966 General: Add missing URL-encoding and add extra hardening to plugin and template names when they're displayed in the admin area.
Merges [41412] to the 4.7 branch

See #13377

Built from https://develop.svn.wordpress.org/branches/4.7@41413


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41246 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 10:21:48 +00:00
Dominik Schilling
1e45c3e2fe Editor: Prevent adding javascript: and data: URLs through the inline link dialog.
Merge of [41393] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41401


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41234 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 10:16:08 +00:00
John Blackbourn
fae164a240 Build/Test tools: Trim the test matrix on Travis in order to speed up the 4.7 branch build.
This removes the PHP 7.0, 5.5, 5.4, 5.3, and nightly jobs.

Fixes #41707

Built from https://develop.svn.wordpress.org/branches/4.7@41307


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41138 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-08-22 21:41:32 +00:00
John Blackbourn
f8663be50e Build/Test Tools: Remove ancient UT ticket handling for the 4.7 branch.
See #40533

Merges [40523] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41305


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41137 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-08-22 19:59:36 +00:00
John Blackbourn
9cc990bb3e Build/Test tools: Use the latest in the 4.x and 6.x branches of PHPUnit when running tests on Travis for the 4.7 branch.
See #41472

Merges [41294] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41296


git-svn-id: http://core.svn.wordpress.org/branches/4.7@41136 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-08-22 17:11:09 +00:00
John Blackbourn
b98a29c182 Build: Switch PHP 5.2 and 5.3 to Travis' Ubuntu precise image
Starting today, Travis will begin switching the default image to `trusty`, which does not support PHP 5.2 or 5.3.

This is not a full fix, because Travis will be dropping `precise` support entirely in September (https://github.com/travis-ci/travis-ci/issues/8072).  However, it buys us some time until then.

See #41292

Merges [41072] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@41074


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-18 13:06:34 +00:00
John Blackbourn
61af9be9c6 Build/Test Tools: Fix PHP 5.2 compatibility for grandchild methods which expect exceptions to be raised.
This is due to `is_callable( 'parent::setExpectedException' )` not being supported on PHP 5.2 when the method being checked only exists on the grandparent class.

See #39822

Merges [40872] and [40873] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40876


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-06-05 10:42:38 +00:00
Konstantin Obenland
7783f8a29b Import Twenty Sixteen for the 4.7 branch.
See #36497.

Built from https://develop.svn.wordpress.org/branches/4.7@40855


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40706 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-30 22:57:36 +00:00
John Blackbourn
1802c0b26d Build/Test Tools: Add a missing class to the PHPUnit 6 back compat.
See #39822

Merges [40853] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40854


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-30 22:08:35 +00:00
Aaron Campbell
819af82764 Post-4.7.5 version bump for 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@40770


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40628 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 23:01:32 +00:00
Aaron Campbell
9fad803761 Bump 4.7 branch to version 4.7.5.
Built from https://develop.svn.wordpress.org/branches/4.7@40748


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40606 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 21:48:33 +00:00
Pascal Birchler
314556b55c Media: Simplify upload error message construction.
Merges [40736] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40737


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40595 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 18:00:35 +00:00
Pascal Birchler
79988bff38 REST API: JS Client - Enable connecting to multiple endpoints.
Enable connecting to multiple wp-api `endpoints`. Calling `wp.api.init` with a new `apiRoot` will parse the new endpoint's schema and store a new set of models and collections. A collection of 
connected endpoints is stored in `wp.api.endpoints`.

Props lucasstark.
Fixes #39683.

Merges [40364] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40735


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 16:35:33 +00:00
Aaron Campbell
a86f61290e Add nonce for updating file system credentials.
Merges [40723] to 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40724


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40582 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 14:51:35 +00:00
Weston Ruter
58075bfc88 Customize: Fix phpunit tests after [40704] due to logic inversion error.
Merge of [40716] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40717


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40580 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 14:37:35 +00:00
Dominik Schilling
2d7fa9d0dc Customize: Ignore invalid customization sessions.
Merge of [40704] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@40705


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40568 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 12:14:35 +00:00
Pascal Birchler
0f3180de02 Adjust post meta checks
Merges [40692] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40693


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40556 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 08:48:34 +00:00
Pascal Birchler
8ef530d469 Improve redirect handling
Merges[40689] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40690


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40553 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 08:40:36 +00:00
Pascal Birchler
031cbb0548 Whitelist post arguments in XML-RPC
Merges [40677] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40678


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40541 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-16 08:17:34 +00:00
Dion Hulse
22f5836c8c Bump Akismet external to 3.3.2
See #40002


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40508 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-12 04:08:46 +00:00
Aaron Jorbin
d2a0e52c43 Build/Test: Post Travis results to Slack from WordPress/wordpress-develop
Backports [40604] to 4.7

Now that the WordPress/wordpress-develop GitHub repo is syncing correctly, we can use it for Travis integration.

Props jorbin for getting the ball rolling so long ago, unprops jorbin because his Travis build can finally be retired. Props Pento.

Fixes #40712.

Built from https://develop.svn.wordpress.org/branches/4.7@40616


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40486 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-11 00:31:33 +00:00
Dion Hulse
7b810872a1 Bump Akismet external to 3.3.1
See #40002


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40437 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-02 23:36:14 +00:00
John Blackbourn
799bdcec00 Build/Test Tools: Backport various recent changes to the 4.7 branch.
* Add support for PHPUnit 6+.
* Add Composer files to the cache on Travis.
* Remove HHVM from the test infrastructure on Travis.

Merges [40536], [40538], [40539], and [40546] to the 4.7 branch.

See #40539
Fixes #39822, #40548

Built from https://develop.svn.wordpress.org/branches/4.7@40547


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40423 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-24 00:38:35 +00:00
Boone Gorges
820070e588 Restore support for taxonomy 'args' override when querying object terms.
[7520] introduced an undocumented feature whereby developers could
register a custom taxonomy with an 'args' parameter, consisting of
an array of config params that, when present, override corresponding
params in the `$args` array passed to `wp_get_object_terms()` when
using that function to query for terms in the specified taxonomy.

The `wp_get_object_terms()` refactor in [38667] failed to respect
this secret covenant, and the current changeset atones for the
transgression.

Ports [40513] to the 4.7 branch.

Props danielbachhuber.
Fixes #40496.

Built from https://develop.svn.wordpress.org/branches/4.7@40514


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40390 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-21 19:18:36 +00:00
Dion Hulse
0516c67beb List Tables: After [38703], [38706], and [40118], adjust the jQuery selector to make the selection of a range of checkboxes work again.
Unprop afercia.
Merges [40268] to the 4.7 branch.
Fixes #40056.

Built from https://develop.svn.wordpress.org/branches/4.7@40512


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40388 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-21 07:36:37 +00:00
Pascal Birchler
75de3e9c44 Post-4.7.4 version bump for 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@40509


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40385 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-20 18:54:36 +00:00
Pascal Birchler
8cf8ada93d Bump 4.7 branch to version 4.7.4.
Built from https://develop.svn.wordpress.org/branches/4.7@40487


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40363 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-20 16:21:36 +00:00
Andrew Ozz
84387613b6 TinyMCE: Fix cursor position after updating a wpview node. Fix hiding the inline toolbar on editor blur.
Props iseulde, azaozz.

Merges [40481] to the 4.7 branch.
Fixes #40480.

Built from https://develop.svn.wordpress.org/branches/4.7@40482


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40358 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-19 22:18:36 +00:00
Pascal Birchler
9e791361e1 Bump 4.7 branch to 4.7.4-RC1.
Built from https://develop.svn.wordpress.org/branches/4.7@40475


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40351 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-18 17:06:37 +00:00
Pascal Birchler
8e0e34aa23 4.7.4-RC
Built from https://develop.svn.wordpress.org/branches/4.7@40474


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40350 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-18 15:52:36 +00:00
Pascal Birchler
717e993b7c Twenty Seventeen: Bump version and update the changelog.
Updates changelog to link to Codex pages, like other default themes.

Props swissspidy, davidakennedy.
Fixes #40461.

Merges [40472] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40473


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40349 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-18 09:22:37 +00:00
Pascal Birchler
d9681fd881 Fix broken audio/video functions when sanitizing ID3 data
This fixes a bug where running `wp_kses_post_deep()` on all the ID3
tag data corrupted blob data.

Fixes #40075, #40085.

Merges [40400] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40460


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-17 13:00:35 +00:00
Pascal Birchler
a785107bf4 Twenty Seventeen: Correct heading hierarchy for posts on the front page.
When the posts page is on the front page or within a front page section, the heading hierarchy for the individual post titles needs to be adjusted accordingly.

Props joedolson, celloexpressions, davidakennedy.
Fixes #40264.

Merges [40458] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40459


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40335 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-17 10:24:38 +00:00
John Blackbourn
97572ef88b Build/Test tools: Reverse the order in which the Travis jobs run.
As a general rule, this means the fastest test jobs now run first because each subsequent version of PHP is faster than the previous. When a committer is patiently waiting for a Travis build to complete, they are at least more likely to see unexpected failures earlier than they otherwise would.

In addition, this updates the JavaScript test job to run on PHP 7.1.

Props netweb

See #39705

Merges [40434] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40435


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40333 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-15 17:44:37 +00:00
Pascal Birchler
50867ef8b8 Media: Ensure Crop Image is always visible.
Previously, the crop button in the media modal after uploading header images or similar was hidden and the task could not be completed.

Props karinedo, sagarprajapati, Cybr, mayurk.
Fixes #40152.

Merges [40428] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40429


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40327 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-14 09:34:35 +00:00
Pascal Birchler
aaf7176230 REST API: Allow fetching multiple terms at once via the slug parameter.
This matches a similar change previously made for posts (#38579) and an upcoming change for users (#40213).

Props wonderboymusic, MatheusGimenez, curdin.
Fixes #40027.

Merges [40376] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40427


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-14 08:54:35 +00:00
Pascal Birchler
981dc8e4c2 REST API: Allow fetching multiple users at once via the slug parameter.
This matches similar changes previously made for posts (#38579) and terms (#40027).

Props curdin, MatheusGimenez.
Fixes #40213.

Merges [40378] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40426


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40324 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-14 08:47:34 +00:00
Pascal Birchler
fd65a37c76 Media: Add filters to allow overriding slow media queries.
There are a couple of queries that do a full table scan of attachment posts to support features of the media library. Pending a more complete solution, allow overriding these queries via filters.

Props sboisvert, jnylen0.
See #31071.

Merges [40382] and [40421] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40425


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40323 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-14 08:40:37 +00:00
Pascal Birchler
3623849a05 Customize: Verify availability of history.replaceState (in IE9) before attempting to populate changeset_uuid parameter.
Props westonruter, timmydcrawford for testing.
Amends [39686].
See #39227.
Fixes #40405.

Merges[40405] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40420


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40318 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-13 12:32:35 +00:00
Andrew Ozz
1830ea20c4 Update TinyMCE to 4.5.6. Has many improvements and bug fixes. Changelog: https://github.com/tinymce/tinymce/blob/4.5.x/changelog.txt.
Merges [40398] to the 4.7 branch.

Props programmin, eclev91 and boldwater for finding and reporting this.
Fixes #40305.

Built from https://develop.svn.wordpress.org/branches/4.7@40419


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40317 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-13 01:52:38 +00:00
Pascal Birchler
e249f4aa32 Media: Improve handling of non-image files in wp_get_image_mime.
This prevents non-image fileypes from returning a mime type of "application/octet-stream" when `exif_imagetype()` returns `false`.

Props blobfolio.
Fixes #40017.

Merges [40397] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40403


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40310 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-10 14:28:36 +00:00
Pascal Birchler
6736569b43 Customize: Auto-expand a widget area section when expanding the Widgets panel if there is only one registered sidebar and it is active.
Introduces WP_Customize_Panel::$auto_expand_sole_section property which allows panels to opt-in to the behavior, which the Widgets panel is made to do by default.

Props delawski, westonruter, melchoyce.
Fixes #37471.

Merges [40395] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40402


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40309 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-10 12:36:34 +00:00
Pascal Birchler
df7c706b34 Customize: Fix behavior of clicking Delete Menu link and keep available nav menu items panel open when doing bulk deletion.
Props maguiar, adamsilverstein for testing.
Amends [39548].
Fixes #38953.

Merges [40396] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40401


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40308 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-10 12:29:38 +00:00
Pascal Birchler
0373a7bd29 Bootstrap/Load: Only load PasswordHash class once.
`require_once` prevents errors when loading WordPress and the class already exists.

See [40387].
Fixes #39445. 

Built from https://develop.svn.wordpress.org/branches/4.7@40389


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-06 18:23:35 +00:00
Pascal Birchler
4430527126 Build/Test Tools: Add assertNotFalse() method to WP_UnitTestCase and use it where appropriate.
Props peterwilsoncc.
Fixes #39219.

Merges [39919] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40388


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40295 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-06 18:20:33 +00:00
Pascal Birchler
2800ad60b0 Customize: Fix HTTPS navigation of site in preview on IE11.
Accounts for HTTPS links (port 443) where [40318] only accounted for HTTP links (port 80). Addresses issue in IE11 where the default port number is unexpectedly included on `link.host` for links dynamically created by scripts.

Props mattwiebe.
Amends [40318], [38890].
See #38409.
Fixes #40198.

Merges [40381] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40386


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40293 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-06 17:33:34 +00:00
Pascal Birchler
de5181d97b Multisite: Handle sites cache invalidation more granularly for option updates.
Previously `update_blog_option()` would trigger an invalidation of that site's entire cache although these changes did not affect the content of 
these caches. Furthermore changes to the special options `blogname`, `siteurl` and `post_count` should not invalidate the entire cache of that site, but only their respective site details cache. The option `home` now has the same behavior as it also belongs to the site details, but did not invalidate the cache at all previously.

Several new unit tests confirm these changes work as expected.

Fixes #40063.

Merges [40305] and [40333] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40385


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-06 17:27:35 +00:00
Pascal Birchler
bc0a2456cc Customize: Use is_header_video_active() as active_callback for external_header_video control instead of is_front_page().
Use the same `active_callback` as was supplied previously for the `header_video` control in [39240] where this instance was missed.

Amends [39240].
Props pratikshrestha.
See #38738.
Fixes #40308.

Merges [40379] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40384


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40291 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-06 17:21:34 +00:00
Pascal Birchler
0a91666a7e Customize: Fix reversal of nav menu item's type and object properties for
page stub added in customizer.

Amends [38906].
See #38164.
Fixes #40277.

Merges [40380] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40383


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40290 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-06 17:18:36 +00:00
Pascal Birchler
c0f0a7739a Customize: Fix failure to collapse expanded sections and panels that become deactivated.
Improve jsdoc for `onChangeActive` function. Restores fix from [34557] which got dropped in [38648].

Props dlh, westonruter.
See #34391, #33509.
Fixes #39430.

Merges [40304] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40375


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40282 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:20:25 +00:00
Pascal Birchler
c12fcf422a Twenty Seventeen: Use esc_attr_e() for translatable strings in HTML attributes.
Props bor0.
Fixes #40216.

Merges [40311] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40374


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40281 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:19:51 +00:00
Pascal Birchler
cafbb22729 Twenty Seventeen: Declare jQuery as a dependency for navigation.js.
Props chesio.
Fixes #40224.

Merges [40315] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40373


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40280 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:19:18 +00:00
Pascal Birchler
a394c05654 Customize: Use get_user_locale() in customizer body class.
Otherwise CSS specific to the site's locale would be applied, even though the customizer is displayed in the user's locale.

See #29783.
Fixes #40271.

Merges [40368] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40369


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40276 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:16:34 +00:00
Pascal Birchler
5a10b5c879 Administration: Fix minor misalignments caused by the button-link CSS class.
After [40059] the CSS class `button-link` uses `text-align: left` by default.
This change now requires to limit as much as possible the use of `button-link`
to controls that should really look like links and to explicitly set
`text-align: center` in a few other cases.

Fixes #39983.

Merges [40358] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40367


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:15:18 +00:00
Pascal Birchler
255819e18a Customize: Fix selective refresh when customizing the 404 template.
Overrides the 404 status during partial refresh requests to serve back 200 so that the request is not deemed a failure and invoke the fallback behavior (full refresh).

See #27355.
Fixes #40018.

Merges [40316] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40366


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40273 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:14:45 +00:00
Pascal Birchler
1b7455c6d3 Quick/Bulk Edit: Fix the Tag suggestions position on the Bulk Edit textarea.
Always passes the complete `position` object to the jQuery autocomplete widget.
Also checks if an autocomplete instance already exists on the Bulk Edit textarea.

Props davidbenton.
Fixes #40242.

Merges [40357] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40365


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40272 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-04-05 02:14:11 +00:00
Boone Gorges
c7782be54b Invalidate term query caches when setting or deleting term relationships.
Prior to 4.7, term relationships - as set by `wp_set_object_terms()` or
`wp_remove_object_terms()` - did not affect the term query cache. The
introduction of the 'object_ids' parameter in 4.7 means that the query
cache must be aware of object-term relationships. As such, the
'last_changed' incrementor is now invalidated when term relationships
are modified.

This bug only reared its head when delaying term counting, because term
counting performs its own term query cache invalidation.

Merges [40353] to the 4.7 branch.

Props mboynes.
Fixes #40306.

Built from https://develop.svn.wordpress.org/branches/4.7@40354


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40261 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-30 16:57:15 +00:00
Pascal Birchler
511b47afd9 Customize: Prevent client-side validation from being cleared when no corresponding server-side validation is present.
See #36944.
Fixes #39770.

Merges [40319] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40345


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40252 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-28 07:22:37 +00:00
Pascal Birchler
6f7014a74d Customize: Trailingslash the home nav menu item URL in starter content.
This prevents an additional 301 redirect when clicking on the nav menu item, and it also prevents a scenario where the auth cookie may not be passed 
and cause an authentication error when navigating in the customizer.

Props dlh, swissspidy.
Fixes #40112.

Merges [40300] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40338


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40245 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-27 09:29:35 +00:00
Pascal Birchler
7f659d9ea1 REST API: Confirm the parent post object of an attachment exists in WP_REST_Posts_Controller::check_read_permission().
Avoid a PHP Error when attempting to embed the parent post of an attachment, when the parent post ID is invalid. Instead check if the parent post 
object exists before checking the read permission for the parent post.

Props GhostToast.
Fixes #39881. 

Merges [40306] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40337


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40244 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-27 09:24:41 +00:00
Pascal Birchler
a56cceb25f REST API: Add gmt_offset and timezone_string to the base /wp-json response.
The site's current timezone offset is an important piece of information for any REST API client that needs to manipulate dates.  It has not been 
previously available.

Expose both the `gmt_offset` (the site's current offset from UTC in hours) and `timezone_string` (which also provides information about daylight 
savings time) via the "site info" endpoint (the base `/wp-json` response).

Also update the `wp-api-generated.js` fixture file with the changes to the default API responses.

Props sagarkbhatt.
Fixes #39854.

Merges [40238] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40336


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40243 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-27 07:09:41 +00:00
Pascal Birchler
0b6084b362 Customize: Fix navigation of site in preview on IE11.
Addresses issue in IE11 where the default port number of `:80` is unexpectedly included on `link.host` for links dynamically created by scripts.

Props westonruter, afercia for testing.
See #38409.
Fixes #40198.

Merges [40318] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40335


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40242 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-27 06:21:38 +00:00
Pascal Birchler
4876c17ef5 Customize: Harden site_icon control template to account for when full image size is missing.
Props aussieguy123, westonruter.
See #36749.
Fixes #40010.

Merges [40314] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40332


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40239 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-25 15:26:33 +00:00
Pascal Birchler
52f0c65fc5 Customize: Prevent links to customize.php from being generated which have query vars from wp_removable_query_args() present.
Props dlh.
See #23367, #32692.
Fixes #31850.

Merges [40313] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40331


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40238 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-25 13:35:38 +00:00
Pascal Birchler
e1f9e1eaa0 Posts, Post Types: Add missing REST API properties to WP_Post_Type class.
Props danielbachhuber.
Fixes #39986.

Merges [40302] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40329


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40236 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-24 19:05:34 +00:00
Pascal Birchler
a1b4295ba7 Taxonomy: Add missing REST API properties to WP_Taxonomy class.
Props danielbachhuber.
Fixes #39987.

Merges [40303] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40328


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40235 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-24 19:04:38 +00:00
Pascal Birchler
ca47fafaa9 List Tables: After [38703], [38706], and [40118], adjust the jQuery selector to make the selection of a range of checkboxes work again.
Unprop afercia.
Fixes #40056.

Merges [40268] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40327


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40234 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-24 18:50:35 +00:00
Pascal Birchler
2ea46dbe7f Themes: Add filter for excluding directories from being scanned for template files.
Exclude 'node_modules' directories from paths searched in `WP_Theme::scandir()`. Introduces the `theme_scandir_exclusions` filter to allow sites to 
exclude any other paths like `bower_components` or `vendor` from being searched for template files.

Props lukasbesch, dd32, swisspidy, rachelbaker. 
Fixes #38292.

Merges [40301] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40326


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40233 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-24 18:44:37 +00:00
Pascal Birchler
05655c5d1a REST API: Use get_gmt_from_date() when preparing a draft post for response.
This prevents wrong dates when dealing with DST, see [40115] and [40284].

Props nerrad.
Fixes #40136.

Merges [40284] and [40324] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@40325


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40232 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-24 17:53:36 +00:00
John Blackbourn
bfa0cc8b91 Login and Registration: Avoid a potentially incorrect value for the cookie hash on multisite installations that don't have a value in the siteurl network option.
This reverts [38619].

See #34084, #39497

Merges [40320] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40321


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40228 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-23 19:03:37 +00:00
Boone Gorges
913475ecdf Fix the formatting of $taxonomies parameter of 'wp_get_object_terms' filter.
[38667]  changed the way that the filter parameters are built. That
changeset didn't fully account for the pre-4.7 format of `$taxonomies`.

Merge of [40290] to the 4.7 branch.

Props ig_communitysites.
Fixes #40154.

Built from https://develop.svn.wordpress.org/branches/4.7@40291


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40198 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-14 18:43:37 +00:00
John Blackbourn
49dea066cc Build/Test tools: Get Travis builds working on HHVM again.
This change moves to specifying the PHPUnit version for all PHP versions, and fixes an issue where the Composer global bin directory is not at `~/.composer/vendor/bin` on the boxes that are used for HHVM builds.

See #40100

Merges [40269] and [40271] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40272


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40191 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-11 00:06:35 +00:00
John Blackbourn
7bebbc7006 Build/Test tools: Don't override the wp_set_auth_cookie() and wp_clear_auth_cookie() functions.
Overriding pluggable functions in the test suite is asking for trouble in the future. In addition, it means the test suite can't be guaranteed to behave the same as core.

This instead introduces a `send_auth_cookies` filter which can be hooked in during the test suite to prevent these functions from attempting to send cookie headers to the client.

Fixes #39367

Merges [40263] and [40264]  to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40265


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40185 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-10 15:06:34 +00:00
Dominik Schilling
f0be016b5e Build/Test Tools: Update .travis.yml to include latest improvements from trunk.
* Explicitly use PHPUnit 5.7 for the PHP 7 builds on Travis.
* On Travis CI install and use the node version which is specified in package.json.
* Add some more debugging to Travis and bring the format of the Xdebug fix inline with branches.

Merge of [40255] and [40257-40259] to the 4.7 branch.

Props netweb, johnbillion.
See #35105, #39822, #40086.
Built from https://develop.svn.wordpress.org/branches/4.7@40260


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40182 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-09 22:02:39 +00:00
John Blackbourn
c498f12182 Build/Test tools: Remove the unnecessary clone of the twentysixteen repo.
This is no longer needed since #31550.

Fixes #40066

Merges [40252] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40253


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40175 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-09 01:36:36 +00:00
John Blackbourn
92357b6a80 Build/Test tools: In Travis, skip some tests when not on trunk.
This skips time sensitive tests (copyright year and PHP/MySQL version requirements) when tests are run on branches on Travis.

Props netweb, jorbin

Fixes #39486

Merges [40241] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40250


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-08 00:52:36 +00:00
John Blackbourn
d2c4cb36db Build/Test Tools: Call wp_head() and wp_footer() in the theme used during tests.
See #31550
Fixes #39988

Merges [40235] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40236


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40166 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-07 01:35:33 +00:00
John Blackbourn
7b45ddd449 Build/Test Tools: Disable Xdebug when testing on Travis to increase performance.
See #39978

Built from https://develop.svn.wordpress.org/branches/4.7@40225


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40164 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-07 00:21:32 +00:00
Sergey Biryukov
5ef79ffc04 Post-4.7.3 version bump for 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@40224


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40163 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 18:52:35 +00:00
James Nylen
8622d105f5 Bump 4.7 branch to version 4.7.3.
Built from https://develop.svn.wordpress.org/branches/4.7@40202


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40141 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 15:56:33 +00:00
John Blackbourn
882ac7830f Press This: Verify intent before fetching in-page resources using Press This.
Props vortfu

Merges [40195] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40196


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40135 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 13:56:35 +00:00
Aaron Campbell
dfb508f59d Strip control characters before validating redirect.
Merges [40183] to 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40184


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40123 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 13:40:35 +00:00
John Blackbourn
0066640479 Taxonomy: Correct the formatting of HTML entities when generating the screen reader text for tag removal.
Props adamsilverstein

Merges [40181] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40182


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40121 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 13:16:35 +00:00
Aaron Campbell
177b19d9ec Plugins: Add file check to plugin deletions.
Merges [40169] to 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@40170


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40109 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 12:58:35 +00:00
Dominik Schilling
25e3338dbc Embeds: URL encode YouTube video IDs for broader compatibility.
Merge of [40160] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@40161


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40100 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 12:04:34 +00:00
Jeremy Felt
a80351f7ed Validate video and audio metadata.
merge of [40148] to the 4.7 branch

Built from https://develop.svn.wordpress.org/branches/4.7@40149


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40088 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-06 08:03:35 +00:00
Dion Hulse
a649dd59b7 Bump Akismet External to 3.3.
git-svn-id: http://core.svn.wordpress.org/branches/4.7@40082 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-02 03:15:15 +00:00
Dion Hulse
58acc1c53f Bump the version after the 4.7.3-RC1 packaging.
Built from https://develop.svn.wordpress.org/branches/4.7@40141


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40078 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-28 00:16:33 +00:00
Dion Hulse
931b5a10ac Version bump for WordPress 4.7.3-RC1
Built from https://develop.svn.wordpress.org/branches/4.7@40140


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40077 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-28 00:10:36 +00:00
Dominik Schilling
6485764f43 REST API: Allow setting post formats even if they are not supported by the theme.
A `post_format` not used by the current theme, but supported by core is not a wrong/broken piece of information. It's just not used at this point in time. Therefore we should allow setting and retrieving any of the standard post formats supported in core, even if the current theme doesn't use them.

After this commit, a post's `format` value can survive a round trip through the API, which is a good general design principle for an API.

Merge of [40120] and [40121] to the 4.7 branch.

Props JPry, iseulde, davidakennedy, Drivingralle.
Fixes #39232.
Built from https://develop.svn.wordpress.org/branches/4.7@40137


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40074 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 20:03:37 +00:00
Dominik Schilling
e7b04993a6 REST API: Fix behavior of sticky posts filter when no posts are sticky.
Previously, when getting posts from the API with `sticky=true`, if there were no sticky posts set, the query would return all posts  as if the `sticky` argument was not set.  In this situation, the query should return an empty array instead.

A `sticky=true` query that should return an empty array (in the previous situation, or with `include` and no intersecting post IDs) was also broken in that it would query the post with ID 1.

Finally, this commit significantly improves test coverage for the `sticky` filter argument, including direct testing of the `WHERE` clauses generated by `WP_Query`.

Merge of [40037] and [40122] to the 4.7 branch.

Props ryelle, jnylen0.
See #39079.
Fixes #39947.
Built from https://develop.svn.wordpress.org/branches/4.7@40136


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40073 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 19:54:39 +00:00
Joe McGill
d9ce7b2739 Media: Reset Exif orientation after rotate in WP_Image_Editor_Imagick.
Due to inconsistencies in the way browsers handle Exif orientation data,
if a user manually rotates an image within WordPress, set the Exif orientation to
the default (1) so that the image displays with the same rotation/flip in every browser.

Props sanchothefat, triplejumper12, joemcgill, azaozz, markoheijnen, mikeschroder.
Merges [40123] and [40129] to the 4.7 branch.
Fixes #37140. See #14459.

Built from https://develop.svn.wordpress.org/branches/4.7@40135


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 19:33:35 +00:00
Joe McGill
4771761186 Media: Reduce failing uploads following 4.7.1.
[39831] introduced more strict MIME type checking for uploads, which
resulted in unintetionally blocking several filetypes that were
previously valid. This change uses a more targeted approach to MIME
validation to restore previous behavior for most types.

Props blobfolio, iandunn, ipstenu, markoheijnen, xknown, joemcgill.
Merges [40124] and [40125] to the 4.7 branch.
Fixes #39550, #39552.

Built from https://develop.svn.wordpress.org/branches/4.7@40134


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 19:28:34 +00:00
Joe McGill
498f71615f Media: Keep PDF previews from overwriting files.
Since support for PDF previews were added in [38949], it's possible
that the generated image file could overwrite an existing image file
with the same name. This uses wp_unique_filename() to avoid this
issue and adds a '-pdf' identifier on the end of filenames.

Props gitlost, desrosj, mikeschroder, joemcgill.
Merges [40130] and [40131] to the 4.7 branch.
Fixes #39875. See #31050.

Built from https://develop.svn.wordpress.org/branches/4.7@40133


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40070 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 19:25:34 +00:00
Joe McGill
c2a90ea28d Media: Restore correct upload errors displaying after [37610].
Props codegeass, MatheusGimenez, joemcgill.
Merges [40126] to the 4.7 branch.
Fixes #39516.

Built from https://develop.svn.wordpress.org/branches/4.7@40132


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40069 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-27 19:21:36 +00:00
Sergey Biryukov
ecf9c19e04 Plugins: After [38703], adjust the selector for checkbox selection to account for nested tables.
Props afercia, swissspidy, reldev.
Merges [40118] to the 4.7 branch.
Fixes #39739.
Built from https://develop.svn.wordpress.org/branches/4.7@40119


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40056 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 23:13:34 +00:00
Sergey Biryukov
d66cefb840 REST API: JavaScript client - improve route discovery for custom namespaces.
Fix parsing of custom namespace routes. Transform class names, removing dashes and capitalizing each word/route part so a route path of `widgets/recent-posts` becomes a collection with the name `WidgetsRecentPosts`. Correct parent route part when routes are longer than expected, reversing parse direction.

Props westonruter, jazbek, adamsilverstein, jnylen0.
Merges [40074] and [40109] to the 4.7 branch.
Fixes #39561.
Built from https://develop.svn.wordpress.org/branches/4.7@40117


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40054 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 22:48:37 +00:00
Sergey Biryukov
b25d41d205 REST API: Add QUnit tests for wp-api.js and PHPUnit fixture generation.
Add QUnit tests: verify that wp-api loads correctly, verify that the expected base models and collections exist and can be instantiated, verify that collections contain the correct models, verify that expected helper functions are in place for each collection.

The QUnit tests rely on two fixture files: `tests/qunit/fixtures/wp-api-generated.js` contains the data response from each core endpoint and is generated by running the PHPUnit `restapi-jsclient` group. `tests/qunit/fixtures/wp-api.js` maps the generated data to endpoint routes, and overrides `Backbone.ajax` to mock the responses for the tests.

Add PHPUnit tests in `tests/phpunit/tests/rest-api/rest-schema-setup.php`. First, verify that the API returns the expected routes via `server->get_routes()`. Then, the `test_build_wp_api_client_fixtures` test goes thru each endpoint and requests it from the API, tests that it returns data, and builds up the data for the mocked QUnit tests, saving the final results to `tests/qunit/fixtures/wp-api-generated.js`.

Add a new grunt task `restapi-jsclient` which runs the phpunit side data generation and the qunit tests together.

Props jnylen0, welcher, adamsilverstein, netweb, ocean90, rachelbaker.
Merges [40058], [40061], [40065], [40066], [40077], and [40104] to the 4.7 branch.
Fixes #39264.
Built from https://develop.svn.wordpress.org/branches/4.7@40116


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40053 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 22:34:34 +00:00
Sergey Biryukov
9dac8e173f REST API: Shim post_date_gmt for drafts / empty dates in the REST API.
Internally, WordPress uses a special `post_date_gmt` value of `0000-00-00 00:00:00` to indicate that a draft's date is "floating" and should be updated whenever the post is saved. This makes it much more difficult for API clients to know the correct date of a draft post.

This commit provides a best guess at a `date_gmt` value for draft posts in this situation using the `date` field and the site's current timezone offset.

Props joehoyle, jnylen0.
Merges [40108] to the 4.7 branch.
Fixes #38883.
Built from https://develop.svn.wordpress.org/branches/4.7@40115


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40052 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 22:03:34 +00:00
Sergey Biryukov
68740ca5a1 REST API: Fix multiple issues with setting dates of posts and comments.
This commit modifies the `rest_get_date_with_gmt` function to correctly parse local and UTC timestamps with or without timezone information.

It also ensures that the REST API can edit the dates of draft posts by setting the `edit_date` flag to `wp_update_post`.

Overall this commit ensures that post and comment dates can be set and updated as expected.

Props jnylen0.
Merges [40101] to the 4.7 branch.
Fixes #39256.
Built from https://develop.svn.wordpress.org/branches/4.7@40114


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40051 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 21:59:35 +00:00
Sergey Biryukov
f980f4ca90 REST API: Correctly parse body parameters for DELETE requests.
DELETE was inadvertently omitted from the list of non-POST HTTP methods that should be able to accept body parameters. Parameters passed to DELETE requests as JSON are already parsed correctly; this commit fixes application/x-www-form-urlencoded parameters as well.

Props mnelson4.
Merges [40105] to the 4.7 branch.
Fixes #39933.
Built from https://develop.svn.wordpress.org/branches/4.7@40113


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40050 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 20:56:34 +00:00
Andrew Ozz
d95e0f8116 TinyMCE: preserve empty image alt attributes.
Props afercia.
Merges [40110] to the 4.7 branch.
Fixes #39912.
Built from https://develop.svn.wordpress.org/branches/4.7@40112


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40049 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 20:52:35 +00:00
Sergey Biryukov
3ded99cef7 REST API: Do not allow access to users from a different site in multisite.
It has been unintendedly possible to both view and edit users from a different site than the current site in multisite environments. Moreover, when passing roles to a user in an update request, that user would implicitly be added to the current site.

This changeset removes the incorrect behavior for now in order to be able to provide a proper REST API workflow for managing multisite users in the near future. Related unit tests have been adjusted as well.

Props jnylen0, jeremyfelt, johnjamesjacoby.
Merges [40106] to the 4.7 branch.
Fixes #39701.
Built from https://develop.svn.wordpress.org/branches/4.7@40111


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40048 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-24 20:46:35 +00:00
Dion Hulse
f609be0542 Customize: Prevent vertical clipping of thumbnail in header image customizer control.
Removes some method overrides on `wp.customize.HeaderTool.ChoiceView` introduced in [27497].

See #21785.
Props bradyvercher, westonruter.
Merges [40082] to the 4.7 branch.
Fixes #38559.

Built from https://develop.svn.wordpress.org/branches/4.7@40100


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 07:05:36 +00:00
Dion Hulse
876e894635 Customize: Extend auto-draft life of a customize_changeset post whenever modified.
Keep bumping the date for the auto-draft to preserve it from garbage-collection via `wp_delete_auto_drafts()` after 7 days.

Props westonruter.
Merges [40041] to the 4.7 branch.
See #30937.
Fixes #39713.

Built from https://develop.svn.wordpress.org/branches/4.7@40099


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40036 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 07:03:34 +00:00
Dion Hulse
02789248ca Customize: Allow custom post types to be used in starter content.
Changes `WP_Customize_Nav_Menus::insert_auto_draft_post()` so it can be invoked for a `post_type` that is not registered (yet).

Props westonruter.
Merges [39924] to the 4.7 branch.
See #38615, #38114.
Fixes #39610.

Built from https://develop.svn.wordpress.org/branches/4.7@40098


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40035 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 07:02:34 +00:00
Dion Hulse
f5b00a1534 Customize: Ensure edit shortcuts get re-created for nested partials when a parent partial is refreshed.
Fixes issue where the edit shortcut for a nav menu gets dropped when the containing Custom Menu widget is updated.

Props westonruter.
Merges [40055] to the 4.7 branch.
See #39101.
Fixes #39353.

Built from https://develop.svn.wordpress.org/branches/4.7@40097


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40034 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 06:59:31 +00:00
Dion Hulse
bade579fc3 Customize: Skip intercepting non-HTTP(S) links in customizer preview just as jump links are ignored.
Ensures that links with `javascript:`, `mailto:` and other protocols work as expected in the customizer preview.

Props westonruter.
Merges [40064] to the 4.7 branch.
Fixes #39797.

Built from https://develop.svn.wordpress.org/branches/4.7@40096


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40033 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 06:56:34 +00:00
Dion Hulse
de7de0a0d6 Customize: Always enqueue customize-preview stylesheet in the customizer preview to style selective refresh and visual edit shortcuts.
Enqueues the style along with the `customize-preview` script in the manager instead of via the `widgets` and `nav_menus` components, ensuring that the stylesheet is loaded for users who cannot manage widgets or nav menus.

Props dlh, westonruter.
Merges [39951] to the 4.7 branch.
See #27403.
Fixes #39498.

Built from https://develop.svn.wordpress.org/branches/4.7@40095


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40032 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 06:54:35 +00:00
Dion Hulse
a0edd9b006 Customize: Trim whitespace from nav menu item titles so that the underlying object's original title appears as input placeholder and in the control's title.
Whitespace is trimmed from titles in PHP when saved in any case, so this aligns the client-side behavior with what happens on the server.

Amends [38618].
Merges [39994] to the 4.7 branch.
See #38015.
Fixes #39600.

Built from https://develop.svn.wordpress.org/branches/4.7@40094


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40031 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 06:52:35 +00:00
Dion Hulse
2a891e4456 Customize: Update customize.php URL with changeset_uuid param the instant a change is made instead of deferring until the changeset update request responds.
Props asalce, westonruter.
Merges [39686] to the 4.7 branch.
Fixes #39227.

Built from https://develop.svn.wordpress.org/branches/4.7@40093


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 06:50:41 +00:00
Dion Hulse
d1b2273838 Menus: Prevent notice thrown in class-walker-page.php.
Calling `Walker_Page::walk()` directly was causing an `Undefined index: item_spacing` notice to be thrown, this adds an `isset()` check to prevent it.

Props bhargavbhandari90, peterwilsoncc.
Merges [39949] to the 4.7 branch.
Fixes #39564.

Built from https://develop.svn.wordpress.org/branches/4.7@40092


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40029 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 03:51:35 +00:00
Dion Hulse
e18e5acce8 Formatting: fix wpautop() to stop adding paragraph tags around <figcaption>.
Props azaozz, pbearne for tests.
Merges [39912], [39914] to the 4.7 branch.
Fixes #39307 for 4.7.


Built from https://develop.svn.wordpress.org/branches/4.7@40091


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-21 03:42:38 +00:00
Sergey Biryukov
f65de13e9f About page: Remove autoplay and loop attributes on "Theme Starter Content", "Edit Shortcuts", and "Video Headers" videos, originally added as a part of [39512].
For UX and accessibility reasons, it's better to always avoid playing videos automatically.

Props bor0.
Merges [40089] to the 4.7 branch.
Fixes #39560.
Built from https://develop.svn.wordpress.org/branches/4.7@40090


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-20 13:09:34 +00:00
Dion Hulse
6e1fe24284 Customize: Ensure root values are accessible in multidimensional custom setting types.
Fixes bad conditions in `WP_Customize_Setting::get_root_value()` and `WP_Customize_Setting::set_root_value()`.

Props dlh, westonruter.
Amends [35007].
Merges [40036] to the 4.7 branch.
See #32103.
Fixes #36952.

Built from https://develop.svn.wordpress.org/branches/4.7@40088


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40025 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-20 06:50:50 +00:00
Dion Hulse
bc0cb365a3 Customize: Introduce get_header_video_url filter for the return value of get_header_video_url().
Props sanket.parmar, celloexpressions, SergeyBiryukov.
Merges [40045], [40086] to the 4.7 branch.
Fixes #39512.

Built from https://develop.svn.wordpress.org/branches/4.7@40087


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-20 06:49:53 +00:00
Dion Hulse
6f0ebaba78 Feeds: Prevent empty feeds from returning 404 errors.
Partial revert of [38929].

This reverts the source code from the commit for #30210 to prevent valid but empty feeds from returning 404 file not found errors for the home and custom feeds.

The tests in the commit that remain applicable are retained.

Props pavelevap for reporting, stevenkword for initial patch, peterwilsoncc.
See #30210.
Merges [40030] to the 4.7 branch.
Fixes #39157.

Built from https://develop.svn.wordpress.org/branches/4.7@40085


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40022 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-20 06:38:48 +00:00
Dion Hulse
cb22496f4c REST API: JavaScript client should use _.extend when merging objects.
Correct an issue during the client's dynamic route discovery in `wp.api.utils.decorateFromRoute` where `_.union` potentially failed if used on objects.

Props ketuchetan, adamsilverstein.
Merges [40040] to the 4.7 branch.
Fixes #39341.

Built from https://develop.svn.wordpress.org/branches/4.7@40084


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-20 06:35:48 +00:00
Dion Hulse
5789e5f074 Taxonomy: Disallow overriding the name property when registering a taxonomy.
Props wpfo for initial patch, swissspidy.
Merges [40049] to the 4.7 branch.
Fixes #39308.

Built from https://develop.svn.wordpress.org/branches/4.7@40083


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40020 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-20 06:16:53 +00:00
Rachel Baker
2dda813ae2 REST API: Include the status property in view context responses from the Posts endpoints.
Previously the status for a Post (or other post_types) was only exposed under the `edit` context, which doesn't really make much sense considering we support querying by post status without authentication. Originally introduced in v2.0 beta 1: 69f617d749 without any explanation in the commit message.

Props dhanendran, jnylen0, rachelbaker.
Merges [40080] to the 4.7 branch.
Fixes #39466.

Built from https://develop.svn.wordpress.org/branches/4.7@40081


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40018 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-19 04:36:32 +00:00
Rachel Baker
4bd52ccd1d REST API: Correctly serve the index with PATH_INFO
When hitting the index, `untrailingslashit()` would make the REST route empty, which would then use the fallback inside WP_REST_Server. This isn't a problem most of the time, but WP_REST_Server contains a fallback to PATH_INFO. Combined with PATH_INFO permalinks, this would give a 404 on the API index, as it attempts to look up a route for "/wp-json/".

Props ccprog.
Merges [39923] to the 4.7 branch.
Fixes #39432.

Built from https://develop.svn.wordpress.org/branches/4.7@40079


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40016 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-19 03:28:34 +00:00
Rachel Baker
a51de29064 REST API: Cast revision author ID to int.
The `post_author` field is a string internally, but we need to cast it to an integer in the REST API. This was already done for posts, but not for revisions. The field is already declared as an integer in both controllers.

Props jnylen0.
Merges [40063] to the 4.7 branch.
Fixes #39871.

Built from https://develop.svn.wordpress.org/branches/4.7@40078


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40015 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-19 03:19:37 +00:00
Sergey Biryukov
c884f781e1 Media: In wp_unique_filename(), use explicit type casting when incrementing $number.
This prevents the "non-numeric value encountered" warning in PHP 7.1, caused by trying to increment an empty string on the first loop iteration.

Props drrobotnik for initial patch.
Merges [40039] to the 4.7 branch.
Fixes #39774.
Built from https://develop.svn.wordpress.org/branches/4.7@40075


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40012 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-17 21:24:35 +00:00
Dion Hulse
297220b740 Media: Avoid PHP Warnings in get_post_galleries() when processing empty [gallery] shortcodes and avoid returning the incorrect results when the global $post does not match the provided post ID.
Props dd32, joemcgill, seanchayes.
Merges [40070] to the 4.7 branch.
Fixes #39277, #39304.

Built from https://develop.svn.wordpress.org/branches/4.7@40071


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40008 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-17 06:47:34 +00:00
Dion Hulse
1ffeb0f19f HTTP API: Restore backwards compatibility with the http_api_curl filter - it expects that the handle parameter is passed as a reference, however [39212] missed that.
Props pento.
Merges [40068] to the 4.7 branch.
Fixes #39783.

Built from https://develop.svn.wordpress.org/branches/4.7@40069


git-svn-id: http://core.svn.wordpress.org/branches/4.7@40006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-02-17 05:07:33 +00:00
Aaron Campbell
aa89522a9b Post-4.7.2 version bump for 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@40018


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39955 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 21:58:35 +00:00
Aaron Campbell
665617103b Fix version to 4.7.2 not 4.7.3.
Built from https://develop.svn.wordpress.org/branches/4.7@39997


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39934 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 18:19:35 +00:00
Aaron Campbell
befa21d88e Bump 4.7 branch to version 4.7.2.
Built from https://develop.svn.wordpress.org/branches/4.7@39995


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39932 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 18:14:35 +00:00
Boone Gorges
89d7d9e70f Revert to pre-4.7 behavior for fetching object instances by id.
This changeset reverts [38381], which caused inconsistencies in the way the
REST API fetches posts and other objects.

Merge of [39992] to the 4.7 branch.

See #38792, #37738.

Built from https://develop.svn.wordpress.org/branches/4.7@39993


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39930 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 16:57:32 +00:00
John Blackbourn
fa47298720 Posts, Post Types: When using Excerpt mode on the Posts list table, ensure the excerpt output matches what was manually entered into the Excerpt field.
Merges [39956] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39990


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39927 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 15:12:34 +00:00
Dominik Schilling
ad0f68291a Press This: Do not show Categories & Tags UI for users who cannot assign terms to posts anyways.
Merge of [39968] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@39969


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39906 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 14:01:34 +00:00
Dominik Schilling
599e703836 REST API: Unify object access handling for simplicity.
Rather than repeating ourselves, unifying the access into a single method keeps everything tidy. While we're at it, add in additional schema handling for common parameters.

Merge of [39954] to the 4.7 branch.

See #38792.
Built from https://develop.svn.wordpress.org/branches/4.7@39957


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39894 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 13:47:34 +00:00
Dominik Schilling
5960939cca Query: Ensure that queries work correctly with post type names with special characters.
Merge of [39952] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@39953


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-26 13:36:37 +00:00
Aaron Campbell
7b45f8189d Post-4.7.1 version bump for 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@39883


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39820 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 21:36:35 +00:00
Aaron Campbell
281e5e828a Only show major version in readme.html for 4.7 branch
Built from https://develop.svn.wordpress.org/branches/4.7@39871


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39808 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 17:46:33 +00:00
Joe McGill
0df6499c8d Media: Fix exif_imagetype check in wp_get_image_mime
This is a follow up to [39831].

Merges [39850] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39851


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39788 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 16:38:32 +00:00
Aaron Campbell
5094cbd599 Bump 4.7 branch to version 4.7.1.
Built from https://develop.svn.wordpress.org/branches/4.7@39845


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39783 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 15:15:35 +00:00
Aaron Campbell
39b785c7f9 REST API: Change which users are shown in the users endpoint.
Only show users that have authored a post of a post type that has `show_in_rest` set to true.

Props rachelbaker, jnylen0.
Merges [39843] to 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39844


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39782 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 14:49:33 +00:00
Joe McGill
75df12f322 Media: Improve image filetype checking.
This adds a new function `wp_get_image_mime()` which is used by
`wp_check_filetype_and_ext()` to validate image files using
`exif_imagetype()` if available instead of `getimagesize()`.

`getimagesize()` is less performant than `exif_imagetype()` and is
dependent on GD. If `exif_imagetype()` is not available, it falls back to
`getimagesize()` as before.

If `wp_check_filetype_and_ext()` can't validate the filetype, we now return
`false` for ext/MIME values.

Merges [39831] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39832


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39770 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 13:12:34 +00:00
Dominik Schilling
3176a085da Updates: Translate plugin data on the Updates screen.
Merge of [39808] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@39820


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 11:39:34 +00:00
Dominik Schilling
e0b6a13194 Themes: Fix markup for theme name fallbacks.
Merge of [39807] to the 4.7 branch.
Built from https://develop.svn.wordpress.org/branches/4.7@39809


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39747 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 11:08:37 +00:00
Jeremy Felt
871bb10c9a Multisite: Use wp_rand() in signup key creation.
Merges [39795] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39796


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39734 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 05:31:35 +00:00
Dion Hulse
31c9a63bfb Update PHPMailer to 5.2.22.
The full list of changes is available here:
https://github.com/PHPMailer/PHPMailer/compare/v5.2.21...v5.2.22

Merges [39759] to the 4.7 branch.
Fixes #37210 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39783


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39721 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 05:21:59 +00:00
Jeremy Felt
63828d08a0 Mail: Disable wp-mail.php when mailserver_url is mail.example.com.
Merges [39772] to the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39773


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39711 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 05:15:34 +00:00
Aaron Campbell
189e5449a3 Add nonce for widget accessibility mode.
Props vortfu.

See #23328.

Merges [39760] to 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39761


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39699 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-11 01:40:34 +00:00
Aaron Campbell
d47305bfe4 Add -src back to version
Built from https://develop.svn.wordpress.org/branches/4.7@39750


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39688 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-06 23:04:36 +00:00
Aaron Campbell
aa13103db8 Post 4.7.1-RC1 version bump
Built from https://develop.svn.wordpress.org/branches/4.7@39749


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39687 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-06 22:44:35 +00:00
Aaron Campbell
3027491963 WordPress 4.7.1-RC1
Built from https://develop.svn.wordpress.org/branches/4.7@39746


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39686 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-06 22:16:57 +00:00
Aaron Campbell
ed77d76855 Twenty Seventeen: add more details about filter and requires version
The required version should be 4.7 and also adds more information to changelog.

Props @ocean90 @Presskopp

Merges [39744] to 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@39745


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39685 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-06 22:16:24 +00:00
Aaron Campbell
483fa89c88 Twenty Seventeen: version bump and update changelog
Adds in changelog since last version and all the changes listed in readme.txt.
Bumps version numbers in style.css and readme.txt.

Props @ocean90

Merges [39742] to the 4.7 branch.


Built from https://develop.svn.wordpress.org/branches/4.7@39743


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39683 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-06 22:15:10 +00:00
Dominik Schilling
95026e579b Twenty Seventeen: Introduce a theme-specific filter twentyseventeen_starter_content for customizing the starter content array.
Add some documentation to the default starter content.

Merge of [39720] to the 4.7 branch.

Props sanket.parmar, celloexpressions.
See #39109.
Built from https://develop.svn.wordpress.org/branches/4.7@39721


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39661 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-06 22:03:30 +00:00
Dion Hulse
425d389d92 Upgrade/Install: Avoid creating nonce during installation.
When installing and using database-saved salts, wp_create_nonce() causes database errors as wp_salt() attempts to insert into the not-yet-created options table. Since authentication isn't available during installation, we can safely skip creating a nonce.

Props nullvariable, pento, dd32, rmccue.
Merges [39684] to the 4.7 branch.
Fixes #39047.

Built from https://develop.svn.wordpress.org/branches/4.7@39697


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39637 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 08:18:37 +00:00
Dion Hulse
6cdd4b1250 Customize: Prevent removal of underline upon hover/focus for nav menu deletion links.
Props monikarao.
Amends [38503].
See #37527.
Merges [39677] to the 4.7 branch.
Fixes #39444.

Built from https://develop.svn.wordpress.org/branches/4.7@39696


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39636 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 08:17:37 +00:00
Dion Hulse
4a804cac79 Customize: Remove extra left padding in core for site title and widgets in preview.
These styles should only be applied by theme stylesheets as needed.

Props sirbrillig.
Reverts parts of [39202] and [39233].
See #38651.
Merges [39685] to the 4.7 branch.
Fixes #39349.

Built from https://develop.svn.wordpress.org/branches/4.7@39695


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 08:16:39 +00:00
Dion Hulse
cc4a680493 Customize: Ensure theme_mod-cache of custom_css lookup of -1 short-circuits a WP_Query from being made.
Props dlh, westonruter.
See #35395.
Merges [39688] to the 4.7 branch.
Fixes #39259.

Built from https://develop.svn.wordpress.org/branches/4.7@39694


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39634 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 08:15:35 +00:00
Dion Hulse
d93d3febfe Customizer: Don't query for postmeta for Custom CSS (for not-current-themes) and Customizer Changeset posts.
Props dlh.
Merges [39692] to the 4.7 branch.
Fixes #39194.

Built from https://develop.svn.wordpress.org/branches/4.7@39693


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39633 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 08:13:35 +00:00
Dion Hulse
8cc3c97b85 Updates: Properly define $filesystemForm to handle error in modals.
Amends [39657].
Merges [39689] to the 4.7 branch.
See #39057.

Built from https://develop.svn.wordpress.org/branches/4.7@39690


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39630 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 07:28:36 +00:00
Dion Hulse
2d20b59244 Feeds: Don't override the Content-Type header inside fetch_feed().
SimplePie can set the Content-Type header automatically with the correct charset for convenience, but we already force the charset to match the site's, making it redundant at best. At worst, SimplePie incorrectly overrides the content-type for non-HTML content (such as API requests).

Props dlh, stevenkword, rmccue.
Merges [39681] to the 4.7 branch.
Fixes #39066.

Built from https://develop.svn.wordpress.org/branches/4.7@39683


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39623 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 03:09:35 +00:00
Dion Hulse
d4399a7082 REST API: Add error handling for fetch error in buildModelGetter of wp-api.js.
When a call to a model getter method fails, reject the returned deferred object. Enables better handling of fetch errors.

Props westonruter, adamsilverstein.
Merges [39680] to the 4.7 branch.
Fixes #39314.

Built from https://develop.svn.wordpress.org/branches/4.7@39682


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39622 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 03:07:17 +00:00
Andrew Ozz
ce7ab0d87f Always add page-template-default class to the editor body when the template is not specified. This matches the behavior on the front-end.
Props timph (for the detailed bug report), azaozz.
Merges [39678] to the 4.7 branch.
Fixes #39368.
Built from https://develop.svn.wordpress.org/branches/4.7@39679


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39619 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-05 01:59:38 +00:00
Boone Gorges
6124fbb02c Ignore the 'comment_order' setting when determining comment pagination.
[38740] incorrectly introduced logic that changed a comment's page when
'comment_order' was set to 'desc'. This is in violation of the design
of the comment pagination system: a comment's page is designed not to
change when 'comment_order' or 'default_comment_page' are changed.
See #31101.

Merges [39663] to the 4.7 branch.

Props rachelbaker.
Fixes #39280.

Built from https://develop.svn.wordpress.org/branches/4.7@39664


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39604 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-02 20:08:23 +00:00
Rachel Baker
b410db797b General: Update copyright year to 2017 in license.txt.
Props Nikschavan.
Merges [39659] to the 4.7 branch.
Fixes #39433.

Built from https://develop.svn.wordpress.org/branches/4.7@39661


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39601 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-02 18:51:35 +00:00
Dion Hulse
e87ab24ef8 Updates: Show the Authentication key settings after selecting the SSH transport in both the modal, and also on the plugin/theme updates screen.
Props afercia.
Merges [39657] to the 4.7 branch.
Fixes #39057.

Built from https://develop.svn.wordpress.org/branches/4.7@39658


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-30 07:46:35 +00:00
Dion Hulse
6c457d4415 Media: Move a variable definition outside of conditionals to ensure it's always available.
This fixes cases where the URL to a PDF preview may be incorrectly calculated when no thumbnails were generated for the PDF (and avoids a PHP Notice at the same time).

Merges [39612] to the 4.7 branch.
Fixes #39250.

Built from https://develop.svn.wordpress.org/branches/4.7@39654


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39594 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-30 06:24:33 +00:00
Dion Hulse
fb52c9599d Customize: Fix visible edit shortcuts for wp_nav_menu() instances using the menu arg (such as in the Custom Menu widget) instead of the theme_location arg.
Also fix logic for `focus-control-for-setting` handler to focus on the first control (lowest `priority` value) associated with a given setting instead of the last control encountered when iterating over all controls, as this ensures the first control in a `nav_menu` section is focused rather than the last one.

Props westonruter, sirbrillig.
See #27403.
Merges [39622] to the 4.7 branch.
Fixes #39101.

Built from https://develop.svn.wordpress.org/branches/4.7@39653


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-30 06:13:34 +00:00
Dion Hulse
8f7e4969bc Taxonomy: Redirect to current taxonomy when adding a term without AJAX.
Fixes a regression in which adding terms via a full page refresh, ie without AJAX, would always redirect to the tags taxonomy.

Props szaqal21, peterwilsoncc.
Merges [39649] to the 4.7 branch.
Fixes #39328 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39652


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39592 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-30 05:55:32 +00:00
Dion Hulse
b28d64fb46 Customize: Bump wp_custom_css_cb from running at wp_head priority 11 to 101 to ensure Custom CSS overrides other CSS.
Aligns `wp_head` action priority with Jetpack's Custom CSS.

Amends [38829].
See #35395, #38672.
Merges [39616] to the 4.7 branch.
Fixes #39270.

Built from https://develop.svn.wordpress.org/branches/4.7@39651


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39591 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-30 05:49:34 +00:00
Dion Hulse
61fb79c097 Twenty Seventeen: Fix incorrect $content_width value in theme.
This addresses a major bug. Incorrectly setting the `$content_width` causes media embeds to end up with the wrong aspect ratio, among other issues. This fix uses `template_redirect`,  to ensure conditional theme tags can be used. It also defines a default value at `after_theme_setup` so that plugins have something to work with at `init`.

Props sstoqnov, laurelfulford, obenland.
Merges [39635] to the 4.7 branch.
Fixes #39272.

Built from https://develop.svn.wordpress.org/branches/4.7@39650


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39590 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-30 05:47:37 +00:00
Dion Hulse
9edb03c095 Upgrade PHPMailer from 5.2.14 to 5.2.21.
The full list of changes is available here:
https://github.com/PHPMailer/PHPMailer/compare/v5.2.14...v5.2.21

Props sebastian.pisula, MattyRob, sfpt, dd32, peterwilsoncc, voldemortensen.
Merges [39645] to the 4.7 branch.
Fixes #37210 for trunk.

Built from https://develop.svn.wordpress.org/branches/4.7@39646


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39586 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-29 03:00:37 +00:00
Rachel Baker
bd0a38d439 REST API: Allow schema sanitization_callback to be set to null to bypass fallback sanitization functions.
The logic in WP_REST_Request->sanitize_params() added in [39091] did not account for `null` or `false` being the sanitization_callback preventing overriding `rest_parse_request_arg()`. This fixes that oversight, allowing the built in sanitization function to be bypassed. See #38593.

Merges [39563] to the 4.7  branch.

Props kkoppenhaver, rachelbaker, jnylen0.
Fixes #39042.

Built from https://develop.svn.wordpress.org/branches/4.7@39642


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39582 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-27 17:49:36 +00:00
Rachel Baker
8780e40de2 Comments: Fix placement of the wp_update_comment_data filter to safeguard filtered data from triggering a database error.
Introduced in [38674], the wp_update_comment_data filter took place after the $data was sliced and prepared for the database update statement. The location of the filter assumed the result of anyone applying it would not change the data type or make structural modifications or additions to the $data array. 😅
This moves the wp_update_comment_data filter to take place before the $data is sliced and prepared for the database update statement.

Merges [39640] to the 4.7  branch.

Props dshanske for initial patch.
Fixes #39380.

Built from https://develop.svn.wordpress.org/branches/4.7@39641


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-27 17:42:35 +00:00
Ella Iseulde Van Dorpe
559e81937b Editor: Let the Add New link disappear in DFW mode.
The link was moved outside the heading in [38983].

Merges [39619] to the 4.7 branch.
Fixes #39313.


Built from https://develop.svn.wordpress.org/branches/4.7@39634


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39574 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 14:56:34 +00:00
Gary Pendergast
8a2525a88d Media: Allow PDF fallbacks filter to process custom sizes.
This fixes an oversight in [39246], which added a hook for filtering the array of sizes used for PDF thumbnails, but failed to provide a way for sizes added through `add_image_size()` to be processed.

Merge of [39617] to the 4.7 branch.

Props gitlost.
Fixes #39231. See #38594.


Built from https://develop.svn.wordpress.org/branches/4.7@39633


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39573 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:53:33 +00:00
Gary Pendergast
7d1db9607d Twenty Seventeen: Ensure functions in customize-controls.js don't count on Customizer sections always being present
Before, the code assumed the `theme_options` section is always present, but it can be removed by plugins. This way, if it is, no JavaScript errors occur.

Merge of [39623] to the 4.7 branch.

Props westonruter.
Fixes #39355.


Built from https://develop.svn.wordpress.org/branches/4.7@39632


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39572 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:48:34 +00:00
Gary Pendergast
6e8114742f REST API: Improve the rest_*_collection_params filter docs and fix the terms filter.
The `rest_{$taxonomy}_collection_params` filter in 4.7 is incorrectly using single quotes instead of double quotes, which means it is not working correctly as a dynamic filter. This fixes the quotes around the filter name, and also updates the docblocks for the other 3 similar filters for better conformance to the documentation standards.

Merge of [39621] to the 4.7 branch.

Props shazahm1hotmailcom, JPry, jnylen0.
Fixes #39300.


Built from https://develop.svn.wordpress.org/branches/4.7@39631


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39571 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:34:34 +00:00
Gary Pendergast
cf9b1dbc1f REST API: Fix PHP warnings when get_theme_support( 'post-formats' ) is not an array.
If `add_theme_support( 'post-formats' )` is called with no additional arguments, then `get_theme_support( 'post-formats' )` returns `true` rather than an array of supported formats. Avoid generating PHP warnings in this situation.

Merge of [39620] to the 4.7 branch.

Props dreamon11, ChopinBach.
Fixes #39293.


Built from https://develop.svn.wordpress.org/branches/4.7@39630


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39570 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:30:34 +00:00
Gary Pendergast
bba21b983c REST API: Add support for filename search in media endpoint.
In [38625], the functionality to search for attachments by filename was added via the `posts_clauses` filter and the `_filter_query_attachment_filenames()` function. This moves `_filter_query_attachment_filenames()` from `wp-admin/includes/post.php` to `wp-includes/post.php` so that it can be applied in the same manner in the REST API media endpoint.

Merge of [39598] to the 4.7 branch.

Props jblz, tyxla.
Fixes #39092.


Built from https://develop.svn.wordpress.org/branches/4.7@39629


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39569 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:19:34 +00:00
Gary Pendergast
e6ce714219 REST API: Allow sending an empty or no-op comment update.
In general, updates that don't actually change anything should succeed. [39371] added tests for other object types, and this commit fixes empty updates for comments and adds the missing test.

Merges [39597] to the 4.7 branch.

Props jnylen0.
Fixes #38700.


Built from https://develop.svn.wordpress.org/branches/4.7@39628


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39568 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:13:36 +00:00
Gary Pendergast
45e03c2576 Tests: Restore the database connection earlier when switching test groups.
When plugins don't disable the `backupGlobals` PHPUnit option in their own tests, `$wpdb` is backed up and restored between classes of tests. The serialisation process used for this broke the database connection. This previously wasn't a problem, as it was reconnecting before each test.

[38398] introduced some changes that required the connection to be available in `setUpBeforeClass()`, earlier than in was previously reconnecting. This didn't cause warnings in Core, but it did cause warnings for plugins that don't disable the `backupGlobals` option.

The database connection now reconnects in `setUpBeforeClass()`. This change also fixes a few Core tests that weren't calling `parent::setUpBeforeClass()` or `parent::tearDown()` correctly.

Merges [39626] to the 4.7 branch.

Fixes #39327.


Built from https://develop.svn.wordpress.org/branches/4.7@39627


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39567 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-21 05:08:33 +00:00
Dion Hulse
540a3164a4 Feeds: Do not translate the lastBuildDate field in RSS feeds.
Props stevenkword.
Partial Merge of [39613] to the 4.7 branch.
Fixes #39141.

Built from https://develop.svn.wordpress.org/branches/4.7@39615


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 06:44:33 +00:00
Dion Hulse
592f1be68e Taxonomy: Restore the ability to use string-based $args in wp_get_object_terms().
Props tyxla.
Merges [39578] to the 4.7 branch.
Fixes #39215.

Built from https://develop.svn.wordpress.org/branches/4.7@39611


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39551 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:50:32 +00:00
Dion Hulse
380cc5d7d6 REST API: Do not include the password argument when getting media items
Currently, `attachment` is the only post type exposed via the REST API that
does not support password protection, but it's possible for other post types to
remove password support.

Props jnylen0.
Merges [39595] to the 4.7 branch.
Fixes #38977.

Built from https://develop.svn.wordpress.org/branches/4.7@39610


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39550 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:46:35 +00:00
Dion Hulse
0b813f2544 REST API: Do not error on empty JSON body
It's fairly common for clients to send `Content-Type: application/json` with an
empty body.  While technically not valid JSON, we've historically supported
this behaviour, so it shouldn't cause an error.

Props JPry, jnylen0.
Merges [39594] to the 4.7 branch.
Fixes #39150.

Built from https://develop.svn.wordpress.org/branches/4.7@39609


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39549 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:43:33 +00:00
Dion Hulse
72d9177fc0 Posts, Post Types: Ensure is_page_template() can only return true when viewing a singular post query.
Props natereist, dlh, johnbillion.
Merges [39599] to the 4.7 branch.
Fixes #39211.

Built from https://develop.svn.wordpress.org/branches/4.7@39608


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39548 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:41:34 +00:00
Dion Hulse
b24993e4cd PDF Images: Avoid a PHP Warning when attempting to process a file without an extension.
Props chandrapatel for initial patch.
Merges [39580] to the 4.7 branch.
Fixes #39195.

Built from https://develop.svn.wordpress.org/branches/4.7@39607


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39547 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:39:32 +00:00
Dion Hulse
db72974122 Customize: Prevent edit shortcut from losing event handler after selective refresh.
Props sirbrillig.
Merges [39581] to the 4.7 branch.
See #27403.
Fixes #39100.

Built from https://develop.svn.wordpress.org/branches/4.7@39606


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39546 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:38:34 +00:00
Dion Hulse
41d2ef99a6 Bootstrap: Re-initialize any hooks added manually by object-cache.php.
Prior to 3.1 if a object cache dropin wanted to add actions, they needed to use `$wp_filter` directly.

Props jorbin.
Merges [39565] to the 4.7 branch.
Fixes #39132.

Built from https://develop.svn.wordpress.org/branches/4.7@39605


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39545 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-16 05:37:37 +00:00
Adam Silverstein
6bfa2de24d WP-API: JavaScript client - fix setup of models used by wp.api.collections objects.
Correct setup for the `model` attribute of `wp.api.collections` objects. Set the collection model as a function that returns a new model of the underlying type, instead of setting it as the model prototype. Fixes an issue where models for fetched collections weren't set up properly and didn't have the expected mixin methods such as `getCategories` available.

Props jesseenterprises.
Merges [39603] to the 4.7 branch.
Fixes #39070.

Built from https://develop.svn.wordpress.org/branches/4.7@39604


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39544 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-15 13:02:35 +00:00
Ella Iseulde Van Dorpe
948379bde8 Editor: Remove target=_blank when unchecked in the link modal.
Merges [39601] to the 4.7 branch.
Fixes #39276.


Built from https://develop.svn.wordpress.org/branches/4.7@39602


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39542 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-14 20:59:37 +00:00
Konstantin Obenland
3db97bd725 Themes: Add missing square bracket in jQuery selector.
Fixes a bug in Safari where the UI wasn't updated after deleting a theme due to
the incomplete selector.

Props Hristo Sg.
Merges [39586] to the 4.7 branch.
Fixes #39246.

Built from https://develop.svn.wordpress.org/branches/4.7@39587


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39527 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 09:34:33 +00:00
Dion Hulse
ca4d60134b Customize: Prevent navigation in preview when clicking on child elements of preview links that have non-previewable URLs.
Props westonruter.
Merges [39584] to the 4.7 branch.
Fixes #39098.

Built from https://develop.svn.wordpress.org/branches/4.7@39585


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39525 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 08:26:33 +00:00
Dion Hulse
e28a67c870 De-Emphasise the minor (x.y.Z) version in readme.html by including only the major version for the 4.7 branch.
See #35554

Built from https://develop.svn.wordpress.org/branches/4.7@39582


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39522 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 08:00:34 +00:00
Dion Hulse
7ffc106c38 Bump the version in package.json to 4.7.1 after [39576].
Built from https://develop.svn.wordpress.org/branches/4.7@39579


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39519 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 06:07:33 +00:00
Dion Hulse
459ab62c8a The 4.7 branch is now 4.7.1-alpha.
Built from https://develop.svn.wordpress.org/branches/4.7@39576


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39516 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 04:54:34 +00:00
Dion Hulse
a30c4df4b5 Customize: Deprecate page_home nav menu item starter content in favor of home_link; replace usage in Twenty Seventeen.
Props celloexpressions, westonruter.
See #38615, #38114, [38991].
Merges [39561] to the 4.7 branch.
Fixes #39104.

Built from https://develop.svn.wordpress.org/branches/4.7@39575


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39515 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 02:25:35 +00:00
Dion Hulse
15a94f7c00 Customize: Allow (optional) url parameter to be omitted in intercepted calls to history.pushState() and history.replaceState() in customize preview.
Fixes issue where calls without the `url` parameter erroneously end up rewriting the location path to `/undefined`.

Props Christian1012, westonruter.
Merges [39547] to the 4.7 branch.
Fixes #39175.

Built from https://develop.svn.wordpress.org/branches/4.7@39574


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39514 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 02:11:33 +00:00
Dion Hulse
c3f619e2d0 Customize: Trim whitespace for URLs supplied for external_header_video to prevent esc_url_raw() from making them invalid.
Props tyxla.
See #38172.
Merges [39560] to the 4.7 branch.
Fixes #39125.

Built from https://develop.svn.wordpress.org/branches/4.7@39573


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39513 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 02:06:32 +00:00
Dion Hulse
900cd6c47d Customize: Fix ability to shift-click on placeholder/pre-saved nav menu items in preview to focus on corresponding control.
Props westonruter.
Merges [39562] to the 4.7 branch.
Fixes #39102.

Built from https://develop.svn.wordpress.org/branches/4.7@39572


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39512 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 02:04:34 +00:00
Dion Hulse
5fa8150d16 Customize: Use selected user language for edit shortcuts in preview instead of site language.
Props ocean90.
Merges [39545] to the 4.7 branch.
Fixes #39009.

Built from https://develop.svn.wordpress.org/branches/4.7@39571


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 01:59:34 +00:00
Dion Hulse
edcebaa160 Customize: Fix inability to delete nav menus by preventing preview filters from being added during customize_save admin ajax request.
Also prevent setting `nav_menu_locations[...]` values to `NaN` which gets sent as `null`.

Props westonruter.
See #30937, [38810].
Merges [39558] to the 4.7 branch.
Fixes #39103.


Built from https://develop.svn.wordpress.org/branches/4.7@39570


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39510 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 01:57:33 +00:00
Dion Hulse
01aaece3ea Customize: Prevent scrolling custom_css textarea to top when pressing tab.
Props tyxla, sstoqnov for testing, celloexpressions for testing.
See #38667.
Merges [39557] to the 4.7 branch.
Fixes #39134.

Built from https://develop.svn.wordpress.org/branches/4.7@39569


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39509 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 01:56:33 +00:00
Dion Hulse
6663e03ced Customize: Use esc_url_raw() instead of wp_json_encode() to eliminate extraneous slashes when outputting background image URL in CSS url().
Props tyxla, westonruter.
See #22058.
Merges [39546] to the 4.7 branch.
Fixes #39145.

Built from https://develop.svn.wordpress.org/branches/4.7@39568


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39508 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 01:46:35 +00:00
Dion Hulse
30bb628489 Customize: Prevent single quotes (apostrophes) in custom_css values from unexpectedly causing false positives for unbalanced character validation errors.
Props westonruter.
See #39218, #35395.
Merges [39559] to the 4.7 branch.
Fixes #39198.

Built from https://develop.svn.wordpress.org/branches/4.7@39567


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39507 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 01:45:35 +00:00
Dion Hulse
6738759b0c REST API: Treat any falsy value as false in 'rest_allow_anonymous_comments'.
Extend the check in 'rest_allow_anonymous_comments' to accept any falsy value (previously this was an explicit check for `false`).

One possible failure case is that a plugin developer forgets to include a return value for some code path in their callback for this filter, leading to a value of null which is currently treated like `true`.

Props joehoyle, jnylen0.
Merges [39487] to the 4.7 branch.
Fixes #39010.

Built from https://develop.svn.wordpress.org/branches/4.7@39566


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39506 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-12 01:40:32 +00:00
Helen Hou-Sandí
16cabf6b50 WordPress 4.7 "Vaughan".
It's very sassy.

Built from https://develop.svn.wordpress.org/branches/4.7@39524


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 18:39:32 +00:00
Helen Hou-Sandí
563dc76e7b About page: Update video and REST API reference URLs.
props ocean90, kadamwhite, coffee2code.
see #38616 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39523


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39463 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 18:25:14 +00:00
Helen Hou-Sandí
537f4728bd Remove 4.7 cruft from $_old_files.
fixes #39113.

Built from https://develop.svn.wordpress.org/branches/4.7@39521


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39461 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 17:18:34 +00:00
Helen Hou-Sandí
e489c7e378 Post-RC3 bump.
Built from https://develop.svn.wordpress.org/branches/4.7@39519


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39459 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 07:23:33 +00:00
Helen Hou-Sandí
4135f92f3d About page: Bump image versions because CDN caching.
props pento.
see #38616 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39518


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39458 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 07:14:13 +00:00
Helen Hou-Sandí
8ea5b3b2d2 WordPress 4.7 RC3.
Built from https://develop.svn.wordpress.org/branches/4.7@39516


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 06:59:33 +00:00
Joe McGill
f594693fcd About page: Resposive images and CDN media URLs.
This adds `srcset` and `sizes` to the about page images, including
art direction, via `<picture>` for the lead Twenty Seventeen image.

This also replaces URLs for all images and feature videos to their
CDN locations on s.w.org.

Props helen, pento, joemcgill.
Fixes #38616 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39515


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39455 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 06:58:34 +00:00
Helen Hou-Sandí
8ab4a55cbe About page: Imagery and beautification.
Still to come: responsive images, optimized videos, and CDN URLs.

merges [39512] to the 4.7 branch.
props melchoyce, helen, ramiabraham.
see #38616.

Built from https://develop.svn.wordpress.org/branches/4.7@39513


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39453 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 04:02:33 +00:00
Weston Ruter
0c0fa13a66 Customize: Prevent infinite full refresh from occurring when selective refresh falls back for a nav menu that has items excluded from rendering via filtering.
Merges [39510] onto 4.7 branch.
Fixes #38612 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39511


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39451 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-06 02:53:35 +00:00
Dominik Schilling
e58ec083da Comments: Merge a similar string between comments.php, XML-RPC and the REST API comments controller.
Merge of [39508] to the 4.7 branch.

Props ramiy.
See #39013.
Built from https://develop.svn.wordpress.org/branches/4.7@39509


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39449 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 20:18:33 +00:00
Weston Ruter
92c3c3453b Customize: Defer populating post_name for auto-draft posts in customized state until posts are published.
The ultimate `post_name` is stored in postmeta until the post is published. The `get_page_by_path()` function does not exclude `auto-draft` posts. Revert changes to `wp_unique_post_slug()` from [39411] which excluded `auto-draft` posts.

Props westonruter, dlh for testing, helen for testing.
Merges [39506] onto 4.7 branch.
Fixes #39078 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39507


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39447 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 19:39:34 +00:00
Weston Ruter
0e7cc25529 Customize: Ensure changeset_uuid query param is removed from the customize.php window's location once a changeset has been published (committed) with starter content.
Props westonruter, dlh for testing.
Merges [39504] onto 4.7 branch.
Fixes #39081 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39505


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 16:57:35 +00:00
Weston Ruter
c34a4c0ba3 Customize: Prevent posts/pages imported via starter content from being dropped when adding post/page stubs via nav menus and the dropdown-pages control.
Props westonruter, dlh for testing.
Merges [39502] onto 4.7 branch.
Fixes #39071 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39503


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39443 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 16:49:35 +00:00
Andrew Ozz
16161be6ac TinyMCE: fix the styling of notices generated by the editor UI.
Props: mor10, karmatosed, azaozz.
Fixes #38917 for 4.7.
Built from https://develop.svn.wordpress.org/branches/4.7@39501


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39441 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 15:10:33 +00:00
Weston Ruter
ac2345ca32 Customize: Ensure textarea for Custom CSS displays as code (in LTR) when an RTL language is active.
Merges [39499] onto 4.7 branch.
Fixes #39085 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39500


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39440 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 14:00:35 +00:00
Dominik Schilling
8da7adb54f Default Themes: Update version numbers and readme files for 4.7 release
Bump version numbers and update readme files for themes with changes. Also updates description for Twenty Seventeen and removes version number for HTML5 shiv for easier updates in the future.

Merge of [39496] to the 4.7 branch.

Props davidakennedy.
See #38858.
Built from https://develop.svn.wordpress.org/branches/4.7@39498


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39438 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 09:36:33 +00:00
Dominik Schilling
13ff476cc1 Twenty Seventeen: Fix CSS specificity problem with CSS feature query for object-fit
Previously, the theme's CSS feature query for `object-fit` overrode styles it shouldn't have on interior pages.

This moves the feature query farther down in the stylesheet so it takes precedence in the cascade in supported browsers, and applies the appropriate selector for the interior pages. In browsers that don't support feature queries or `object-fit`, the fallback styles are still applied. The problem was that the rules had the same specificity, so this way, the cascade takes over properly. The transforms and position changes for fallbacks are still needed in browsers that don't support `object-fit` and feature queries.

Merge of [39495] to the 4.7 branch.

Props peterwilsoncc, davidakennedy.
See #39073.
Built from https://develop.svn.wordpress.org/branches/4.7@39497


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39437 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-05 09:30:37 +00:00
Rachel Baker
d6497ddf70 Comments: Merge similar strings between comments.php and the REST API comments controller.
Merges [39490] to the 4.7 branch.

Props ramiy.
Fixes #39014 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39491


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39431 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 20:37:34 +00:00
Rachel Baker
a1005ad7f9 REST API: Merge similar date strings in the revisions and comments controllers.
Merges [39488] to the 4.7 branch.

Props ramiy.
Fixes #39016 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39489


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39429 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 20:27:35 +00:00
Helen Hou-Sandí
082fa8f5ad Twenty Seventeen: Improve display of video header and header image in modern browsers
The theme uses a hack to help the video header and header image fill the available space. This centers around `max-width: 1000%;`. It causes visual issues (zooming of the header video or image) for all users though.

This fixes that with CSS Features Queries. The hack remains for browsers that don't support Feature Queries  and `object-fit`. Browsers that do support both get a better experience with a more reliable styling of the video and image header container.

Props laurelfulford, peterwilsoncc.

Fixes #39035 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39485


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39425 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 19:24:33 +00:00
Helen Hou-Sandí
70f46a9e84 Twenty Seventeen: Add specific font stack for Thai language
Improves legability and design for users viewing the theme with Thai language.

Props imnok, netweb, melchoyce.

Fixes #38937 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39484


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39424 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 19:23:37 +00:00
Andrew Nacin
3c4d5d2e6f Build/Test Tools: Specify exact node version in package.json.
Enforce it in the tests.

Merges [39478] to the 4.7 branch.

see #35105, #38657.

Built from https://develop.svn.wordpress.org/branches/4.7@39480


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39420 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 17:38:34 +00:00
Weston Ruter
8f1a4c9a56 Customize: Ensure a custom_css post insertion gets an initial post revision.
Merges [39477] onto 4.7 branch.
Props georgestephanis, westonruter.
Fixes #39032 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39479


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39419 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 17:33:40 +00:00
Helen Hou-Sandí
e918433445 Docs: Update an @since as there will not be a 4.6.2 before 4.7.
props boonebgorges.
fixes #37291 for the 4.7 branch. see [38776].

Built from https://develop.svn.wordpress.org/branches/4.7@39476


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39416 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-04 17:27:22 +00:00
Helen Hou-Sandí
f012d52928 Post-RC2 bump.
Built from https://develop.svn.wordpress.org/branches/4.7@39474


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 06:17:35 +00:00
Helen Hou-Sandí
4fd3246c0d WordPress 4.7 RC2.
Built from https://develop.svn.wordpress.org/branches/4.7@39473


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39413 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 06:05:37 +00:00
Andrew Nacin
d150dd35b2 REST API: Register the admin_email setting in single site only.
Merges [39470] and [39471] to the 4.7 branch.

fixes #38990.

Built from https://develop.svn.wordpress.org/branches/4.7@39472


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39412 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 05:42:36 +00:00
Gary Pendergast
c720c0df8c REST API: Site URL setting should not be present on multisite installations.
The `siteurl` setting is registered and made available to the REST API. On a multisite installation, this setting is not configurable from the General Settings screen, but due to the above it is configurable from the REST API.

Merge of [39468] to the 4.7 branch.

Props peterwilsoncc.
Fixes #39005.


Built from https://develop.svn.wordpress.org/branches/4.7@39469


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39409 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 05:18:33 +00:00
Helen Hou-Sandí
1c4c7086a5 Custom CSS: Change the help link to something better for users.
fixes #39015 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39467


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39407 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 05:12:33 +00:00
Gary Pendergast
ea244bef6e REST API: Capability check for editing a single term should use the singular form.
As an extra level of sanity checking, the term ID should be cast as an int in `map_meta_cap()`.

Merge of [39464] to the 4.7 branch.

Props johnbillion, nacin, dd32, pento.
See #35614.
Fixes #39012.


Built from https://develop.svn.wordpress.org/branches/4.7@39465


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39405 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 05:09:32 +00:00
Gary Pendergast
dae13be262 Docs: Add missing REST API-related args to register_post_type() and register_taxonomy().
These functions now accept the `show_in_rest`, `rest_base`, and `rest_controller_class` args.

Merges [39462] to the 4.7 branch.

Props ketuchetan, rahulsprajapati.
Fixes #39023.


Built from https://develop.svn.wordpress.org/branches/4.7@39463


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39403 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 04:50:32 +00:00
Gary Pendergast
250f92a59e REST API: Use the correct error message when editing a single term.
Merges [39460] to the 4.7 branch.

Props ramiy, johnbillion.
Fixes #39017.


Built from https://develop.svn.wordpress.org/branches/4.7@39461


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39401 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 04:44:33 +00:00
Gary Pendergast
b41001d4a1 Load: Re-add class-wp-upgrader-skins.php, class-feed.php, locale.php, and session.php.
Several files were removed during 4.7 that can be loaded externally, so we need to keep them, though their use is now deprecated.

Merges [39449], [39450], [39453], [39455], and [39456] to the 4.7 branch.
Fixes #39027.


Built from https://develop.svn.wordpress.org/branches/4.7@39459


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39399 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 04:30:34 +00:00
Gary Pendergast
7847fee343 REST API: Merge similar strings in a comments endpoint parameter description.
Merge of [39457] to the 4.7 branch.

Props ramiy.
Fixes #39036.


Built from https://develop.svn.wordpress.org/branches/4.7@39458


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39398 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 04:24:34 +00:00
Dion Hulse
83c0a40c05 Revert [38677] from the 4.7 branch.
This avoids fatal errors caused with recursive calling of term functions within the `get_terms` filter.

See #21760.

Built from https://develop.svn.wordpress.org/branches/4.7@39454


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39394 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 04:05:34 +00:00
Helen Hou-Sandí
93734bcbcb Twenty Seventeen: Improve ARIA for the nav menu.
The `onResizeARIA()` function was not very useful and buggy.

props afercia.
fixes #39029, #39026 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39452


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39392 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-03 03:44:32 +00:00
Helen Hou-Sandí
d344c40f57 Twenty Seventeen: Ensure header text color updates in Customizer preview when cleared
Checks if the text color has been cleared and removes the `style` block if it has been. Uses color styles in theme stylesheet.

Props sstoqnov, davidakennedy.

Fixes #38993 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39448


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39388 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 23:03:34 +00:00
Rachel Baker
afa325993e REST API: Fix bug where comment author and author email could be an empty string when creating a comment.
If the `require_name_email` option is true, creating a comment with an empty string for the author name or email should not be accepted.  Both values can be an empty string on update.

Merges [39444] into the 4.7 branch.
Props flixos90, hnle, dd32, rachelbaker, jnylen0, ChopinBach, joehoyle, pento.

Fixes #38971 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39446


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39386 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 22:46:31 +00:00
Helen Hou-Sandí
0dd3e5e34d About page: Add strings for 4.7 and make available for translation.
It doesn't look very pretty; design changes still to come.

merges [39420], [39432], [39433], [39442], [39443] to the 4.7 branch.

props helen, michaelarestad, samuelsidler, jbpaul17, jorbin, nacin, melchoyce, ocean90, ramiy.
see #38616.

Built from https://develop.svn.wordpress.org/branches/4.7@39445


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39385 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 22:45:15 +00:00
Rachel Baker
3adc537233 REST API: Fix handling of some orderby parameters for the Posts controller.
- 'orderby' => 'include' requires an array of post_ids via the include collection param.
- 'orderby' => 'id' and 'orderby' => 'slug' need map the correct WP_Query equivalents. 

Merges [39440] to the 4.7 branch.

Props flixos90, hnle, dd32, rachelbaker, joehoyle, pento.
Fixes #38971 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39441


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39381 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 22:21:33 +00:00
Jeremy Felt
4726c85ee5 REST API: Disable DELETE requests for users in multisite.
In wp-admin, users are removed from individual sites rather than deleted. A user can only be deleted from the network admin.
Until support for a PUT request that removes a user's site and content associations is available, DELETE requests are disabled to avoid possible issues with lost content.

Merges [34938] onto 4.7 branch.

Props jnylen0, rachelbaker.
Fixes #38962 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39439


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39379 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 22:16:33 +00:00
Rachel Baker
19ba92e401 REST API: Return a WP_Error if meta property is not an array.
Fixes bug where a PHP Warning is currently thrown if a client sends a request where `meta` is not an array value.

Merges [39436] onto 4.7 branch.

Props timmydcrawford, jnylen0, rachelbaker, pento.
Fixes #38989 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39437


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39377 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 22:05:35 +00:00
Weston Ruter
4727124583 Customize: Fix posts limit query arg for WP_Query from incorrect number to posts_per_page.
Merges [39434] onto 4.7 branch.
Props dlh.
Fixes #39022 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39435


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39375 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 16:19:34 +00:00
Gary Pendergast
0b152a7f2c Plugins: Add a current_priority() method to WP_Hook.
This allows plugins to determine the currently running priority of a filter.

Merges [39430] to the 4.7 branch.

Fixes #39007.


Built from https://develop.svn.wordpress.org/branches/4.7@39431


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39371 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 07:11:32 +00:00
Gary Pendergast
77022af062 Readme: Update recommendations to PHP 7, and to include HTTPS.
See https://wordpress.org/news/2016/12/moving-toward-ssl/

Merges [39428] to the 4.7 branch.

Fixes #39024.


Built from https://develop.svn.wordpress.org/branches/4.7@39429


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39369 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 07:04:34 +00:00
Gary Pendergast
43eb2619e9 REST API: Require the reassign parameter when deleting users.
When deleting a user through the WordPress admin, a specific decision is presented - whether to assign all of the user's posts to another user, or to delete all of the posts.

This change requires `reassign` as a parameter in the corresponding REST API endpoint, so that content isn't accidentally lost.

Merges [39426] to the 4.7 branch.

Props jeremyfelt.
Fixes #39000.


Built from https://develop.svn.wordpress.org/branches/4.7@39427


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39367 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 06:59:34 +00:00
Aaron Jorbin
27af8391d0 Build/Test Tools: Remove PHP 7.1 from allowed failures
[39424] for 4.7

🎉 PHP 7.1 has been officially released. http://php.net/archive/2016.php#id2016-12-01-3

See #37625
Props helen, pento, The PHP team


Built from https://develop.svn.wordpress.org/branches/4.7@39425


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 06:44:33 +00:00
Helen Hou-Sandí
4a0443e0db Twenty Seventeen: Fix broken menu toggle in Customizer after menu items are added
This simplifies the line `$( siteNavigation.closest( '.main-navigation' ), this ).toggleClass( 'toggled-on' );` to `$( siteNavContain ).toggleClass( 'toggled-on' );`, since `this` is the clicked button, so the extra context isn't needed.

Props afercia, laurelfulford.

Fixes #38992 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39423


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39363 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 06:34:32 +00:00
Helen Hou-Sandí
909e795ba4 Twenty Seventeen: Fix style issues with gallery image links
* Ensures dark color scheme has proper box shadow and hover/focus styles.
* Make sure links are correct width.

Props afercia, laurelfulford.

Fixes #38969 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39422


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39362 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 06:33:32 +00:00
Helen Hou-Sandí
e28ec68af6 Twenty Seventeen: Hide front section panels on page load of Customizer.
Props sstoqnov.

Fixes #38951 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39421


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39361 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 06:32:36 +00:00
Joe McGill
f57ee7c1f1 Twenty Seventeen: Add .has-header-video styles for custom color schemes.
Following [39413], this adds `.has-header-video` style definitions in
`/inc/custom-header.php` to support custom color schemes.

Props laurelfulford.
Fixes #38995 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39416


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39356 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 05:47:45 +00:00
Joe McGill
d81e03da4e Twenty Seventeen: Better handling of custom headers when no image is set.
This ensures that a standard header is shown on the front page whenever
a header video is set without a header image if the video doesn't load,
e.g., on mobile sizes or if the JS doesn't fire.

This adds a new class, `.has-header-video` that is added whenever the
`wp-custom-header-video-loaded` event is fired, which is then used to style
the custom headers along with `.has-header-image` whenever a header image
is available. This also changes the class name on the custom header media
wrapping `div` from `.custom-header-image` to `.custom-header-media`.

Props laurelfulford, joemcgill.
Fixes #38995 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39414


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39354 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 05:20:35 +00:00
Weston Ruter
90cd5e5f80 Customize: Reuse existing non-auto-draft posts and existing auto-draft posts in the customized state with matching slugs when applying starter content.
* Updates `wp_unique_post_slug()` to ignore `auto-draft` posts. Prevents publishing multiple posts that have the same slugs from starter content.
* Fixes fatal error when attempting to save an header_image setting from a non-admin context.
* Fixes substituting attachment symbols in options and theme mods.
* Fixes applying starter content for header images and background images.

Merges [39411] to 4.7 branch.
See #38114.
Fixes #38928 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39412


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 00:26:34 +00:00
Weston Ruter
816196aee7 Customize: Reject a changeset update when a non-future date is provided and also ensure that a published changeset always gets set to the current date/time.
* Also moves checks from `customize_save` Ajax handler to the underlying `WP_Customize_Manager::save_changeset_post()` call which plugins may invoke directly.
* Ensures that `customize_save_response` filter is always passed an array, with error code available as `code`.

Props utkarshpatel, westonruter, sayedwp.
Merges [39409] into 4.7 branch.
See #30937.
Fixes #38943 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39410


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39350 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-02 00:07:33 +00:00
Rachel Baker
b460e1fd0d REST API: Add test for creating a comment with an invalid post ID.
Props @jnylen0.

Merges [39375] to the 4.7 branch.
Fixes #38991 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39408


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39348 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 03:43:35 +00:00
Rachel Baker
a332bb92d2 REST API: Correct the admin_email setting description for single site installs.
Display different descriptions for multisite or single site installations.

Props johnbillion, ocean90.

Merges [39406] to the 4.7 branch.
Fixes #38990 for 4.7

Built from https://develop.svn.wordpress.org/branches/4.7@39407


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39347 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 03:06:33 +00:00
Weston Ruter
41118e509a Twenty Seventeen: Make spacing on pages without comments consistent
Previously, the top of the page had more space than the bottom, not matching the original design.

Props laurelfulford, melchoyce.
Merges [39404] onto the 4.7 branch.
Fixes #38972 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39405


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39345 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 02:52:47 +00:00
Rachel Baker
1d9a15ad4a REST API: Fix incorrect capability check on term create.
Change the capability check used in `WP_REST_Terms_Controller` when creating a new term is attempted, from `manage_terms` to `edit_terms`. This matches the behavior within the WordPress admin. See #35614.

Props johnbillion, rmccue, rachelbaker, helen, jorbin, SergeyBiryukov.

Merges [39402] to the 4.7 branch.
Fixes #38958 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39403


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39343 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 02:46:43 +00:00
Rachel Baker
cb6bdc2d4c REST API: Fix incorrect uses of rest_sanitize_value_from_schema().
In the `check_username()` and `check_password()` callbacks in the Users controller cast the provided request value to a string. The `rest_sanitize_value_from_schema()` function was being used incorrectly which was causing unintended request parsing. 
In `rest_sanitize_request_arg()` do not pass nonexistent third parameter for the `rest_sanitize_value_from_schema()` function.

Props jnylen0, joehoyle, rachelbaker, ocean90.

Merges [39400] to the 4.7 branch.
Fixes #38984 for 4.7.
Built from https://develop.svn.wordpress.org/branches/4.7@39401


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39341 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 02:19:32 +00:00
Mike Schroder
bc1df6bef1 Media: Fix regression with display of small images in media library.
Fixes a regression in the media library after [38949], which caused
small images (< thumbnail size) to not display within the media library.

Accounts for images that have no intermediate sizes
in `wp_prepare_attachment_for_js()`.

Adds test.

Merges [39396] to the 4.7 branch.

Fixes #38965 for 4.7.
Props joemcgill, clorith, mikeschroder.

Built from https://develop.svn.wordpress.org/branches/4.7@39399


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 00:28:32 +00:00
Helen Hou-Sandí
7b69275632 Twenty Seventeen: Make sure header text color is applied when color schemes are active.
Props laurelfulford, ocean90.

Merges [39397] to the 4.7 branch.
Fixes #38980 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39398


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39338 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-01 00:12:34 +00:00
Weston Ruter
71169d688a Customize: Fix handling of the nav menu item labels (titles) that match defaults (original titles) and fix the display of item type labels.
* Show default labels for nav menu item as placeholders in a control's label field instead of showing blank.
* Store empty string as label instead of copying default labels.
* Prevent labels for post type archive items from being dropped in preview.
* Also ensure that the item type label is displayed on nav menu item controls for settings that are loaded from an existing changeset.

Amends [38618].
See #38015.
Fixes #38955 for 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39395


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39335 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 23:42:32 +00:00
Helen Hou-Sandí
02fa7656d1 Twenty Seventeen: Make fixed navigation apply at correct height on front page, without header video or image
Props laurelfulford, littlebigthing.

Merges [39392] to the 4.7 branch.
Fixes #38927 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39394


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39334 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 23:39:31 +00:00
Dominik Schilling
29e03dd26c Docs: Document the usage of the global $wpdb in _filter_query_attachment_filenames().
Merge of [39390] to the 4.7 branch.

Props mt8.biz.
See #38973.
Built from https://develop.svn.wordpress.org/branches/4.7@39391


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39331 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 23:21:32 +00:00
Dominik Schilling
849d8db4fc Twenty Seventeen: Provide a background color fallback for non-webkit browsers on input styles
This allows the styles to work correctly when modified by high contrast computer setups.

Merge of [39388] to the 4.7 branch.

Props presskopp.
See #38939.
Built from https://develop.svn.wordpress.org/branches/4.7@39389


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39329 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 23:07:36 +00:00
Dominik Schilling
f50646d6c4 Twenty Seventeen: Allow child themes to easily extend custom color patterns
By adding a filter, child themes can add additional selectors onto the custom color scheme CSS. Like so:

{{{
// Add child theme selectors for color schemes.
function dynamic_seventeen_custom_colors_css( $css, $hue, $saturation ) {
	$css .= '
	.colors-custom .content-menu > article:not(.has-post-thumbnail),
	.colors-custom .content-menu > section:not(.has-post-thumbnail) {
		border-top-color: hsl( ' . $hue . ', ' . $saturation . ', 87% ); /* base: #ddd; */
	}';
	return $css;
}
add_filter( 'twentyseventeen_custom_colors_css', 'dynamic_seventeen_custom_colors_css', 10, 3 );
}}}

Merge of [39386] to the 4.7 branch.

Props celloexpressions.
See #38949.
Built from https://develop.svn.wordpress.org/branches/4.7@39387


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39327 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 22:57:35 +00:00
Dominik Schilling
413896af01 Twenty Seventeen: Make screen reader text on scroll arrow more meaningful
This way screen reader users will know what to expect when they use this link.

Merge of [39384] to the 4.7 branch.

Props rianrietveld.
See #38970.
Built from https://develop.svn.wordpress.org/branches/4.7@39385


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 22:18:33 +00:00
Dominik Schilling
08ff35374b Options: Pass the $passed_default parameter to the default_option_{$option} filter in add_option().
This was missed in [38910].

Merge of [39382] to the 4.7 branch.

Props joehoyle, lucasstark.
See #38176, #38930.
Built from https://develop.svn.wordpress.org/branches/4.7@39383


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39323 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 21:32:34 +00:00
Joe McGill
9650704689 Twenty Seventeen: Keep header videos from extending past footer.
This adds 1px of bottom padding to header videos to keep them from
extending past the footer at the bottom of the page.

Fixes #38950 for 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39381


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39321 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 20:58:34 +00:00
Weston Ruter
b9cd04e8ad Customize: Fix regression in ability to hide fields for advanced menu properties in nav menu item controls.
Props westonruter, celloexpressions.
See #34391.
Fixes #38952 for 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39379


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39319 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 18:03:38 +00:00
Weston Ruter
ea8b01eac6 Customize: Fix regression in ability to create submenus for nav menus via drag and drop.
See #34391.
Fixes #38948 for 4.7 branch.
Props delawski, adamsilverstein.

Built from https://develop.svn.wordpress.org/branches/4.7@39377


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39317 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 17:45:34 +00:00
Helen Hou-Sandí
6d161ba61a Twenty Seventeen: Add textdomain for starter content attachment titles.
fixes #38981 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39374


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39314 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 05:49:34 +00:00
Gary Pendergast
fa7b15c74e REST API: Add tests for empty or "no-op" updates.
The API should allow updates that don't actually change anything.  This allows clients to, for example, accidentally send the same request twice without encountering unexpected errors.  This currently works for posts, terms, and users, so this commit adds test cases accordingly.

See #38700 for issues preventing this from working for comments.

Merge of [39371] to the 4.7 branch.

Props jnylen0.
See #38975.

Built from https://develop.svn.wordpress.org/branches/4.7@39372


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39312 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-30 03:28:36 +00:00
Dion Hulse
158d1b55b4 WP_Hook: Re-initialize any actions added directly to $wp_filter by advanced-cache.php.
Props dd32, ocean90.
Merges [39369] to the 4.7 branch.
Fixes #38929.

Built from https://develop.svn.wordpress.org/branches/4.7@39370


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39310 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-29 05:39:31 +00:00
Andrew Nacin
28ba2c0911 Build: Remove fsevents from npm-shrinkwrap.json
fsevents is macOS only, and npm-shrinkwrap tries to force it onto other architectures, causing build failures. Upstream: https://github.com/npm/npm/issues/2679.

fixes #38657 for the 4.7 branch.

Built from https://develop.svn.wordpress.org/branches/4.7@39368


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39308 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-29 04:59:54 +00:00
Weston Ruter
a8ef25ce7b Customize: Fix logic for previewing the URL for nav_menu_item settings for terms and post type archives.
Fixes typo in args passed to `get_term_link()` which caused a fatal error due to this call returning a `WP_Error` which was set to `url`. Also fixes never-satisfiable condition for obtaining post type archive URL. Also ensures that `WP_Error` never leaks through as `url` by setting it to an empty string. Adds missing unit tests.

Amends [38991].
See #38114.
Fixes #38945 for 4.7.

Built from https://develop.svn.wordpress.org/branches/4.7@39366


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39306 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-29 04:59:01 +00:00
Dominik Schilling
acd9d9fad3 Build/Test Tools: Add npm-shrinkwrap.json to 4.7.
By shrinkwraping our dependencies, the same versions of everything will be installed no matter what rules the dependency package.json has specified.

Fixes #38657.
Built from https://develop.svn.wordpress.org/branches/4.7@39358


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39298 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-29 04:11:52 +00:00
Helen Hou-Sandí
781d4e5b46 Branch 4.7.
Built from https://develop.svn.wordpress.org/branches/4.7@39356


git-svn-id: http://core.svn.wordpress.org/branches/4.7@39296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-24 21:32:10 +00:00
292 changed files with 18143 additions and 3664 deletions

View File

@@ -1,6 +1,6 @@
WordPress - Web publishing software
Copyright 2011-2016 by the contributors
Copyright 2011-2017 by the contributors
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by

View File

@@ -59,9 +59,10 @@
<h3>Recommendations</h3>
<ul>
<li><a href="https://secure.php.net/">PHP</a> version <strong>5.6</strong> or higher.</li>
<li><a href="https://secure.php.net/">PHP</a> version <strong>7</strong> or higher.</li>
<li><a href="https://www.mysql.com/">MySQL</a> version <strong>5.6</strong> or higher.</li>
<li>The <a href="https://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">mod_rewrite</a> Apache module.</li>
<li><a href="https://wordpress.org/news/2016/12/moving-toward-ssl/">HTTPS</a> support.</li>
<li>A link to <a href="https://wordpress.org/">wordpress.org</a> on your site.</li>
</ul>

View File

@@ -18,22 +18,7 @@ if ( ! wp_is_mobile() ) {
) );
}
/**
* Replaces the height and width attributes with values for full size.
*
* wp_video_shortcode() limits the width to 640px.
*
* @since 4.6.0
* @ignore
*
* @param $output Video shortcode HTML output.
* @return string Filtered HTML content to display video.
*/
function _wp_override_admin_video_width_limit( $output ) {
return str_replace( array( '640', '384' ), array( '1050', '630' ), $output );
}
$video_url = 'https://videopress.com/embed/GbdhpGF3?hd=true';
$video_url = 'https://videopress.com/embed/AHz0Ca46?hd=true';
$lang_code = str_replace( '_', '-', get_user_locale() );
list( $lang_code ) = explode( '-', $lang_code );
if ( 'en' !== $lang_code ) {
@@ -49,7 +34,7 @@ include( ABSPATH . 'wp-admin/admin-header.php' );
<div class="wrap about-wrap">
<h1><?php printf( __( 'Welcome to WordPress&nbsp;%s' ), $display_version ); ?></h1>
<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version. WordPress %s changes a lot behind the scenes to make your WordPress experience even better!' ), $display_version ); ?></p>
<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s helps you get your site set up the way you want it.' ), $display_version ); ?></p>
<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
<h2 class="nav-tab-wrapper wp-clearfix">
@@ -58,140 +43,210 @@ include( ABSPATH . 'wp-admin/admin-header.php' );
<a href="freedoms.php" class="nav-tab"><?php _e( 'Freedoms' ); ?></a>
</h2>
<div class="changelog point-releases">
<h3><?php _e( 'Maintenance and Security Releases' ); ?></h3>
<p><?php printf( __( '<strong>Version %s</strong> addressed one security issue.' ), '4.7.7' ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.7' ); ?>
</p>
<p><?php printf( __( '<strong>Version %s</strong> addressed some security issues.' ), '4.7.6' ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.6' ); ?>
</p>
<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 3 ), '4.7.5', number_format_i18n( 3 ) ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.5' ); ?>
</p>
<p><?php printf( _n( '<strong>Version %1$s</strong> addressed %2$s bug.',
'<strong>Version %1$s</strong> addressed %2$s bugs.', 47 ), '4.7.4', number_format_i18n( 47 ) ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.4' ); ?>
</p>
<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 39 ), '4.7.3', number_format_i18n( 39 ) ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.3' ); ?>
</p>
<p><?php printf( __( '<strong>Version %s</strong> addressed some security issues.' ), '4.7.2' ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.2' ); ?>
</p>
<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 62 ), '4.7.1', number_format_i18n( 62 ) ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'https://codex.wordpress.org/Version_4.7.1' ); ?>
</p>
</div>
<div class="headline-feature feature-video">
<iframe width="1050" height="591" src="<?php echo esc_url( $video_url ); ?>" frameborder="0" allowfullscreen></iframe>
<script src="https://videopress.com/videopress-iframe.js"></script>
</div>
<hr>
<hr />
<div class="streamlined-updates feature-section one-col">
<h2><?php _e( 'Streamlined Updates' ); ?></h2>
<p><?php _e( 'Don&#8217;t lose your place: stay on the same page while you update, install, and delete your plugins and themes.' ); ?></p>
<?php
if ( ! wp_is_mobile() ) {
add_filter( 'wp_video_shortcode', '_wp_override_admin_video_width_limit' );
echo wp_video_shortcode( array(
'mp4' => 'https://s.w.org/images/core/4.6/streamlined-updates.mp4',
'webm' => 'https://s.w.org/images/core/4.6/streamlined-updates.webm',
'poster' => 'https://s.w.org/images/core/4.6/streamlined-updates-2000.png?v1',
'loop' => true,
'autoplay' => true,
'width' => 1050,
'height' => 630,
'class' => 'wp-video-shortcode feature-video',
) );
remove_filter( 'wp_video_shortcode', '_wp_override_admin_video_width_limit' );
} else {
echo '<img src="https://s.w.org/images/core/4.6/streamlined-updates-1057.png?v1" alt="" srcset="https://s.w.org/images/core/4.6/streamlined-updates-1664.png?v1 1664w, https://s.w.org/images/core/4.6/streamlined-updates-200.png?v1 200w, https://s.w.org/images/core/4.6/streamlined-updates-1057.png?v1 1057w, https://s.w.org/images/core/4.6/streamlined-updates-2000.png?v1 2000w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 782px) calc(100vw - 70px), (max-width: 959px) calc(100vw - 116px), (max-width: 1290px) calc(100vw - 240px), 1050px" />';
}
?>
<div class="feature-section one-col">
<h2><?php _e( 'Presenting Twenty Seventeen' ); ?></h2>
<p class="lead-description"><?php _e( 'A brand new default theme brings your site to life with immersive featured images and video headers.' ); ?></p>
<picture>
<source media="(min-width: 450px)" srcset="https://s.w.org/images/core/4.7/twenty-seventeen-1600.jpg?v2 1600w, https://s.w.org/images/core/4.7/twenty-seventeen-493.jpg?v2 493w, https://s.w.org/images/core/4.7/twenty-seventeen-663.jpg?v2 663w, https://s.w.org/images/core/4.7/twenty-seventeen-804.jpg?v2 804w, https://s.w.org/images/core/4.7/twenty-seventeen-928.jpg?v2 928w, https://s.w.org/images/core/4.7/twenty-seventeen-1058.jpg?v2 1058w, https://s.w.org/images/core/4.7/twenty-seventeen-1173.jpg?v2 1173w, https://s.w.org/images/core/4.7/twenty-seventeen-1299.jpg?v2 1299w, https://s.w.org/images/core/4.7/twenty-seventeen-1410.jpg?v2 1410w, https://s.w.org/images/core/4.7/twenty-seventeen-1513.jpg?v2 1513w, https://s.w.org/images/core/4.7/twenty-seventeen-1595.jpg?v2 1595w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 782px) calc(100vw - 70px), (max-width: 959px) calc(100vw - 116px), (max-width: 1290px) calc(100vw - 240px), 1050px">
<source srcset="https://s.w.org/images/core/4.7/twenty-seventeen-mobile-564.jpg?v2 564w, https://s.w.org/images/core/4.7/twenty-seventeen-mobile-280.jpg?v2 280w, https://s.w.org/images/core/4.7/twenty-seventeen-mobile-372.jpg?v2 372w, https://s.w.org/images/core/4.7/twenty-seventeen-mobile-454.jpg?v2 454w, https://s.w.org/images/core/4.7/twenty-seventeen-mobile-541.jpg?v2 541w" sizes="calc(100vw - 40px)">
<img src="https://s.w.org/images/core/4.7/twenty-seventeen-1600.jpg?v2" srcset="https://s.w.org/images/core/4.7/twenty-seventeen-1600.jpg?v2 1600w, https://s.w.org/images/core/4.7/twenty-seventeen-280.jpg?v2 280w, https://s.w.org/images/core/4.7/twenty-seventeen-493.jpg?v2 493w, https://s.w.org/images/core/4.7/twenty-seventeen-663.jpg?v2 663w, https://s.w.org/images/core/4.7/twenty-seventeen-804.jpg?v2 804w, https://s.w.org/images/core/4.7/twenty-seventeen-928.jpg?v2 928w, https://s.w.org/images/core/4.7/twenty-seventeen-1058.jpg?v2 1058w, https://s.w.org/images/core/4.7/twenty-seventeen-1173.jpg?v2 1173w, https://s.w.org/images/core/4.7/twenty-seventeen-1299.jpg?v2 1299w, https://s.w.org/images/core/4.7/twenty-seventeen-1410.jpg?v2 1410w, https://s.w.org/images/core/4.7/twenty-seventeen-1513.jpg?v2 1513w, https://s.w.org/images/core/4.7/twenty-seventeen-1595.jpg?v2 1595w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 782px) calc(100vw - 70px), (max-width: 959px) calc(100vw - 116px), (max-width: 1290px) calc(100vw - 240px), 1050px" alt="" />
</picture>
<p><?php _e( 'Twenty Seventeen focuses on business sites and features a customizable front page with multiple sections. Personalize it with widgets, navigation, social menus, a logo, custom colors, and more. Our default theme for 2017 works great in many languages, on any device, and for a wide range of users.' ); ?></p>
</div>
<hr />
<div class="native-fonts feature-section one-col">
<h2><?php _e( 'Native Fonts' ); ?></h2>
<p><?php _e( 'The WordPress dashboard now takes advantage of the fonts you already have, making it load faster and letting you feel more at home on whatever device you use.' ); ?></p>
<img src="https://s.w.org/images/core/4.6/native-fonts-992.png?v1" alt="" srcset="https://cldup.com/Hqmo5VLb-E.png?v1 922w, https://s.w.org/images/core/4.6/native-fonts-200.png?v1 200w,https://s.w.org/images/core/4.6/native-fonts-371.png?v1 371w,https://s.w.org/images/core/4.6/native-fonts-510.png?v1 510w, https://s.w.org/images/core/4.6/native-fonts-560.png?v1 560w, https://s.w.org/images/core/4.6/native-fonts-781.png?v1 781w, https://s.w.org/images/core/4.6/native-fonts-2000.png?v1 2000w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 782px) calc(100vw - 70px), (max-width: 959px) calc(100vw - 116px), (max-width: 1290px) calc(100vw - 240px), 1050px"/>
<div class="feature-section one-col">
<h2><?php _e( 'Your Site, Your Way' ); ?></h2>
<p class="lead-description"><?php _e( 'WordPress 4.7 adds new features to the customizer to help take you through the initial setup of a theme, with non-destructive live previews of all your changes in one uninterrupted workflow.' ); ?></p>
</div>
<hr />
<div class="feature-section two-col">
<h2><?php _e( 'Editor Improvements' ); ?></h2>
<div class="col">
<img src="https://s.w.org/images/core/4.6/inline-link-checker-608.png?v1" alt="" srcset="https://s.w.org/images/core/4.6/inline-link-checker-789.png?v1 789w, https://s.w.org/images/core/4.6/inline-link-checker-200.png?v1 200w, https://s.w.org/images/core/4.6/inline-link-checker-384.png?v1 384w, https://s.w.org/images/core/4.6/inline-link-checker-608.png?v1 608w, https://s.w.org/images/core/4.6/inline-link-checker-992.png?v1 992w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 781px) calc((100vw - 70px) * .466), (max-width: 959px) calc((100vw - 116px) * .469), (max-width: 1290px) calc((100vw - 240px) * .472), 496px"/>
<h3><?php _e( 'Inline Link Checker' ); ?></h3>
<p><?php
printf(
/* translators: %s: Home URL appended with 'wordpress.org' */
__( 'Ever accidentally made a link to %s? Now WordPress automatically checks to make sure you didn&#8217;t.' ),
home_url( 'wordpress.org' )
);
?></p>
<h3><?php _e( 'Theme Starter Content' ); ?></h3>
<p><?php _e( 'To help give you a solid base to build from, individual themes can provide starter content that appears when you go to customize your brand new site. This can range from placing a business information widget in the best location to providing a sample menu with social icon links to a static front page complete with beautiful images. Don&#8217;t worry - nothing new will appear on the live site until you&#8217;re ready to save and publish your initial theme setup.' ); ?></p>
</div>
<div class="col">
<img src="https://s.w.org/images/core/4.6/content-recovery-561.png?v1" alt="" srcset="https://s.w.org/images/core/4.6/content-recovery-701.png?v1 701w, https://s.w.org/images/core/4.6/content-recovery-200.png?v1 200w, https://s.w.org/images/core/4.6/content-recovery-400.png?v1 400w, https://s.w.org/images/core/4.6/content-recovery-561.png?v1 561w, https://s.w.org/images/core/4.6/content-recovery-992.png?v1 992w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 781px) calc((100vw - 70px) * .466), (max-width: 959px) calc((100vw - 116px) * .469), (max-width: 1290px) calc((100vw - 240px) * .472), 496px"/>
<h3><?php _e( 'Content Recovery' ); ?></h3>
<p><?php _e( 'As you type, WordPress saves your content to the browser. Recovering saved content is even easier with WordPress 4.6.' ); ?></p>
<?php
echo wp_video_shortcode( array(
'mp4' => 'https://s.w.org/images/core/4.7/starter-content-v1.mp4',
'poster' => 'https://s.w.org/images/core/4.7/starter-content.jpg?v2',
'width' => 1140,
'height' => 624,
// 'class' => 'wp-video-shortcode feature-video',
) );
?>
</div>
</div>
<div class="feature-section two-col">
<div class="col">
<h3><?php _e( 'Edit Shortcuts' ); ?></h3>
<?php
echo wp_video_shortcode( array(
'mp4' => 'https://s.w.org/images/core/4.7/edit-shortcuts-v1.mp4',
'poster' => 'https://s.w.org/images/core/4.7/edit-shortcuts.jpg?v2',
'width' => 2520,
'height' => 1454,
// 'class' => 'wp-video-shortcode feature-video',
) );
?>
<p><?php _e( 'Visible icons appear to show you which parts of your site can be customized while live previewing. Click on a shortcut and get straight to editing. Paired with starter content, getting started with customizing your site is faster than ever.' );?></p>
</div>
<div class="col">
<h3><?php _e( 'Video Headers' ); ?></h3>
<?php
echo wp_video_shortcode( array(
'mp4' => 'https://s.w.org/images/core/4.7/header-video-v1.mp4',
'poster' => 'https://s.w.org/images/core/4.7/header-video.jpg?v2',
'width' => 2520,
'height' => 1454,
// 'class' => 'wp-video-shortcode feature-video',
) );
?>
<p><?php _e( 'Sometimes a big atmospheric video as a moving header image is just what you need to showcase your wares; go ahead and try it out with Twenty Seventeen. Need some video inspiration? Try searching for sites with video headers available for download and use.' ); ?></p>
</div>
</div>
<div class="feature-section two-col">
<div class="col">
<h3><?php _e( 'Smoother Menu Building' ); ?></h3>
<img src="https://s.w.org/images/core/4.7/nav-menus-760.jpg?v2" srcset="https://s.w.org/images/core/4.7/nav-menus-760.jpg?v2 760w, https://s.w.org/images/core/4.7/nav-menus-280.jpg?v2 280w, https://s.w.org/images/core/4.7/nav-menus-536.jpg?v2 536w, https://s.w.org/images/core/4.7/nav-menus-745.jpg?v2 745w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 781px) calc((100vw - 70px) * .466), (max-width: 959px) calc((100vw - 116px) * .469), (max-width: 1290px) calc((100vw - 240px) * .472), 496px" alt="" />
<p><?php _e( 'Many menus for sites contain links to the pages of your site, but what happens when you don&#8217;t have any pages yet? Now you can add new pages while building menus instead of leaving the customizer and abandoning your changes. Once you&#8217;ve published your customizations, you&#8217;ll have new pages ready for you to fill with content.' );?></p>
</div>
<div class="col">
<h3><?php _e( 'Custom CSS' ); ?></h3>
<img src="https://s.w.org/images/core/4.7/css-760.jpg?v2" srcset="https://s.w.org/images/core/4.7/css-760.jpg?v2 760w, https://s.w.org/images/core/4.7/css-280.jpg?v2 280w, https://s.w.org/images/core/4.7/css-547.jpg?v2 547w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 781px) calc((100vw - 70px) * .466), (max-width: 959px) calc((100vw - 116px) * .469), (max-width: 1290px) calc((100vw - 240px) * .472), 496px" alt="" />
<p><?php _e( 'Sometimes you just need a few visual tweaks to make your site perfect. WordPress 4.7 allows you to add custom CSS and instantly see how your changes affect your site. The live preview allows you to work quickly without page refreshes slowing you down.' ); ?></p>
</div>
</div>
<hr />
<div class="feature-section no-heading two-col">
<div class="col">
<h3><?php _e( 'PDF Thumbnail Previews' ); ?></h3>
<img src="https://s.w.org/images/core/4.7/pdf-760.jpg?v2" srcset="https://s.w.org/images/core/4.7/pdf-760.jpg?v2 760w, https://s.w.org/images/core/4.7/pdf-280.jpg?v2 280w, https://s.w.org/images/core/4.7/pdf-412.jpg?v2 412w, https://s.w.org/images/core/4.7/pdf-516.jpg?v2 516w, https://s.w.org/images/core/4.7/pdf-615.jpg?v2 615w, https://s.w.org/images/core/4.7/pdf-716.jpg?v2 716w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 781px) calc((100vw - 70px) * .466), (max-width: 959px) calc((100vw - 116px) * .469), (max-width: 1290px) calc((100vw - 240px) * .472), 496px" alt="" />
<p><?php _e( 'Managing your document collection is easier with WordPress 4.7. Uploading PDFs will generate thumbnail images so you can more easily distinguish between all your documents.' ); ?></p>
</div>
<div class="col">
<h3><?php _e( 'Dashboard in your language' ); ?></h3>
<img src="https://s.w.org/images/core/4.7/language-760.jpg?v2" srcset="https://s.w.org/images/core/4.7/language-760.jpg?v2 760w, https://s.w.org/images/core/4.7/language-280.jpg?v2 280w, https://s.w.org/images/core/4.7/language-568.jpg?v2 568w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 781px) calc((100vw - 70px) * .466), (max-width: 959px) calc((100vw - 116px) * .469), (max-width: 1290px) calc((100vw - 240px) * .472), 496px" alt="" />
<p><?php _e( 'Just because your site is in one language doesn&#8217;t mean that everybody helping manage it prefers that language for their admin. Add more languages to your site and a user language option will show up in your user&#8217;s profiles.' );?></p>
</div>
</div>
<hr />
<div class="rest-api feature-section one-col">
<h2><?php _e( 'Introducing REST API Content Endpoints' ); ?></h2>
<p class="lead-description"><?php _e( 'WordPress 4.7 comes with REST API endpoints for posts, comments, terms, users, meta, and settings.' ); ?></p>
<img src="https://s.w.org/images/core/4.7/api-1559.jpg?v2" srcset="https://s.w.org/images/core/4.7/api-2100.jpg?v2 2100w, https://s.w.org/images/core/4.7/api-280.jpg?v2 280w, https://s.w.org/images/core/4.7/api-1034.jpg?v2 1034w, https://s.w.org/images/core/4.7/api-1559.jpg?v2 1559w, https://s.w.org/images/core/4.7/api-2032.jpg?v2 2032w" sizes="(max-width: 500px) calc(100vw - 40px), (max-width: 782px) calc(100vw - 70px), (max-width: 959px) calc(100vw - 116px), (max-width: 1290px) calc(100vw - 240px), 1050px" alt="" />
<p><?php
printf(
/* translators: %s: https://developer.wordpress.org/rest-api/ */
__( 'Content endpoints provide machine-readable external access to your WordPress site with a clear, standards-driven interface, paving the way for new and innovative methods of interacting with sites through plugins, themes, apps, and beyond. Ready to get started with development? <a href="%s">Check out the REST API reference.</a>' ),
'https://developer.wordpress.org/rest-api/reference/'
);
?></p>
</div>
<hr />
<div class="changelog">
<h2><?php _e( 'Under the Hood' ); ?></h2>
<h2><?php
printf(
/* translators: %s: smiling face with smiling eyes emoji */
__( 'Even More Developer Happiness %s' ),
'&#x1F60A'
);
?></h2>
<div class="under-the-hood three-col">
<div class="col">
<h3><?php _e( 'Resource Hints' ); ?></h3>
<h3><a href="https://make.wordpress.org/core/2016/11/03/post-type-templates-in-4-7/"><?php _e( 'Post Type Templates' ); ?></a></h3>
<p><?php _e( 'By opening up the page template functionality to all post types, theme developers have even more flexibility with the WordPress template hierarchy.' ); ?></p>
</div>
<div class="col">
<h3><?php _e( 'More Theme API Goodies' ); ?></h3>
<p><?php
printf(
/* translators: %s: https://make.wordpress.org/core/2016/07/06/resource-hints-in-4-6/ */
__( '<a href="%s">Resource hints help browsers</a> decide which resources to fetch and preprocess. WordPress 4.6 adds them automatically for your styles and scripts making your site even faster.' ),
'https://make.wordpress.org/core/2016/07/06/resource-hints-in-4-6/'
/* translators: %s: https://make.wordpress.org/core/2016/09/09/new-functions-hooks-and-behaviour-for-theme-developers-in-wordpress-4-7/ */
__( 'WordPress 4.7 includes <a href="%s">new functions, hooks, and behavior</a> for theme developers.' ),
'https://make.wordpress.org/core/2016/09/09/new-functions-hooks-and-behaviour-for-theme-developers-in-wordpress-4-7/'
);
?></p>
</div>
<div class="col">
<h3><?php _e( 'Robust Requests' ); ?></h3>
<p><?php _e( 'The HTTP API now leverages the Requests library, improving HTTP standard support and adding case-insensitive headers, parallel HTTP requests, and support for Internationalized Domain Names.' ); ?></p>
</div>
<div class="col">
<h3><?php
/* translators: 1: WP_Term_Query, 2: WP_Post_Type */
printf( __( '%1$s and %2$s' ), '<code>WP_Term_Query</code>', '<code>WP_Post_Type</code>' );
?></h3>
<p><?php
printf(
/* translators: 1: WP_Term_Query, 2: WP_Post_Type */
__( 'A new %1$s class adds flexibility to query term information while a new %2$s object makes interacting with post types more predictable.' ),
'<code>WP_Term_Query</code>',
'<code>WP_Post_Type</code>'
);
?></p>
<h3><a href="https://make.wordpress.org/core/2016/10/04/custom-bulk-actions/"><?php _e( 'Custom Bulk Actions' ); ?></a></h3>
<p><?php _e( 'List tables, now with more than bulk edit and delete.' ); ?></p>
</div>
</div>
<div class="under-the-hood three-col">
<div class="col">
<h3><?php _e( 'Meta Registration API' ); ?></h3>
<h3><a href="https://make.wordpress.org/core/2016/09/08/wp_hook-next-generation-actions-and-filters/"><code>WP_Hook</code></a></h3>
<p><?php
printf(
/* translators: %s: https://make.wordpress.org/core/2016/07/08/enhancing-register_meta-in-4-6/ */
__( 'The Meta Registration API <a href="%s">has been expanded</a> to support types, descriptions, and REST API visibility.' ),
'https://make.wordpress.org/core/2016/07/08/enhancing-register_meta-in-4-6/'
/* translators: %s: https://make.wordpress.org/core/2016/09/08/wp_hook-next-generation-actions-and-filters/ */
__( 'The code that lies beneath actions and filters has been overhauled and modernized, fixing bugs along the way.' ),
'https://make.wordpress.org/core/2016/09/08/wp_hook-next-generation-actions-and-filters/'
);
?></p>
</div>
<div class="col">
<h3><?php _e( 'Translations On Demand' ); ?></h3>
<p><?php _e( 'WordPress will install and use the newest language packs for your plugins and themes as soon as they&#8217;re available from <a href="https://translate.wordpress.org/">WordPress.org&#8217;s community of translators</a>.' ); ?></p>
<h3><?php _e( 'Settings Registration API' ); ?></h3>
<p><?php
printf(
/* translators: 1: register_setting(), 2: https://make.wordpress.org/core/2016/10/26/registering-your-settings-in-wordpress-4-7/ */
__( '%1$s <a href="%2$s">has been enhanced</a> to include type, description, and REST API visibility.' ),
'<code>register_setting()</code>',
'https://make.wordpress.org/core/2016/10/26/registering-your-settings-in-wordpress-4-7/'
);
?></p>
</div>
<div class="col">
<h3><?php _e( 'JavaScript Library Updates' ); ?></h3>
<p><?php _e( 'Masonry 3.3.2, imagesLoaded 3.2.0, MediaElement.js 2.22.0, TinyMCE 4.4.1, and Backbone.js 1.3.3 are bundled.' ); ?></p>
<h3><a href="https://make.wordpress.org/core/2016/10/12/customize-changesets-technical-design-decisions/"><?php _e( 'Customize Changesets' ); ?></a></h3>
<p><?php _e( 'Customize changesets make changes in the customizer persistent, like autosave drafts. They also make exciting new features like starter content possible.' ); ?></p>
</div>
</div>
<div class="under-the-hood two-col">
<div class="col">
<h3><?php _e( 'Customizer APIs for Setting Validation and Notifications' ); ?></h3>
<p><?php _e( 'Settings now have an <a href="https://make.wordpress.org/core/2016/07/05/customizer-apis-in-4-6-for-setting-validation-and-notifications/">API for enforcing validation constraints</a>. Likewise, customizer controls now support notifications, which are used to display validation errors instead of failing silently.' ); ?></p>
</div>
<div class="col">
<h3><?php _e( 'Multisite, now faster than ever' ); ?></h3>
<p><?php
printf(
/* translators: 1: WP_Site_Query, 2: WP_Network_Query */
__( 'Cached and comprehensive site queries improve your network admin experience. The addition of %1$s and %2$s help craft advanced queries with less effort.' ),
'<code>WP_Site_Query</code>',
'<code>WP_Network_Query</code>'
);
?></p>
</div>
</div>
</div>
<hr />

View File

@@ -20,7 +20,7 @@ include( ABSPATH . 'wp-admin/admin-header.php' );
<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version. WordPress %s changes a lot behind the scenes to make your WordPress experience even better!' ), $display_version ); ?></p>
<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s helps you get your site set up the way you want it.' ), $display_version ); ?></p>
<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>

View File

@@ -40,6 +40,7 @@
max-width: 100%;
height: auto;
vertical-align: middle;
border: 1px solid rgba(0, 0, 0, 0.1);
}
.about-wrap .jetpack-video-wrapper {
@@ -93,7 +94,7 @@
}
.about-wrap .feature-section p {
max-width: 38em;
max-width: 55em;
margin-right: auto;
margin-left: auto;
}
@@ -108,8 +109,8 @@
}
.about-wrap h2 {
margin: 50px 0 1em;
font-size: 1.8em;
margin: 40px 0 .6em;
font-size: 2.7em;
line-height: 1.3;
font-weight: 300;
text-align: center;
@@ -117,7 +118,7 @@
.about-wrap h3 {
margin: 1.25em 0 .6em;
font-size: 1.25em;
font-size: 1.4em;
line-height: 1.5;
}
@@ -125,6 +126,12 @@
color: #23282d;
}
.about-wrap .changelog h2 {
font-size: 1.4em;
font-weight: 600;
text-align: right;
}
.about-wrap .changelog h3 {
margin: 1.33em 0;
font-size: 1em;
@@ -193,11 +200,6 @@
overflow: hidden;
}
.about-wrap .under-the-hood:nth-of-type(2n),
.about-wrap .under-the-hood:nth-of-type(3n) {
margin-top: 3em;
}
.about-wrap .feature-video .mejs-controls {
display: none !important;
}
@@ -227,19 +229,6 @@
/* 2.1 - Typography */
.about-wrap .headline-feature h2 {
margin: 30px 0 30px;
font-size: 2.2em;
font-weight: 300;
line-height: 1.3;
text-align: center;
}
.about-wrap .headline-feature h3 {
margin-top: 0;
text-align: right;
}
.about-wrap .feature-section.two-col h3 {
margin-top: 0;
}
@@ -253,6 +242,11 @@
margin-top: 0.6em;
}
.about-wrap .lead-description {
font-size: 1.5em;
text-align: center;
}
.about-wrap .two-col-text {
-webkit-column-count: 2;
-moz-column-count: 2;
@@ -300,6 +294,10 @@
padding: 0 0 40px;
}
.about-wrap .feature-section.no-heading {
padding-top: 35px;
}
.about-wrap .headline-feature {
margin: 0 auto;
max-width: 80%;
@@ -309,6 +307,10 @@
overflow: hidden;
}
.about-wrap .feature-section img {
margin-bottom: 1em;
}
.about-wrap .embed-container {
text-align: center;
}

File diff suppressed because one or more lines are too long

View File

@@ -40,6 +40,7 @@
max-width: 100%;
height: auto;
vertical-align: middle;
border: 1px solid rgba(0, 0, 0, 0.1);
}
.about-wrap .jetpack-video-wrapper {
@@ -93,7 +94,7 @@
}
.about-wrap .feature-section p {
max-width: 38em;
max-width: 55em;
margin-left: auto;
margin-right: auto;
}
@@ -108,8 +109,8 @@
}
.about-wrap h2 {
margin: 50px 0 1em;
font-size: 1.8em;
margin: 40px 0 .6em;
font-size: 2.7em;
line-height: 1.3;
font-weight: 300;
text-align: center;
@@ -117,7 +118,7 @@
.about-wrap h3 {
margin: 1.25em 0 .6em;
font-size: 1.25em;
font-size: 1.4em;
line-height: 1.5;
}
@@ -125,6 +126,12 @@
color: #23282d;
}
.about-wrap .changelog h2 {
font-size: 1.4em;
font-weight: 600;
text-align: left;
}
.about-wrap .changelog h3 {
margin: 1.33em 0;
font-size: 1em;
@@ -193,11 +200,6 @@
overflow: hidden;
}
.about-wrap .under-the-hood:nth-of-type(2n),
.about-wrap .under-the-hood:nth-of-type(3n) {
margin-top: 3em;
}
.about-wrap .feature-video .mejs-controls {
display: none !important;
}
@@ -227,19 +229,6 @@
/* 2.1 - Typography */
.about-wrap .headline-feature h2 {
margin: 30px 0 30px;
font-size: 2.2em;
font-weight: 300;
line-height: 1.3;
text-align: center;
}
.about-wrap .headline-feature h3 {
margin-top: 0;
text-align: left;
}
.about-wrap .feature-section.two-col h3 {
margin-top: 0;
}
@@ -253,6 +242,11 @@
margin-top: 0.6em;
}
.about-wrap .lead-description {
font-size: 1.5em;
text-align: center;
}
.about-wrap .two-col-text {
-webkit-column-count: 2;
-moz-column-count: 2;
@@ -300,6 +294,10 @@
padding: 0 0 40px;
}
.about-wrap .feature-section.no-heading {
padding-top: 35px;
}
.about-wrap .headline-feature {
margin: 0 auto;
max-width: 80%;
@@ -309,6 +307,10 @@
overflow: hidden;
}
.about-wrap .feature-section img {
margin-bottom: 1em;
}
.about-wrap .embed-container {
text-align: center;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -294,6 +294,11 @@ body {
transition: 0.18s transform cubic-bezier(0.645, 0.045, 0.355, 1), 0.18s -webkit-transform cubic-bezier(0.645, 0.045, 0.355, 1); /* easeInOutCubic */
}
#customize-theme-controls .customize-pane-child.skip-transition {
-webkit-transition: none;
transition: none;
}
#customize-info,
#customize-theme-controls .customize-pane-parent {
position: relative;

File diff suppressed because one or more lines are too long

View File

@@ -294,6 +294,11 @@ body {
transition: 0.18s transform cubic-bezier(0.645, 0.045, 0.355, 1), 0.18s -webkit-transform cubic-bezier(0.645, 0.045, 0.355, 1); /* easeInOutCubic */
}
#customize-theme-controls .customize-pane-child.skip-transition {
-webkit-transition: none;
transition: none;
}
#customize-info,
#customize-theme-controls .customize-pane-parent {
position: relative;

File diff suppressed because one or more lines are too long

View File

@@ -161,6 +161,7 @@
outline: none;
overflow: hidden;
cursor: pointer;
text-align: center;
}
.wp-customizer .menu-item.menu-item-edit-active .item-edit .toggle-indicator:after {
@@ -301,19 +302,19 @@
text-decoration: none !important;
}
#accordion-panel-nav_menus .field-link-target,
#accordion-panel-nav_menus .field-title-attribute,
#accordion-panel-nav_menus .field-css-classes,
#accordion-panel-nav_menus .field-xfn,
#accordion-panel-nav_menus .field-description {
.control-section-nav_menu .field-link-target,
.control-section-nav_menu .field-title-attribute,
.control-section-nav_menu .field-css-classes,
.control-section-nav_menu .field-xfn,
.control-section-nav_menu .field-description {
display: none;
}
#accordion-panel-nav_menus.field-link-target-active .field-link-target,
#accordion-panel-nav_menus.field-title-attribute-active .field-title-attribute,
#accordion-panel-nav_menus.field-css-classes-active .field-css-classes,
#accordion-panel-nav_menus.field-xfn-active .field-xfn,
#accordion-panel-nav_menus.field-description-active .field-description {
.control-section-nav_menu.field-link-target-active .field-link-target,
.control-section-nav_menu.field-title-attribute-active .field-title-attribute,
.control-section-nav_menu.field-css-classes-active .field-css-classes,
.control-section-nav_menu.field-xfn-active .field-xfn,
.control-section-nav_menu.field-description-active .field-description {
display: block;
}
@@ -532,6 +533,7 @@
box-shadow: none;
outline: none;
cursor: pointer;
text-align: center;
}
#available-menu-items .accordion-section-title .no-items,
@@ -623,6 +625,7 @@
box-shadow: none;
outline: none;
cursor: pointer;
text-align: center;
}
#available-menu-items .menu-item-handle .item-add:focus {
@@ -811,7 +814,6 @@ li.assigned-to-menu-location .add-new-menu-item {
.menu-delete:hover,
.menu-delete:focus {
color: #f00;
text-decoration: none;
}
.menu-item-handle {

File diff suppressed because one or more lines are too long

View File

@@ -161,6 +161,7 @@
outline: none;
overflow: hidden;
cursor: pointer;
text-align: center;
}
.wp-customizer .menu-item.menu-item-edit-active .item-edit .toggle-indicator:after {
@@ -301,19 +302,19 @@
text-decoration: none !important;
}
#accordion-panel-nav_menus .field-link-target,
#accordion-panel-nav_menus .field-title-attribute,
#accordion-panel-nav_menus .field-css-classes,
#accordion-panel-nav_menus .field-xfn,
#accordion-panel-nav_menus .field-description {
.control-section-nav_menu .field-link-target,
.control-section-nav_menu .field-title-attribute,
.control-section-nav_menu .field-css-classes,
.control-section-nav_menu .field-xfn,
.control-section-nav_menu .field-description {
display: none;
}
#accordion-panel-nav_menus.field-link-target-active .field-link-target,
#accordion-panel-nav_menus.field-title-attribute-active .field-title-attribute,
#accordion-panel-nav_menus.field-css-classes-active .field-css-classes,
#accordion-panel-nav_menus.field-xfn-active .field-xfn,
#accordion-panel-nav_menus.field-description-active .field-description {
.control-section-nav_menu.field-link-target-active .field-link-target,
.control-section-nav_menu.field-title-attribute-active .field-title-attribute,
.control-section-nav_menu.field-css-classes-active .field-css-classes,
.control-section-nav_menu.field-xfn-active .field-xfn,
.control-section-nav_menu.field-description-active .field-description {
display: block;
}
@@ -532,6 +533,7 @@
box-shadow: none;
outline: none;
cursor: pointer;
text-align: center;
}
#available-menu-items .accordion-section-title .no-items,
@@ -623,6 +625,7 @@
box-shadow: none;
outline: none;
cursor: pointer;
text-align: center;
}
#available-menu-items .menu-item-handle .item-add:focus {
@@ -811,7 +814,6 @@ li.assigned-to-menu-location .add-new-menu-item {
.menu-delete:hover,
.menu-delete:focus {
color: #f00;
text-decoration: none;
}
.menu-item-handle {

File diff suppressed because one or more lines are too long

View File

@@ -336,7 +336,7 @@ form#tags-filter {
}
#content-resize-handle {
background: transparent url(../images/resize.gif) no-repeat scroll right bottom;
background: transparent url(../images/resize.gif) no-repeat scroll left bottom;
width: 12px;
cursor: row-resize;
}
@@ -1229,6 +1229,7 @@ table.links-table {
}
.focus-on .wrap > h1,
.focus-on .page-title-action,
.focus-on #wpfooter,
.focus-on .postbox-container > *,
.focus-on div.updated,
@@ -1252,6 +1253,7 @@ table.links-table {
}
.focus-off .wrap > h1,
.focus-off .page-title-action,
.focus-off #wpfooter,
.focus-off .postbox-container > *,
.focus-off div.updated,
@@ -1319,7 +1321,7 @@ table.links-table {
(min-resolution: 120dpi) {
#content-resize-handle,
#post-body .wp_themeSkin .mceStatusbar a.mceResize {
background: transparent url(../images/resize-2x.gif) no-repeat scroll right bottom;
background: transparent url(../images/resize-2x.gif) no-repeat scroll left bottom;
-webkit-background-size: 11px 11px;
background-size: 11px 11px;
}

File diff suppressed because one or more lines are too long

View File

@@ -1229,6 +1229,7 @@ table.links-table {
}
.focus-on .wrap > h1,
.focus-on .page-title-action,
.focus-on #wpfooter,
.focus-on .postbox-container > *,
.focus-on div.updated,
@@ -1252,6 +1253,7 @@ table.links-table {
}
.focus-off .wrap > h1,
.focus-off .page-title-action,
.focus-off #wpfooter,
.focus-off .postbox-container > *,
.focus-off div.updated,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -102,7 +102,7 @@ if ( $wp_customize->is_ios() ) {
if ( is_rtl() ) {
$body_class .= ' rtl';
}
$body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) );
$body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_user_locale() ) ) );
$admin_title = sprintf( $wp_customize->get_document_title_template(), __( 'Loading&hellip;' ) );
@@ -155,7 +155,7 @@ do_action( 'customize_controls_print_scripts' );
<div id="customize-info" class="accordion-section customize-info">
<div class="accordion-section-title">
<span class="preview-notice"><?php
echo sprintf( __( 'You are customizing %s' ), '<strong class="panel-title site-title">' . get_bloginfo( 'name' ) . '</strong>' );
echo sprintf( __( 'You are customizing %s' ), '<strong class="panel-title site-title">' . get_bloginfo( 'name', 'display' ) . '</strong>' );
?></span>
<button type="button" class="customize-help-toggle dashicons dashicons-editor-help" aria-expanded="false"><span class="screen-reader-text"><?php _e( 'Help' ); ?></span></button>
</div>

View File

@@ -74,7 +74,7 @@ do_action( "{$taxonomy}_pre_edit_form", $tag, $taxonomy ); ?>
<div id="message" class="updated">
<p><strong><?php echo $message; ?></strong></p>
<?php if ( $wp_http_referer ) { ?>
<p><a href="<?php echo esc_url( $wp_http_referer ); ?>"><?php
<p><a href="<?php echo esc_url( wp_validate_redirect( esc_url_raw( $wp_http_referer ), admin_url( 'term.php?taxonomy=' . $taxonomy ) ) ); ?>"><?php
/* translators: %s: taxonomy name */
printf( _x( '&larr; Back to %s', 'admin screen' ), $tax->labels->name );
?></a></p>

View File

@@ -81,7 +81,7 @@ case 'add-tag':
$ret = wp_insert_term( $_POST['tag-name'], $taxonomy, $_POST );
if ( $ret && !is_wp_error( $ret ) )
$location = add_query_arg( 'message', 1, $location );
$location = add_query_arg( 'message', 1, $referer );
else
$location = add_query_arg( array( 'error' => true, 'message' => 4 ), $referer );

View File

@@ -19,7 +19,7 @@ include( ABSPATH . 'wp-admin/admin-header.php' );
<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version. WordPress %s changes a lot behind the scenes to make your WordPress experience even better!' ), $display_version ); ?></p>
<p class="about-text"><?php printf( __( 'Thank you for updating to the latest version! WordPress %s helps you get your site set up the way you want it.' ), $display_version ); ?></p>
<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>

View File

@@ -601,16 +601,16 @@ class WP_Plugins_List_Table extends WP_List_Table {
if ( $is_active ) {
if ( current_user_can( 'manage_network_plugins' ) ) {
/* translators: %s: plugin name */
$actions['deactivate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=deactivate&amp;plugin=' . $plugin_file . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'deactivate-plugin_' . $plugin_file ) . '" aria-label="' . esc_attr( sprintf( _x( 'Network Deactivate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Network Deactivate' ) . '</a>';
$actions['deactivate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=deactivate&amp;plugin=' . urlencode( $plugin_file ) . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'deactivate-plugin_' . $plugin_file ) . '" aria-label="' . esc_attr( sprintf( _x( 'Network Deactivate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Network Deactivate' ) . '</a>';
}
} else {
if ( current_user_can( 'manage_network_plugins' ) ) {
/* translators: %s: plugin name */
$actions['activate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=activate&amp;plugin=' . $plugin_file . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'activate-plugin_' . $plugin_file ) . '" class="edit" aria-label="' . esc_attr( sprintf( _x( 'Network Activate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Network Activate' ) . '</a>';
$actions['activate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=activate&amp;plugin=' . urlencode( $plugin_file ) . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'activate-plugin_' . $plugin_file ) . '" class="edit" aria-label="' . esc_attr( sprintf( _x( 'Network Activate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Network Activate' ) . '</a>';
}
if ( current_user_can( 'delete_plugins' ) && ! is_plugin_active( $plugin_file ) ) {
/* translators: %s: plugin name */
$actions['delete'] = '<a href="' . wp_nonce_url( 'plugins.php?action=delete-selected&amp;checked[]=' . $plugin_file . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'bulk-plugins' ) . '" class="delete" aria-label="' . esc_attr( sprintf( _x( 'Delete %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Delete' ) . '</a>';
$actions['delete'] = '<a href="' . wp_nonce_url( 'plugins.php?action=delete-selected&amp;checked[]=' . urlencode( $plugin_file ) . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'bulk-plugins' ) . '" class="delete" aria-label="' . esc_attr( sprintf( _x( 'Delete %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Delete' ) . '</a>';
}
}
} else {
@@ -624,14 +624,14 @@ class WP_Plugins_List_Table extends WP_List_Table {
);
} elseif ( $is_active ) {
/* translators: %s: plugin name */
$actions['deactivate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=deactivate&amp;plugin=' . $plugin_file . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'deactivate-plugin_' . $plugin_file ) . '" aria-label="' . esc_attr( sprintf( _x( 'Deactivate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Deactivate' ) . '</a>';
$actions['deactivate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=deactivate&amp;plugin=' . urlencode( $plugin_file ) . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'deactivate-plugin_' . $plugin_file ) . '" aria-label="' . esc_attr( sprintf( _x( 'Deactivate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Deactivate' ) . '</a>';
} else {
/* translators: %s: plugin name */
$actions['activate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=activate&amp;plugin=' . $plugin_file . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'activate-plugin_' . $plugin_file ) . '" class="edit" aria-label="' . esc_attr( sprintf( _x( 'Activate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Activate' ) . '</a>';
$actions['activate'] = '<a href="' . wp_nonce_url( 'plugins.php?action=activate&amp;plugin=' . urlencode( $plugin_file ) . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'activate-plugin_' . $plugin_file ) . '" class="edit" aria-label="' . esc_attr( sprintf( _x( 'Activate %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Activate' ) . '</a>';
if ( ! is_multisite() && current_user_can( 'delete_plugins' ) ) {
/* translators: %s: plugin name */
$actions['delete'] = '<a href="' . wp_nonce_url( 'plugins.php?action=delete-selected&amp;checked[]=' . $plugin_file . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'bulk-plugins' ) . '" class="delete" aria-label="' . esc_attr( sprintf( _x( 'Delete %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Delete' ) . '</a>';
$actions['delete'] = '<a href="' . wp_nonce_url( 'plugins.php?action=delete-selected&amp;checked[]=' . urlencode( $plugin_file ) . '&amp;plugin_status=' . $context . '&amp;paged=' . $page . '&amp;s=' . $s, 'bulk-plugins' ) . '" class="delete" aria-label="' . esc_attr( sprintf( _x( 'Delete %s', 'plugin' ), $plugin_data['Name'] ) ) . '">' . __( 'Delete' ) . '</a>';
}
} // end if $is_active
@@ -639,7 +639,7 @@ class WP_Plugins_List_Table extends WP_List_Table {
if ( ( ! is_multisite() || $screen->in_admin( 'network' ) ) && current_user_can( 'edit_plugins' ) && is_writable( WP_PLUGIN_DIR . '/' . $plugin_file ) ) {
/* translators: %s: plugin name */
$actions['edit'] = '<a href="plugin-editor.php?file=' . $plugin_file . '" class="edit" aria-label="' . esc_attr( sprintf( __( 'Edit %s' ), $plugin_data['Name'] ) ) . '">' . __( 'Edit' ) . '</a>';
$actions['edit'] = '<a href="plugin-editor.php?file=' . urlencode( $plugin_file ) . '" class="edit" aria-label="' . esc_attr( sprintf( __( 'Edit %s' ), $plugin_data['Name'] ) ) . '">' . __( 'Edit' ) . '</a>';
}
} // end if $context

View File

@@ -955,7 +955,7 @@ class WP_Posts_List_Table extends WP_List_Table {
echo "</strong>\n";
if ( ! is_post_type_hierarchical( $this->screen->post_type ) && 'excerpt' === $mode && current_user_can( 'read_post', $post->ID ) ) {
the_excerpt();
echo esc_html( get_the_excerpt() );
}
get_inline_data( $post );

View File

@@ -119,10 +119,28 @@ class WP_Press_This {
'post_type' => 'post',
'post_status' => 'draft',
'post_format' => ( ! empty( $_POST['post_format'] ) ) ? sanitize_text_field( $_POST['post_format'] ) : '',
'tax_input' => ( ! empty( $_POST['tax_input'] ) ) ? $_POST['tax_input'] : array(),
'post_category' => ( ! empty( $_POST['post_category'] ) ) ? $_POST['post_category'] : array(),
);
// Only accept categories if the user actually can assign
$category_tax = get_taxonomy( 'category' );
if ( current_user_can( $category_tax->cap->assign_terms ) ) {
$post_data['post_category'] = ( ! empty( $_POST['post_category'] ) ) ? $_POST['post_category'] : array();
}
// Only accept taxonomies if the user can actually assign
if ( ! empty( $_POST['tax_input'] ) ) {
$tax_input = $_POST['tax_input'];
foreach ( $tax_input as $tax => $_ti ) {
$tax_object = get_taxonomy( $tax );
if ( ! $tax_object || ! current_user_can( $tax_object->cap->assign_terms ) ) {
unset( $tax_input[ $tax ] );
}
}
$post_data['tax_input'] = $tax_input;
}
// Toggle status to pending if user cannot actually publish
if ( ! empty( $_POST['post_status'] ) && 'publish' === $_POST['post_status'] ) {
if ( current_user_can( 'publish_posts' ) ) {
$post_data['post_status'] = 'publish';
@@ -453,7 +471,7 @@ class WP_Press_This {
* @since 4.2.0
*
* @param string $src Embed source URL.
* @return string If not from a supported provider, an empty string. Otherwise, a reformattd embed URL.
* @return string If not from a supported provider, an empty string. Otherwise, a reformatted embed URL.
*/
private function _limit_embed( $src ) {
$src = $this->_limit_url( $src );
@@ -700,7 +718,11 @@ class WP_Press_This {
* making PT fully backward compatible with the older bookmarklet.
*/
if ( empty( $_POST ) && ! empty( $data['u'] ) ) {
$data = $this->source_data_fetch_fallback( $data['u'], $data );
if ( isset( $_GET['_wpnonce'] ) && wp_verify_nonce( $_GET['_wpnonce'], 'scan-site' ) ) {
$data = $this->source_data_fetch_fallback( $data['u'], $data );
} else {
$data['errors'] = 'missing nonce';
}
} else {
foreach ( array( '_images', '_embeds' ) as $type ) {
if ( empty( $_POST[ $type ] ) ) {
@@ -853,6 +875,12 @@ class WP_Press_This {
public function categories_html( $post ) {
$taxonomy = get_taxonomy( 'category' );
// Bail if user cannot assign terms
if ( ! current_user_can( $taxonomy->cap->assign_terms ) ) {
return;
}
// Only show "add" if user can edit terms
if ( current_user_can( $taxonomy->cap->edit_terms ) ) {
?>
<button type="button" class="add-cat-toggle button-link" aria-expanded="false">
@@ -1211,7 +1239,7 @@ class WP_Press_This {
$site_data = array(
'v' => ! empty( $data['v'] ) ? $data['v'] : '',
'u' => ! empty( $data['u'] ) ? $data['u'] : '',
'hasData' => ! empty( $data ),
'hasData' => ! empty( $data ) && ! isset( $data['errors'] ),
);
if ( ! empty( $images ) ) {
@@ -1272,6 +1300,12 @@ class WP_Press_This {
wp_enqueue_script( 'json2' );
wp_enqueue_script( 'editor' );
$categories_tax = get_taxonomy( 'category' );
$show_categories = current_user_can( $categories_tax->cap->assign_terms ) || current_user_can( $categories_tax->cap->edit_terms );
$tag_tax = get_taxonomy( 'post_tag' );
$show_tags = current_user_can( $tag_tax->cap->assign_terms );
$supports_formats = false;
$post_format = 0;
@@ -1337,8 +1371,9 @@ class WP_Press_This {
<div id="scanbar" class="scan">
<form method="GET">
<label for="url-scan" class="screen-reader-text"><?php _e( 'Scan site for content' ); ?></label>
<input type="url" name="u" id="url-scan" class="scan-url" value="" placeholder="<?php esc_attr_e( 'Enter a URL to scan' ) ?>" />
<input type="url" name="u" id="url-scan" class="scan-url" value="<?php echo esc_attr( $site_data['u'] ) ?>" placeholder="<?php esc_attr_e( 'Enter a URL to scan' ) ?>" />
<input type="submit" name="url-scan-submit" id="url-scan-submit" class="scan-submit" value="<?php esc_attr_e( 'Scan' ) ?>" />
<?php wp_nonce_field( 'scan-site' ); ?>
</form>
</div>
@@ -1423,17 +1458,21 @@ class WP_Press_This {
</button>
<?php endif; ?>
<button type="button" class="button-link post-option">
<span class="dashicons dashicons-category"></span>
<span class="post-option-title"><?php _e( 'Categories' ); ?></span>
<span class="dashicons post-option-forward"></span>
</button>
<?php if ( $show_categories ) : ?>
<button type="button" class="button-link post-option">
<span class="dashicons dashicons-category"></span>
<span class="post-option-title"><?php _e( 'Categories' ); ?></span>
<span class="dashicons post-option-forward"></span>
</button>
<?php endif; ?>
<button type="button" class="button-link post-option">
<span class="dashicons dashicons-tag"></span>
<span class="post-option-title"><?php _e( 'Tags' ); ?></span>
<span class="dashicons post-option-forward"></span>
</button>
<?php if ( $show_tags ) : ?>
<button type="button" class="button-link post-option">
<span class="dashicons dashicons-tag"></span>
<span class="post-option-title"><?php _e( 'Tags' ); ?></span>
<span class="dashicons post-option-forward"></span>
</button>
<?php endif; ?>
</div>
<?php if ( $supports_formats ) : ?>
@@ -1447,23 +1486,27 @@ class WP_Press_This {
</div>
<?php endif; ?>
<div class="setting-modal is-off-screen is-hidden">
<button type="button" class="button-link modal-close">
<span class="dashicons post-option-back"></span>
<span class="setting-title" aria-hidden="true"><?php _e( 'Categories' ); ?></span>
<span class="screen-reader-text"><?php _e( 'Back to post options' ) ?></span>
</button>
<?php $this->categories_html( $post ); ?>
</div>
<?php if ( $show_categories ) : ?>
<div class="setting-modal is-off-screen is-hidden">
<button type="button" class="button-link modal-close">
<span class="dashicons post-option-back"></span>
<span class="setting-title" aria-hidden="true"><?php _e( 'Categories' ); ?></span>
<span class="screen-reader-text"><?php _e( 'Back to post options' ) ?></span>
</button>
<?php $this->categories_html( $post ); ?>
</div>
<?php endif; ?>
<div class="setting-modal tags is-off-screen is-hidden">
<button type="button" class="button-link modal-close">
<span class="dashicons post-option-back"></span>
<span class="setting-title" aria-hidden="true"><?php _e( 'Tags' ); ?></span>
<span class="screen-reader-text"><?php _e( 'Back to post options' ) ?></span>
</button>
<?php $this->tags_html( $post ); ?>
</div>
<?php if ( $show_tags ) : ?>
<div class="setting-modal tags is-off-screen is-hidden">
<button type="button" class="button-link modal-close">
<span class="dashicons post-option-back"></span>
<span class="setting-title" aria-hidden="true"><?php _e( 'Tags' ); ?></span>
<span class="screen-reader-text"><?php _e( 'Back to post options' ) ?></span>
</button>
<?php $this->tags_html( $post ); ?>
</div>
<?php endif; ?>
</div><!-- .options-panel -->
</div><!-- .wrapper -->

View File

@@ -915,7 +915,8 @@ final class WP_Screen {
switch ( $this->base ) {
case 'widgets':
$this->_screen_settings = '<p><a id="access-on" href="widgets.php?widgets-access=on">' . __('Enable accessibility mode') . '</a><a id="access-off" href="widgets.php?widgets-access=off">' . __('Disable accessibility mode') . "</a></p>\n";
$nonce = wp_create_nonce( 'widgets-access' );
$this->_screen_settings = '<p><a id="access-on" href="widgets.php?widgets-access=on&_wpnonce=' . urlencode( $nonce ) . '">' . __('Enable accessibility mode') . '</a><a id="access-off" href="widgets.php?widgets-access=off&_wpnonce=' . urlencode( $nonce ) . '">' . __('Disable accessibility mode') . "</a></p>\n";
break;
case 'post' :
$expand = '<fieldset class="editor-expand hidden"><legend>' . __( 'Additional settings' ) . '</legend><label for="editor-expand-toggle">';

View File

@@ -0,0 +1,43 @@
<?php
/**
* The User Interface "Skins" for the WordPress File Upgrader
*
* @package WordPress
* @subpackage Upgrader
* @since 2.8.0
*/
_deprecated_file( basename( __FILE__ ), '4.7.0', 'class-wp-upgrader.php' );
/** WP_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader-skin.php';
/** Plugin_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-plugin-upgrader-skin.php';
/** Theme_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-theme-upgrader-skin.php';
/** Bulk_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-bulk-upgrader-skin.php';
/** Bulk_Plugin_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-bulk-plugin-upgrader-skin.php';
/** Bulk_Theme_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-bulk-theme-upgrader-skin.php';
/** Plugin_Installer_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-plugin-installer-skin.php';
/** Theme_Installer_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-theme-installer-skin.php';
/** Language_Pack_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-language-pack-upgrader-skin.php';
/** Automatic_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-automatic-upgrader-skin.php';
/** WP_Ajax_Upgrader_Skin class */
require_once ABSPATH . 'wp-admin/includes/class-wp-ajax-upgrader-skin.php';

View File

@@ -647,6 +647,10 @@ function _unzip_file_ziparchive($file, $to, $needed_dirs = array() ) {
if ( '__MACOSX/' === substr($info['name'], 0, 9) ) // Skip the OS X-created __MACOSX directory
continue;
if ( 0 !== validate_file( $info['name'] ) ) {
return new WP_Error( 'invalid_file_ziparchive', __( 'Could not extract file from archive.' ), $info['name'] );
}
$uncompressed_size += $info['size'];
if ( '/' === substr( $info['name'], -1 ) ) {
@@ -807,6 +811,10 @@ function _unzip_file_pclzip($file, $to, $needed_dirs = array()) {
if ( '__MACOSX/' === substr($file['filename'], 0, 9) ) // Don't extract the OS X-created __MACOSX directory files
continue;
if ( 0 !== validate_file( $file['filename'] ) ) {
return new WP_Error( 'invalid_file_pclzip', __( 'Could not extract file from archive.' ), $file['filename'] );
}
if ( ! $wp_filesystem->put_contents( $to . $file['filename'], $file['content'], FS_CHMOD_FILE) )
return new WP_Error( 'copy_failed_pclzip', __( 'Could not copy file.' ), $file['filename'] );
}
@@ -1091,14 +1099,28 @@ function request_filesystem_credentials( $form_post, $type = '', $error = false,
$credentials = get_option('ftp_credentials', array( 'hostname' => '', 'username' => ''));
$submitted_form = wp_unslash( $_POST );
// Verify nonce, or unset submitted form field values on failure
if ( ! isset( $_POST['_fs_nonce'] ) || ! wp_verify_nonce( $_POST['_fs_nonce'], 'filesystem-credentials' ) ) {
unset(
$submitted_form['hostname'],
$submitted_form['username'],
$submitted_form['password'],
$submitted_form['public_key'],
$submitted_form['private_key'],
$submitted_form['connection_type']
);
}
// If defined, set it to that, Else, If POST'd, set it to that, If not, Set it to whatever it previously was(saved details in option)
$credentials['hostname'] = defined('FTP_HOST') ? FTP_HOST : (!empty($_POST['hostname']) ? wp_unslash( $_POST['hostname'] ) : $credentials['hostname']);
$credentials['username'] = defined('FTP_USER') ? FTP_USER : (!empty($_POST['username']) ? wp_unslash( $_POST['username'] ) : $credentials['username']);
$credentials['password'] = defined('FTP_PASS') ? FTP_PASS : (!empty($_POST['password']) ? wp_unslash( $_POST['password'] ) : '');
$credentials['hostname'] = defined('FTP_HOST') ? FTP_HOST : (!empty($submitted_form['hostname']) ? $submitted_form['hostname'] : $credentials['hostname']);
$credentials['username'] = defined('FTP_USER') ? FTP_USER : (!empty($submitted_form['username']) ? $submitted_form['username'] : $credentials['username']);
$credentials['password'] = defined('FTP_PASS') ? FTP_PASS : (!empty($submitted_form['password']) ? $submitted_form['password'] : '');
// Check to see if we are setting the public/private keys for ssh
$credentials['public_key'] = defined('FTP_PUBKEY') ? FTP_PUBKEY : (!empty($_POST['public_key']) ? wp_unslash( $_POST['public_key'] ) : '');
$credentials['private_key'] = defined('FTP_PRIKEY') ? FTP_PRIKEY : (!empty($_POST['private_key']) ? wp_unslash( $_POST['private_key'] ) : '');
$credentials['public_key'] = defined('FTP_PUBKEY') ? FTP_PUBKEY : (!empty($submitted_form['public_key']) ? $submitted_form['public_key'] : '');
$credentials['private_key'] = defined('FTP_PRIKEY') ? FTP_PRIKEY : (!empty($submitted_form['private_key']) ? $submitted_form['private_key'] : '');
// Sanitize the hostname, Some people might pass in odd-data:
$credentials['hostname'] = preg_replace('|\w+://|', '', $credentials['hostname']); //Strip any schemes off
@@ -1115,8 +1137,8 @@ function request_filesystem_credentials( $form_post, $type = '', $error = false,
$credentials['connection_type'] = 'ssh';
} elseif ( ( defined( 'FTP_SSL' ) && FTP_SSL ) && 'ftpext' == $type ) { //Only the FTP Extension understands SSL
$credentials['connection_type'] = 'ftps';
} elseif ( ! empty( $_POST['connection_type'] ) ) {
$credentials['connection_type'] = wp_unslash( $_POST['connection_type'] );
} elseif ( ! empty( $submitted_form['connection_type'] ) ) {
$credentials['connection_type'] = $submitted_form['connection_type'];
} elseif ( ! isset( $credentials['connection_type'] ) ) { //All else fails (And it's not defaulted to something else saved), Default to FTP
$credentials['connection_type'] = 'ftp';
}
@@ -1255,11 +1277,12 @@ if ( isset( $types['ssh'] ) ) {
}
foreach ( (array) $extra_fields as $field ) {
if ( isset( $_POST[ $field ] ) )
echo '<input type="hidden" name="' . esc_attr( $field ) . '" value="' . esc_attr( wp_unslash( $_POST[ $field ] ) ) . '" />';
if ( isset( $submitted_form[ $field ] ) )
echo '<input type="hidden" name="' . esc_attr( $field ) . '" value="' . esc_attr( $submitted_form[ $field ] ) . '" />';
}
?>
<p class="request-filesystem-credentials-action-buttons">
<?php wp_nonce_field( 'filesystem-credentials', '_fs_nonce', false, true ); ?>
<button class="button cancel-button" data-js-action="close" type="button"><?php _e( 'Cancel' ); ?></button>
<?php submit_button( __( 'Proceed' ), '', 'upgrade', false ); ?>
</p>

View File

@@ -221,14 +221,28 @@ function wp_generate_attachment_metadata( $attachment_id, $file ) {
$fallback_sizes = apply_filters( 'fallback_intermediate_image_sizes', $fallback_sizes, $metadata );
$sizes = array();
$_wp_additional_image_sizes = wp_get_additional_image_sizes();
foreach ( $fallback_sizes as $s ) {
$sizes[ $s ]['width'] = get_option( "{$s}_size_w" );
$sizes[ $s ]['height'] = get_option( "{$s}_size_h" );
if ( isset( $_wp_additional_image_sizes[ $s ]['width'] ) ) {
$sizes[ $s ]['width'] = intval( $_wp_additional_image_sizes[ $s ]['width'] );
} else {
$sizes[ $s ]['width'] = get_option( "{$s}_size_w" );
}
// Force thumbnails to be soft crops.
if ( ! 'thumbnail' === $s ) {
$sizes[ $s ]['crop'] = get_option( "{$s}_crop" );
if ( isset( $_wp_additional_image_sizes[ $s ]['height'] ) ) {
$sizes[ $s ]['height'] = intval( $_wp_additional_image_sizes[ $s ]['height'] );
} else {
$sizes[ $s ]['height'] = get_option( "{$s}_size_h" );
}
if ( isset( $_wp_additional_image_sizes[ $s ]['crop'] ) ) {
$sizes[ $s ]['crop'] = $_wp_additional_image_sizes[ $s ]['crop'];
} else {
// Force thumbnails to be soft crops.
if ( ! 'thumbnail' === $s ) {
$sizes[ $s ]['crop'] = get_option( "{$s}_crop" );
}
}
}
@@ -237,7 +251,15 @@ function wp_generate_attachment_metadata( $attachment_id, $file ) {
$editor = wp_get_image_editor( $file );
if ( ! is_wp_error( $editor ) ) { // No support for this type of file
$uploaded = $editor->save( $file, 'image/jpeg' );
/*
* PDFs may have the same file filename as JPEGs.
* Ensure the PDF preview image does not overwrite any JPEG images that already exist.
*/
$dirname = dirname( $file ) . '/';
$ext = '.' . pathinfo( $file, PATHINFO_EXTENSION );
$preview_file = $dirname . wp_unique_filename( $dirname, wp_basename( $file, $ext ) . '-pdf.jpg' );
$uploaded = $editor->save( $preview_file, 'image/jpeg' );
unset( $editor );
// Resize based on the full size image, rather than the source.

View File

@@ -2982,7 +2982,7 @@ function wp_add_id3_tag_data( &$metadata, $data ) {
if ( ! empty( $data[$version]['comments'] ) ) {
foreach ( $data[$version]['comments'] as $key => $list ) {
if ( 'length' !== $key && ! empty( $list ) ) {
$metadata[$key] = reset( $list );
$metadata[$key] = wp_kses_post( reset( $list ) );
// Fix bug in byte stream analysis.
if ( 'terms_of_use' === $key && 0 === strpos( $metadata[$key], 'yright notice.' ) )
$metadata[$key] = 'Cop' . $metadata[$key];

View File

@@ -1154,33 +1154,6 @@ function wp_edit_attachments_query_vars( $q = false ) {
return $q;
}
/**
* Filter the SQL clauses of an attachment query to include filenames.
*
* @since 4.7.0
* @access private
*
* @param array $clauses An array including WHERE, GROUP BY, JOIN, ORDER BY,
* DISTINCT, fields (SELECT), and LIMITS clauses.
* @return array The modified clauses.
*/
function _filter_query_attachment_filenames( $clauses ) {
global $wpdb;
remove_filter( 'posts_clauses', __FUNCTION__ );
// Add a LEFT JOIN of the postmeta table so we don't trample existing JOINs.
$clauses['join'] .= " LEFT JOIN {$wpdb->postmeta} AS sq1 ON ( {$wpdb->posts}.ID = sq1.post_id AND sq1.meta_key = '_wp_attached_file' )";
$clauses['groupby'] = "{$wpdb->posts}.ID";
$clauses['where'] = preg_replace(
"/\({$wpdb->posts}.post_content (NOT LIKE|LIKE) (\'[^']+\')\)/",
"$0 OR ( sq1.meta_value $1 $2 )",
$clauses['where'] );
return $clauses;
}
/**
* Executes a query for attachments. An array of WP_Query arguments
* can be passed in, which will override the arguments set by this function.

View File

@@ -772,7 +772,7 @@ function page_template_dropdown( $default = '', $post_type = 'page' ) {
ksort( $templates );
foreach ( array_keys( $templates ) as $template ) {
$selected = selected( $default, $templates[ $template ], false );
echo "\n\t<option value='" . $templates[ $template ] . "' $selected>$template</option>";
echo "\n\t<option value='" . esc_attr( $templates[ $template ] ) . "' $selected>" . esc_html( $template ) . "</option>";
}
}

View File

@@ -578,7 +578,7 @@ function wp_prepare_themes_for_js( $themes = null ) {
if ( current_user_can( 'edit_theme_options' ) && current_user_can( 'customize' ) ) {
$customize_action = esc_url( add_query_arg(
array(
'return' => urlencode( esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) ) ),
'return' => urlencode( esc_url_raw( remove_query_arg( wp_removable_query_args(), wp_unslash( $_SERVER['REQUEST_URI'] ) ) ) ),
),
wp_customize_url( $slug )
) );

View File

@@ -705,12 +705,6 @@ $_old_files = array(
'wp-includes/theme-compat/comments-popup.php',
// 4.6
'wp-admin/includes/class-wp-automatic-upgrader.php', // Wrong file name, see #37628.
// 4.7
'wp-admin/includes/class-wp-upgrader-skins.php',
'wp-includes/class-feed.php',
'wp-includes/locale.php',
'wp-includes/session.php',
'wp-includes/customize/class-wp-customize-themes-panel.php', // Removed in beta; when the feature comes back remember to remove it from this array. See #37661.
);
/**

View File

@@ -334,6 +334,7 @@ switch($step) {
$scripts_to_print[] = 'user-profile';
display_header();
// Fill in the data we gathered
$weblog_title = isset( $_POST['weblog_title'] ) ? trim( wp_unslash( $_POST['weblog_title'] ) ) : '';
$user_name = isset($_POST['user_name']) ? trim( wp_unslash( $_POST['user_name'] ) ) : '';
@@ -346,26 +347,21 @@ switch($step) {
$error = false;
if ( empty( $user_name ) ) {
// TODO: poka-yoke
display_header();
display_setup_form( __( 'Please provide a valid username.' ) );
$error = true;
} elseif ( $user_name != sanitize_user( $user_name, true ) ) {
display_header();
display_setup_form( __( 'The username you provided has invalid characters.' ) );
$error = true;
} elseif ( $admin_password != $admin_password_check ) {
// TODO: poka-yoke
display_header();
display_setup_form( __( 'Your passwords do not match. Please try again.' ) );
$error = true;
} elseif ( empty( $admin_email ) ) {
// TODO: poka-yoke
display_header();
display_setup_form( __( 'You must provide an email address.' ) );
$error = true;
} elseif ( ! is_email( $admin_email ) ) {
// TODO: poka-yoke
display_header();
display_setup_form( __( 'Sorry, that isn&#8217;t a valid email address. Email addresses look like <code>username@example.com</code>.' ) );
$error = true;
}
@@ -373,16 +369,6 @@ switch($step) {
if ( $error === false ) {
$wpdb->show_errors();
$result = wp_install( $weblog_title, $user_name, $admin_email, $public, '', wp_slash( $admin_password ), $loaded_language );
// Log the user in and send them to wp-admin:
if ( ! headers_sent() ) {
wp_set_auth_cookie( $result['user_id'], true, is_ssl() );
wp_redirect( admin_url() );
exit;
}
// If headers have already been sent, fall back to a "Success!" message:
display_header();
?>
<h1><?php _e( 'Success!' ); ?></h1>

View File

@@ -418,7 +418,7 @@ $document.ready( function() {
screenMeta.init();
// This event needs to be delegated. Ticket #37973.
$body.on( 'click', 'tbody .check-column :checkbox', function( event ) {
$body.on( 'click', 'tbody > tr > .check-column :checkbox', function( event ) {
// Shift click to select a range of checkboxes.
if ( 'undefined' == event.shiftKey ) { return true; }
if ( event.shiftKey ) {

File diff suppressed because one or more lines are too long

View File

@@ -528,10 +528,11 @@
*
* @since 4.1.0
*
* @param {Boolean} active
* @param {Object} args
* @param {Object} args.duration
* @param {Object} args.completeCallback
* @param {boolean} active - The active state to transiution to.
* @param {Object} [args] - Args.
* @param {Object} [args.duration] - The duration for the slideUp/slideDown animation.
* @param {boolean} [args.unchanged] - Whether the state is already known to not be changed, and so short-circuit with calling completeCallback early.
* @param {Function} [args.completeCallback] - Function to call when the slideUp/slideDown has completed.
*/
onChangeActive: function( active, args ) {
var construct = this,
@@ -564,24 +565,24 @@
}
}
if ( ! $.contains( document, headContainer ) ) {
// jQuery.fn.slideUp is not hiding an element if it is not in the DOM
if ( ! $.contains( document, headContainer.get( 0 ) ) ) {
// If the element is not in the DOM, then jQuery.fn.slideUp() does nothing. In this case, a hard toggle is required instead.
headContainer.toggle( active );
if ( args.completeCallback ) {
args.completeCallback();
}
} else if ( active ) {
headContainer.stop( true, true ).slideDown( duration, args.completeCallback );
headContainer.slideDown( duration, args.completeCallback );
} else {
if ( construct.expanded() ) {
construct.collapse({
duration: duration,
completeCallback: function() {
headContainer.stop( true, true ).slideUp( duration, args.completeCallback );
headContainer.slideUp( duration, args.completeCallback );
}
});
} else {
headContainer.stop( true, true ).slideUp( duration, args.completeCallback );
headContainer.slideUp( duration, args.completeCallback );
}
}
},
@@ -710,11 +711,19 @@
var construct = this,
content = construct.contentContainer,
overlay = content.closest( '.wp-full-overlay' ),
elements, transitionEndCallback;
elements, transitionEndCallback, transitionParentPane;
// Determine set of elements that are affected by the animation.
elements = overlay.add( content );
if ( _.isUndefined( construct.panel ) || '' === construct.panel() ) {
if ( ! construct.panel || '' === construct.panel() ) {
transitionParentPane = true;
} else if ( api.panel( construct.panel() ).contentContainer.hasClass( 'skip-transition' ) ) {
transitionParentPane = true;
} else {
transitionParentPane = false;
}
if ( transitionParentPane ) {
elements = elements.add( '#customize-info, .customize-pane-parent' );
}
@@ -995,7 +1004,7 @@
overlay = section.headContainer.closest( '.wp-full-overlay' ),
backBtn = content.find( '.customize-section-back' ),
sectionTitle = section.headContainer.find( '.accordion-section-title' ).first(),
expand;
expand, panel;
if ( expanded && ! content.hasClass( 'open' ) ) {
@@ -1043,6 +1052,12 @@
}
} else if ( ! expanded && content.hasClass( 'open' ) ) {
if ( section.panel() ) {
panel = api.panel( section.panel() );
if ( panel.contentContainer.hasClass( 'skip-transition' ) ) {
panel.collapse();
}
}
section._animateChangeExpanded( function() {
backBtn.attr( 'tabindex', '-1' );
sectionTitle.attr( 'tabindex', '0' );
@@ -1721,7 +1736,9 @@
overlay = accordionSection.closest( '.wp-full-overlay' ),
container = accordionSection.closest( '.wp-full-overlay-sidebar-content' ),
topPanel = panel.headContainer.find( '.accordion-section-title' ),
backBtn = accordionSection.find( '.customize-panel-back' );
backBtn = accordionSection.find( '.customize-panel-back' ),
childSections = panel.sections(),
skipTransition;
if ( expanded && ! accordionSection.hasClass( 'current-panel' ) ) {
// Collapse any sibling sections/panels
@@ -1736,35 +1753,50 @@
}
});
panel._animateChangeExpanded( function() {
topPanel.attr( 'tabindex', '-1' );
backBtn.attr( 'tabindex', '0' );
if ( panel.params.autoExpandSoleSection && 1 === childSections.length && childSections[0].active.get() ) {
accordionSection.addClass( 'current-panel skip-transition' );
overlay.addClass( 'in-sub-panel' );
backBtn.focus();
accordionSection.css( 'top', '' );
container.scrollTop( 0 );
childSections[0].expand( {
completeCallback: args.completeCallback
} );
} else {
panel._animateChangeExpanded( function() {
topPanel.attr( 'tabindex', '-1' );
backBtn.attr( 'tabindex', '0' );
if ( args.completeCallback ) {
args.completeCallback();
}
} );
backBtn.focus();
accordionSection.css( 'top', '' );
container.scrollTop( 0 );
if ( args.completeCallback ) {
args.completeCallback();
}
} );
accordionSection.addClass( 'current-panel' );
overlay.addClass( 'in-sub-panel' );
}
overlay.addClass( 'in-sub-panel' );
accordionSection.addClass( 'current-panel' );
api.state( 'expandedPanel' ).set( panel );
} else if ( ! expanded && accordionSection.hasClass( 'current-panel' ) ) {
panel._animateChangeExpanded( function() {
topPanel.attr( 'tabindex', '0' );
backBtn.attr( 'tabindex', '-1' );
skipTransition = accordionSection.hasClass( 'skip-transition' );
if ( ! skipTransition ) {
panel._animateChangeExpanded( function() {
topPanel.attr( 'tabindex', '0' );
backBtn.attr( 'tabindex', '-1' );
topPanel.focus();
accordionSection.css( 'top', '' );
topPanel.focus();
accordionSection.css( 'top', '' );
if ( args.completeCallback ) {
args.completeCallback();
}
} );
if ( args.completeCallback ) {
args.completeCallback();
}
} );
} else {
accordionSection.removeClass( 'skip-transition' );
}
overlay.removeClass( 'in-sub-panel' );
accordionSection.removeClass( 'current-panel' );
@@ -2266,9 +2298,9 @@
availableItem = new api.Menus.AvailableItemModel( {
'id': 'post-' + data.post_id, // Used for available menu item Backbone models.
'title': title,
'type': 'page',
'type': 'post_type',
'type_label': api.Menus.data.l10n.page_label,
'object': 'post_type',
'object': 'page',
'object_id': data.post_id,
'url': data.url
} );
@@ -4122,7 +4154,7 @@
// Remove notification errors that are no longer valid.
setting.notifications.each( function( notification ) {
if ( 'error' === notification.type && ( true === validity || ! validity[ notification.code ] ) ) {
if ( notification.fromServer && 'error' === notification.type && ( true === validity || ! validity[ notification.code ] ) ) {
setting.notifications.remove( notification.code );
}
} );
@@ -4547,6 +4579,16 @@
}
});
// Ensure preview nonce is included with every customized request, to allow post data to be read.
$.ajaxPrefilter( function injectPreviewNonce( options ) {
if ( ! /wp_customize=on/.test( options.data ) ) {
return;
}
options.data += '&' + $.param({
customize_preview_nonce: api.settings.nonce.preview
});
});
// Refresh the nonces if the preview sends updated nonces over.
api.previewer.bind( 'nonce', function( nonce ) {
$.extend( this.nonce, nonce );
@@ -4696,7 +4738,10 @@
editShortcutVisibility( 'visible' );
api.bind( 'change', function() {
state('saved').set( false );
if ( state( 'saved' ).get() ) {
state( 'saved' ).set( false );
populateChangesetUuidParam( true );
}
});
saving.bind( function( isSaving ) {
@@ -4727,6 +4772,12 @@
*/
populateChangesetUuidParam = function( isIncluded ) {
var urlParser, queryParams;
// Abort on IE9 which doesn't support history management.
if ( ! history.replaceState ) {
return;
}
urlParser = document.createElement( 'a' );
urlParser.href = location.href;
queryParams = api.utils.parseQueryString( urlParser.search.substr( 1 ) );
@@ -4745,16 +4796,9 @@
history.replaceState( {}, document.title, urlParser.href );
};
if ( history.replaceState ) {
saved.bind( function( isSaved ) {
if ( ! isSaved ) {
populateChangesetUuidParam( true );
}
} );
changesetStatus.bind( function( newStatus ) {
populateChangesetUuidParam( '' !== newStatus );
} );
}
changesetStatus.bind( function( newStatus ) {
populateChangesetUuidParam( '' !== newStatus && 'publish' !== newStatus );
} );
// Expose states to the API.
api.state = state;
@@ -5305,7 +5349,7 @@
} );
$textarea.on( 'keydown', function onKeydown( event ) {
var selectionStart, selectionEnd, value, scroll, tabKeyCode = 9, escKeyCode = 27;
var selectionStart, selectionEnd, value, tabKeyCode = 9, escKeyCode = 27;
if ( escKeyCode === event.keyCode ) {
if ( ! $textarea.data( 'next-tab-blurs' ) ) {
@@ -5330,10 +5374,8 @@
value = textarea.value;
if ( selectionStart >= 0 ) {
scroll = $textarea.scrollTop;
textarea.value = value.substring( 0, selectionStart ).concat( '\t', value.substring( selectionEnd ) );
$textarea.selectionStart = textarea.selectionEnd = selectionStart + 1;
textarea.scrollTop = scroll;
}
event.stopPropagation();
@@ -5372,16 +5414,20 @@
// Focus on the control that is associated with the given setting.
api.previewer.bind( 'focus-control-for-setting', function( settingId ) {
var matchedControl;
var matchedControls = [];
api.control.each( function( control ) {
var settingIds = _.pluck( control.settings, 'id' );
if ( -1 !== _.indexOf( settingIds, settingId ) ) {
matchedControl = control;
matchedControls.push( control );
}
} );
if ( matchedControl ) {
matchedControl.focus();
// Focus on the matched control with the lowest priority (appearing higher).
if ( matchedControls.length ) {
matchedControls.sort( function( a, b ) {
return a.priority() - b.priority();
} );
matchedControls[0].focus();
}
} );

File diff suppressed because one or more lines are too long

View File

@@ -80,8 +80,6 @@
});
api.Menus.availableMenuItems = new api.Menus.AvailableItemCollection( api.Menus.data.availableMenuItems );
api.Menus.insertedAutoDrafts = [];
/**
* Insert a new `auto-draft` post.
*
@@ -104,8 +102,9 @@
request.done( function( response ) {
if ( response.post_id ) {
api.Menus.insertedAutoDrafts.push( response.post_id );
api( 'nav_menus_created_posts' ).set( _.clone( api.Menus.insertedAutoDrafts ) );
api( 'nav_menus_created_posts' ).set(
api( 'nav_menus_created_posts' ).get().concat( [ response.post_id ] )
);
if ( 'page' === params.post_type ) {
@@ -786,30 +785,23 @@
},
/**
* Show/hide/save screen options (columns). From common.js.
* Update field visibility when clicking on the field toggles.
*/
ready: function() {
var panel = this;
this.container.find( '.hide-column-tog' ).click( function() {
var $t = $( this ), column = $t.val();
if ( $t.prop( 'checked' ) ) {
panel.checked( column );
} else {
panel.unchecked( column );
}
panel.container.find( '.hide-column-tog' ).click( function() {
panel.saveManageColumnsState();
});
this.container.find( '.hide-column-tog' ).each( function() {
var $t = $( this ), column = $t.val();
if ( $t.prop( 'checked' ) ) {
panel.checked( column );
} else {
panel.unchecked( column );
}
});
},
/**
* Save hidden column states.
*
* @since 4.3.0
* @private
*
* @returns {void}
*/
saveManageColumnsState: _.debounce( function() {
var panel = this;
if ( panel._updateHiddenColumnsRequest ) {
@@ -826,14 +818,24 @@
} );
}, 2000 ),
checked: function( column ) {
this.container.addClass( 'field-' + column + '-active' );
},
/**
* @deprecated Since 4.7.0 now that the nav_menu sections are responsible for toggling the classes on their own containers.
*/
checked: function() {},
unchecked: function( column ) {
this.container.removeClass( 'field-' + column + '-active' );
},
/**
* @deprecated Since 4.7.0 now that the nav_menu sections are responsible for toggling the classes on their own containers.
*/
unchecked: function() {},
/**
* Get hidden fields.
*
* @since 4.3.0
* @private
*
* @returns {Array} Fields (columns) that are hidden.
*/
hidden: function() {
return $( '.hide-column-tog' ).not( ':checked' ).map( function() {
var id = this.id;
@@ -871,7 +873,7 @@
* Ready.
*/
ready: function() {
var section = this;
var section = this, fieldActiveToggles, handleFieldActiveToggle;
if ( 'undefined' === typeof section.params.menu_id ) {
throw new Error( 'params.menu_id was not defined' );
@@ -923,6 +925,20 @@
section.container.find( '.menu-item.move-left-disabled .menus-move-left' ).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
section.container.find( '.menu-item.move-right-disabled .menus-move-right' ).attr({ 'tabindex': '-1', 'aria-hidden': 'true' });
} );
/**
* Update the active field class for the content container for a given checkbox toggle.
*
* @this {jQuery}
* @returns {void}
*/
handleFieldActiveToggle = function() {
var className = 'field-' + $( this ).val() + '-active';
section.contentContainer.toggleClass( className, $( this ).prop( 'checked' ) );
};
fieldActiveToggles = api.panel( 'nav_menus' ).contentContainer.find( '.metabox-prefs:first' ).find( '.hide-column-tog' );
fieldActiveToggles.each( handleFieldActiveToggle );
fieldActiveToggles.on( 'click', handleFieldActiveToggle );
},
populateControls: function() {
@@ -1029,7 +1045,7 @@
},
onChangeExpanded: function( expanded, args ) {
var section = this;
var section = this, completeCallback;
if ( expanded ) {
wpNavMenu.menuList = section.contentContainer;
@@ -1045,13 +1061,22 @@
}
} );
if ( 'resolved' !== section.deferred.initSortables.state() ) {
wpNavMenu.initSortables(); // Depends on menu-to-edit ID being set above.
section.deferred.initSortables.resolve( wpNavMenu.menuList ); // Now MenuControl can extend the sortable.
// @todo Note that wp.customize.reflowPaneContents() is debounced, so this immediate change will show a slight flicker while priorities get updated.
api.control( 'nav_menu[' + String( section.params.menu_id ) + ']' ).reflowMenuItems();
// Make sure Sortables is initialized after the section has been expanded to prevent `offset` issues.
if ( args.completeCallback ) {
completeCallback = args.completeCallback;
}
args.completeCallback = function() {
if ( 'resolved' !== section.deferred.initSortables.state() ) {
wpNavMenu.initSortables(); // Depends on menu-to-edit ID being set above.
section.deferred.initSortables.resolve( wpNavMenu.menuList ); // Now MenuControl can extend the sortable.
// @todo Note that wp.customize.reflowPaneContents() is debounced, so this immediate change will show a slight flicker while priorities get updated.
api.control( 'nav_menu[' + String( section.params.menu_id ) + ']' ).reflowMenuItems();
}
if ( _.isFunction( completeCallback ) ) {
completeCallback();
}
};
}
api.Section.prototype.onChangeExpanded.call( section, expanded, args );
}
@@ -1144,7 +1169,11 @@
// @todo It would be better if this was added directly on the setting itself, as opposed to the control.
control.setting.validate = function( value ) {
return parseInt( value, 10 );
if ( '' === value ) {
return 0;
} else {
return parseInt( value, 10 );
}
};
// Edit menu button.
@@ -1294,7 +1323,14 @@
this.container.find( '.menu-item-handle' ).on( 'click', function( e ) {
e.preventDefault();
e.stopPropagation();
var menuControl = control.getMenuControl();
var menuControl = control.getMenuControl(),
isDeleteBtn = $( e.target ).is( '.item-delete, .item-delete *' ),
isAddNewBtn = $( e.target ).is( '.add-new-menu-item, .add-new-menu-item *' );
if ( $( 'body' ).hasClass( 'adding-menu-items' ) && ! isDeleteBtn && ! isAddNewBtn ) {
api.Menus.availableMenuItemsPanel.close();
}
if ( menuControl.isReordering || menuControl.isSorting ) {
return;
}
@@ -1480,22 +1516,29 @@
* Update item handle title when changed.
*/
_setupTitleUI: function() {
var control = this;
var control = this, titleEl;
// Ensure that whitespace is trimmed on blur so placeholder can be shown.
control.container.find( '.edit-menu-item-title' ).on( 'blur', function() {
$( this ).val( $.trim( $( this ).val() ) );
} );
titleEl = control.container.find( '.menu-item-title' );
control.setting.bind( function( item ) {
var trimmedTitle, titleText;
if ( ! item ) {
return;
}
trimmedTitle = $.trim( item.title );
var titleEl = control.container.find( '.menu-item-title' ),
titleText = item.title || item.original_title || api.Menus.data.l10n.untitled;
titleText = trimmedTitle || item.original_title || api.Menus.data.l10n.untitled;
if ( item._invalid ) {
titleText = api.Menus.data.l10n.invalidTitleTpl.replace( '%s', titleText );
}
// Don't update to an empty title.
if ( item.title || item.original_title ) {
if ( trimmedTitle || item.original_title ) {
titleEl
.text( titleText )
.removeClass( 'no-title' );
@@ -2178,7 +2221,7 @@
}
} );
control.container.find( '.menu-delete' ).on( 'click', function( event ) {
control.container.find( '.menu-delete-item' ).on( 'click', function( event ) {
event.stopPropagation();
event.preventDefault();
control.setting.set( false );
@@ -2771,9 +2814,17 @@
if ( data.nav_menu_updates || data.nav_menu_item_updates ) {
api.Menus.applySavedData( data );
}
} );
// Reset list of inserted auto draft post IDs.
api.Menus.insertedAutoDrafts = [];
/*
* Reset the list of posts created in the customizer once published.
* The setting is updated quietly (bypassing events being triggered)
* so that the customized state doesn't become immediately dirty.
*/
api.state( 'changesetStatus' ).bind( function( status ) {
if ( 'publish' === status ) {
api( 'nav_menus_created_posts' )._value = [];
}
} );
// Open and focus menu control.

File diff suppressed because one or more lines are too long

View File

@@ -118,7 +118,7 @@
// Replace paragraphs with double line breaks
function removep( html ) {
var blocklist = 'blockquote|ul|ol|li|dl|dt|dd|table|thead|tbody|tfoot|tr|th|td|h[1-6]|fieldset',
var blocklist = 'blockquote|ul|ol|li|dl|dt|dd|table|thead|tbody|tfoot|tr|th|td|h[1-6]|fieldset|figure',
blocklist1 = blocklist + '|div|p',
blocklist2 = blocklist + '|pre',
preserve_linebreaks = false,
@@ -257,6 +257,11 @@
});
}
if ( text.indexOf( '<figcaption' ) !== -1 ) {
text = text.replace( /\s*(<figcaption[^>]*>)/g, '$1' );
text = text.replace( /<\/figcaption>\s*/g, '</figcaption>' );
}
// keep <br> tags inside captions and convert line breaks
if ( text.indexOf( '[caption' ) !== -1 ) {
preserve_br = true;

File diff suppressed because one or more lines are too long

View File

@@ -115,6 +115,15 @@ inlineEditPost = {
// enable autocomplete for tags
if ( 'post' === type ) {
$( 'tr.inline-editor textarea[data-wp-taxonomy]' ).each( function ( i, element ) {
/*
* While Quick Edit clones the form each time, Bulk Edit always re-uses
* the same form. Let's check if an autocomplete instance already exists.
*/
if ( $( element ).autocomplete( 'instance' ) ) {
// jQuery equivalent of `continue` within an `each()` loop.
return;
}
$( element ).wpTagsSuggest();
} );
}

File diff suppressed because one or more lines are too long

View File

@@ -92,7 +92,7 @@ var tagBox, array_unique_noempty;
*/
xbutton = $( '<button type="button" id="' + id + '-check-num-' + key + '" class="ntdelbutton">' +
'<span class="remove-tag-icon" aria-hidden="true"></span>' +
'<span class="screen-reader-text">' + window.tagsSuggestL10n.removeTerm + ' ' + val + '</span>' +
'<span class="screen-reader-text">' + window.tagsSuggestL10n.removeTerm + ' ' + span.html() + '</span>' +
'</button>' );
xbutton.on( 'click keypress', function( e ) {

View File

@@ -1 +1 @@
var tagBox,array_unique_noempty;!function(a){var b=window.tagsSuggestL10n&&window.tagsSuggestL10n.tagDelimiter||",";array_unique_noempty=function(b){var c=[];return a.each(b,function(b,d){d=a.trim(d),d&&a.inArray(d,c)===-1&&c.push(d)}),c},tagBox={clean:function(a){return","!==b&&(a=a.replace(new RegExp(b,"g"),",")),a=a.replace(/\s*,\s*/g,",").replace(/,+/g,",").replace(/[,\s]+$/,"").replace(/^[,\s]+/,""),","!==b&&(a=a.replace(/,/g,b)),a},parseTags:function(c){var d=c.id,e=d.split("-check-num-")[1],f=a(c).closest(".tagsdiv"),g=f.find(".the-tags"),h=g.val().split(b),i=[];return delete h[e],a.each(h,function(b,c){c=a.trim(c),c&&i.push(c)}),g.val(this.clean(i.join(b))),this.quickClicks(f),!1},quickClicks:function(c){var d,e,f=a(".the-tags",c),g=a(".tagchecklist",c),h=a(c).attr("id");f.length&&(e=f.prop("disabled"),d=f.val().split(b),g.empty(),a.each(d,function(b,c){var d,f;c=a.trim(c),c&&(d=a("<span />").text(c),e||(f=a('<button type="button" id="'+h+"-check-num-"+b+'" class="ntdelbutton"><span class="remove-tag-icon" aria-hidden="true"></span><span class="screen-reader-text">'+window.tagsSuggestL10n.removeTerm+" "+c+"</span></button>"),f.on("click keypress",function(b){"click"!==b.type&&13!==b.keyCode&&32!==b.keyCode||(13!==b.keyCode&&32!==b.keyCode||a(this).closest(".tagsdiv").find("input.newtag").focus(),tagBox.userAction="remove",tagBox.parseTags(this))}),d.prepend("&nbsp;").prepend(f)),g.append(d))}),tagBox.screenReadersMessage())},flushTags:function(c,d,e){var f,g,h,i=a(".the-tags",c),j=a("input.newtag",c);return d=d||!1,h=d?a(d).text():j.val(),"undefined"!=typeof h&&""!==h&&(f=i.val(),g=f?f+b+h:h,g=this.clean(g),g=array_unique_noempty(g.split(b)).join(b),i.val(g),this.quickClicks(c),d||j.val(""),"undefined"==typeof e&&j.focus(),!1)},get:function(b){var c=b.substr(b.indexOf("-")+1);a.post(ajaxurl,{action:"get-tagcloud",tax:c},function(d,e){0!==d&&"success"==e&&(d=a('<p id="tagcloud-'+c+'" class="the-tagcloud">'+d+"</p>"),a("a",d).click(function(){return tagBox.userAction="add",tagBox.flushTags(a("#"+c),this),!1}),a("#"+b).after(d))})},userAction:"",screenReadersMessage:function(){var a;switch(this.userAction){case"remove":a=window.tagsSuggestL10n.termRemoved;break;case"add":a=window.tagsSuggestL10n.termAdded;break;default:return}window.wp.a11y.speak(a,"assertive")},init:function(){var b=a("div.ajaxtag");a(".tagsdiv").each(function(){tagBox.quickClicks(this)}),a(".tagadd",b).click(function(){tagBox.userAction="add",tagBox.flushTags(a(this).closest(".tagsdiv"))}),a("input.newtag",b).keyup(function(b){13==b.which&&(tagBox.userAction="add",tagBox.flushTags(a(this).closest(".tagsdiv")),b.preventDefault(),b.stopPropagation())}).keypress(function(a){13==a.which&&(a.preventDefault(),a.stopPropagation())}).each(function(b,c){a(c).wpTagsSuggest()}),a("#post").submit(function(){a("div.tagsdiv").each(function(){tagBox.flushTags(this,!1,1)})}),a(".tagcloud-link").click(function(){tagBox.get(a(this).attr("id")),a(this).attr("aria-expanded","true").unbind().click(function(){a(this).attr("aria-expanded","false"===a(this).attr("aria-expanded")?"true":"false").siblings(".the-tagcloud").toggle()})})}}}(jQuery);
var tagBox,array_unique_noempty;!function(a){var b=window.tagsSuggestL10n&&window.tagsSuggestL10n.tagDelimiter||",";array_unique_noempty=function(b){var c=[];return a.each(b,function(b,d){d=a.trim(d),d&&a.inArray(d,c)===-1&&c.push(d)}),c},tagBox={clean:function(a){return","!==b&&(a=a.replace(new RegExp(b,"g"),",")),a=a.replace(/\s*,\s*/g,",").replace(/,+/g,",").replace(/[,\s]+$/,"").replace(/^[,\s]+/,""),","!==b&&(a=a.replace(/,/g,b)),a},parseTags:function(c){var d=c.id,e=d.split("-check-num-")[1],f=a(c).closest(".tagsdiv"),g=f.find(".the-tags"),h=g.val().split(b),i=[];return delete h[e],a.each(h,function(b,c){c=a.trim(c),c&&i.push(c)}),g.val(this.clean(i.join(b))),this.quickClicks(f),!1},quickClicks:function(c){var d,e,f=a(".the-tags",c),g=a(".tagchecklist",c),h=a(c).attr("id");f.length&&(e=f.prop("disabled"),d=f.val().split(b),g.empty(),a.each(d,function(b,c){var d,f;c=a.trim(c),c&&(d=a("<span />").text(c),e||(f=a('<button type="button" id="'+h+"-check-num-"+b+'" class="ntdelbutton"><span class="remove-tag-icon" aria-hidden="true"></span><span class="screen-reader-text">'+window.tagsSuggestL10n.removeTerm+" "+d.html()+"</span></button>"),f.on("click keypress",function(b){"click"!==b.type&&13!==b.keyCode&&32!==b.keyCode||(13!==b.keyCode&&32!==b.keyCode||a(this).closest(".tagsdiv").find("input.newtag").focus(),tagBox.userAction="remove",tagBox.parseTags(this))}),d.prepend("&nbsp;").prepend(f)),g.append(d))}),tagBox.screenReadersMessage())},flushTags:function(c,d,e){var f,g,h,i=a(".the-tags",c),j=a("input.newtag",c);return d=d||!1,h=d?a(d).text():j.val(),"undefined"!=typeof h&&""!==h&&(f=i.val(),g=f?f+b+h:h,g=this.clean(g),g=array_unique_noempty(g.split(b)).join(b),i.val(g),this.quickClicks(c),d||j.val(""),"undefined"==typeof e&&j.focus(),!1)},get:function(b){var c=b.substr(b.indexOf("-")+1);a.post(ajaxurl,{action:"get-tagcloud",tax:c},function(d,e){0!==d&&"success"==e&&(d=a('<p id="tagcloud-'+c+'" class="the-tagcloud">'+d+"</p>"),a("a",d).click(function(){return tagBox.userAction="add",tagBox.flushTags(a("#"+c),this),!1}),a("#"+b).after(d))})},userAction:"",screenReadersMessage:function(){var a;switch(this.userAction){case"remove":a=window.tagsSuggestL10n.termRemoved;break;case"add":a=window.tagsSuggestL10n.termAdded;break;default:return}window.wp.a11y.speak(a,"assertive")},init:function(){var b=a("div.ajaxtag");a(".tagsdiv").each(function(){tagBox.quickClicks(this)}),a(".tagadd",b).click(function(){tagBox.userAction="add",tagBox.flushTags(a(this).closest(".tagsdiv"))}),a("input.newtag",b).keyup(function(b){13==b.which&&(tagBox.userAction="add",tagBox.flushTags(a(this).closest(".tagsdiv")),b.preventDefault(),b.stopPropagation())}).keypress(function(a){13==a.which&&(a.preventDefault(),a.stopPropagation())}).each(function(b,c){a(c).wpTagsSuggest()}),a("#post").submit(function(){a("div.tagsdiv").each(function(){tagBox.flushTags(this,!1,1)})}),a(".tagcloud-link").click(function(){tagBox.get(a(this).attr("id")),a(this).attr("aria-expanded","true").unbind().click(function(){a(this).attr("aria-expanded","false"===a(this).attr("aria-expanded")?"true":"false").siblings(".the-tagcloud").toggle()})})}}}(jQuery);

View File

@@ -120,7 +120,9 @@
},
minLength: 2,
position: {
my: 'left top+2'
my: 'left top+2',
at: 'left bottom',
collision: 'none'
},
messages: {
noResults: window.uiAutocompleteL10n.noResults,

View File

@@ -1 +1 @@
!function(a){function b(a){return a.split(new RegExp(e+"\\s*"))}function c(a){return b(a).pop()}if("undefined"!=typeof window.tagsSuggestL10n&&"undefined"!=typeof window.uiAutocompleteL10n){var d=0,e=window.tagsSuggestL10n.tagDelimiter||",";a.fn.wpTagsSuggest=function(f){var g,h,i=a(this);f=f||{};var j=f.taxonomy||i.attr("data-wp-taxonomy")||"post_tag";return delete f.taxonomy,f=a.extend({source:function(b,e){var f;return h===b.term?void e(g):(f=c(b.term),a.get(window.ajaxurl,{action:"ajax-tag-search",tax:j,q:f}).always(function(){i.removeClass("ui-autocomplete-loading")}).done(function(a){var b,c=[];if(a){a=a.split("\n");for(b in a){var f=++d;c.push({id:f,name:a[b]})}g=c,e(c)}else e(c)}),void(h=b.term))},focus:function(a,b){i.attr("aria-activedescendant","wp-tags-autocomplete-"+b.item.id),a.preventDefault()},select:function(c,d){var f=b(i.val());return f.pop(),f.push(d.item.name,""),i.val(f.join(e+" ")),a.ui.keyCode.TAB===c.keyCode?(window.wp.a11y.speak(window.tagsSuggestL10n.termSelected,"assertive"),c.preventDefault()):a.ui.keyCode.ENTER===c.keyCode&&(c.preventDefault(),c.stopPropagation()),!1},open:function(){i.attr("aria-expanded","true")},close:function(){i.attr("aria-expanded","false")},minLength:2,position:{my:"left top+2"},messages:{noResults:window.uiAutocompleteL10n.noResults,results:function(a){return a>1?window.uiAutocompleteL10n.manyResults.replace("%d",a):window.uiAutocompleteL10n.oneResult}}},f),i.on("keydown",function(){i.removeAttr("aria-activedescendant")}).autocomplete(f).autocomplete("instance")._renderItem=function(b,c){return a('<li role="option" id="wp-tags-autocomplete-'+c.id+'">').text(c.name).appendTo(b)},i.attr({role:"combobox","aria-autocomplete":"list","aria-expanded":"false","aria-owns":i.autocomplete("widget").attr("id")}).on("focus",function(){var a=b(i.val()).pop();a&&i.autocomplete("search")}).autocomplete("widget").addClass("wp-tags-autocomplete").attr("role","listbox").removeAttr("tabindex").on("menufocus",function(a,b){b.item.attr("aria-selected","true")}).on("menublur",function(){a(this).find('[aria-selected="true"]').removeAttr("aria-selected")}),this}}}(jQuery);
!function(a){function b(a){return a.split(new RegExp(e+"\\s*"))}function c(a){return b(a).pop()}if("undefined"!=typeof window.tagsSuggestL10n&&"undefined"!=typeof window.uiAutocompleteL10n){var d=0,e=window.tagsSuggestL10n.tagDelimiter||",";a.fn.wpTagsSuggest=function(f){var g,h,i=a(this);f=f||{};var j=f.taxonomy||i.attr("data-wp-taxonomy")||"post_tag";return delete f.taxonomy,f=a.extend({source:function(b,e){var f;return h===b.term?void e(g):(f=c(b.term),a.get(window.ajaxurl,{action:"ajax-tag-search",tax:j,q:f}).always(function(){i.removeClass("ui-autocomplete-loading")}).done(function(a){var b,c=[];if(a){a=a.split("\n");for(b in a){var f=++d;c.push({id:f,name:a[b]})}g=c,e(c)}else e(c)}),void(h=b.term))},focus:function(a,b){i.attr("aria-activedescendant","wp-tags-autocomplete-"+b.item.id),a.preventDefault()},select:function(c,d){var f=b(i.val());return f.pop(),f.push(d.item.name,""),i.val(f.join(e+" ")),a.ui.keyCode.TAB===c.keyCode?(window.wp.a11y.speak(window.tagsSuggestL10n.termSelected,"assertive"),c.preventDefault()):a.ui.keyCode.ENTER===c.keyCode&&(c.preventDefault(),c.stopPropagation()),!1},open:function(){i.attr("aria-expanded","true")},close:function(){i.attr("aria-expanded","false")},minLength:2,position:{my:"left top+2",at:"left bottom",collision:"none"},messages:{noResults:window.uiAutocompleteL10n.noResults,results:function(a){return a>1?window.uiAutocompleteL10n.manyResults.replace("%d",a):window.uiAutocompleteL10n.oneResult}}},f),i.on("keydown",function(){i.removeAttr("aria-activedescendant")}).autocomplete(f).autocomplete("instance")._renderItem=function(b,c){return a('<li role="option" id="wp-tags-autocomplete-'+c.id+'">').text(c.name).appendTo(b)},i.attr({role:"combobox","aria-autocomplete":"list","aria-expanded":"false","aria-owns":i.autocomplete("widget").attr("id")}).on("focus",function(){var a=b(i.val()).pop();a&&i.autocomplete("search")}).autocomplete("widget").addClass("wp-tags-autocomplete").attr("role","listbox").removeAttr("tabindex").on("menufocus",function(a,b){b.item.attr("aria-selected","true")}).on("menublur",function(){a(this).find('[aria-selected="true"]').removeAttr("aria-selected")}),this}}}(jQuery);

View File

@@ -806,7 +806,7 @@ themes.view.Details = wp.Backbone.View.extend({
$( document ).one( 'wp-theme-delete-success', function( event, response ) {
_this.$el.find( '.close' ).trigger( 'click' );
$( '[data-slug="' + response.slug + '"' ).css( { backgroundColor:'#faafaa' } ).fadeOut( 350, function() {
$( '[data-slug="' + response.slug + '"]' ).css( { backgroundColor:'#faafaa' } ).fadeOut( 350, function() {
$( this ).remove();
_themes.data.themes = _.without( _themes.data.themes, _.findWhere( _themes.data.themes, { id: response.slug } ) );

File diff suppressed because one or more lines are too long

View File

@@ -94,6 +94,7 @@
* @type {object} filesystemCredentials.ssh Holds SSH credentials.
* @type {string} filesystemCredentials.ssh.publicKey The public key. Default empty string.
* @type {string} filesystemCredentials.ssh.privateKey The private key. Default empty string.
* @type {string} filesystemCredentials.fsNonce Filesystem credentials form nonce.
* @type {bool} filesystemCredentials.available Whether filesystem credentials have been provided.
* Default 'false'.
*/
@@ -108,6 +109,7 @@
publicKey: '',
privateKey: ''
},
fsNonce: '',
available: false
};
@@ -225,6 +227,7 @@
options.data = _.extend( data, {
action: action,
_ajax_nonce: wp.updates.ajaxNonce,
_fs_nonce: wp.updates.filesystemCredentials.fsNonce,
username: wp.updates.filesystemCredentials.ftp.username,
password: wp.updates.filesystemCredentials.ftp.password,
hostname: wp.updates.filesystemCredentials.ftp.hostname,
@@ -1516,11 +1519,11 @@
* @param {string} message Error message.
*/
wp.updates.showErrorInCredentialsForm = function( message ) {
var $modal = $( '#request-filesystem-credentials-form' );
var $filesystemForm = $( '#request-filesystem-credentials-form' );
// Remove any existing error.
$modal.find( '.notice' ).remove();
$modal.find( '#request-filesystem-credentials-title' ).after( '<div class="notice notice-alt notice-error"><p>' + message + '</p></div>' );
$filesystemForm.find( '.notice' ).remove();
$filesystemForm.find( '#request-filesystem-credentials-title' ).after( '<div class="notice notice-alt notice-error"><p>' + message + '</p></div>' );
};
/**
@@ -1670,6 +1673,7 @@
$( function() {
var $pluginFilter = $( '#plugin-filter' ),
$bulkActionForm = $( '#bulk-action-form' ),
$filesystemForm = $( '#request-filesystem-credentials-form' ),
$filesystemModal = $( '#request-filesystem-credentials-dialog' ),
$pluginSearch = $( '.plugins-php .wp-filter-search' ),
$pluginInstallSearch = $( '.plugin-install-php .wp-filter-search' );
@@ -1704,6 +1708,7 @@
wp.updates.filesystemCredentials.ftp.connectionType = $( 'input[name="connection_type"]:checked' ).val();
wp.updates.filesystemCredentials.ssh.publicKey = $( '#public_key' ).val();
wp.updates.filesystemCredentials.ssh.privateKey = $( '#private_key' ).val();
wp.updates.filesystemCredentials.fsNonce = $( '#_fs_nonce' ).val();
wp.updates.filesystemCredentials.available = true;
// Unlock and invoke the queue.
@@ -1725,7 +1730,7 @@
*
* @since 4.2.0
*/
$filesystemModal.on( 'change', 'input[name="connection_type"]', function() {
$filesystemForm.on( 'change', 'input[name="connection_type"]', function() {
$( '#ssh-keys' ).toggleClass( 'hidden', ( 'ssh' !== $( this ).val() ) );
} ).change();

File diff suppressed because one or more lines are too long

View File

@@ -156,7 +156,7 @@ $appearance_cap = current_user_can( 'switch_themes') ? 'switch_themes' : 'edit_t
$menu[60] = array( __( 'Appearance' ), $appearance_cap, 'themes.php', '', 'menu-top menu-icon-appearance', 'menu-appearance', 'dashicons-admin-appearance' );
$submenu['themes.php'][5] = array( __( 'Themes' ), $appearance_cap, 'themes.php' );
$customize_url = add_query_arg( 'return', urlencode( wp_unslash( $_SERVER['REQUEST_URI'] ) ), 'customize.php' );
$customize_url = add_query_arg( 'return', urlencode( remove_query_arg( wp_removable_query_args(), wp_unslash( $_SERVER['REQUEST_URI'] ) ) ), 'customize.php' );
$submenu['themes.php'][6] = array( __( 'Customize' ), 'customize', esc_url( $customize_url ), '', 'hide-if-no-customize' );
if ( current_theme_supports( 'menus' ) || current_theme_supports( 'widgets' ) ) {

View File

@@ -584,7 +584,7 @@ require_once( ABSPATH . 'wp-admin/admin-header.php' );
' <a class="page-title-action hide-if-no-customize" href="%1$s">%2$s</a>',
esc_url( add_query_arg( array(
array( 'autofocus' => $focus ),
'return' => urlencode( wp_unslash( $_SERVER['REQUEST_URI'] ) ),
'return' => urlencode( remove_query_arg( wp_removable_query_args(), wp_unslash( $_SERVER['REQUEST_URI'] ) ) ),
), admin_url( 'customize.php' ) ) ),
__( 'Manage with Live Preview' )
);

View File

@@ -37,11 +37,11 @@ if ( empty( $plugins ) ) {
$file = '';
$plugin = '';
if ( isset( $_REQUEST['file'] ) ) {
$file = sanitize_text_field( $_REQUEST['file'] );
$file = wp_unslash( $_REQUEST['file'] );
}
if ( isset( $_REQUEST['plugin'] ) ) {
$plugin = sanitize_text_field( $_REQUEST['plugin'] );
$plugin = wp_unslash( $_REQUEST['plugin'] );
}
if ( empty( $plugin ) ) {
@@ -107,10 +107,10 @@ if ( isset( $_REQUEST['action'] ) && 'update' === $_REQUEST['action'] ) {
}
if ( ( ! empty( $_GET['networkwide'] ) && ! is_plugin_active_for_network( $file ) ) || ! is_plugin_active( $file ) ) {
activate_plugin( $plugin, "plugin-editor.php?file=$file&phperror=1", ! empty( $_GET['networkwide'] ) );
activate_plugin( $plugin, "plugin-editor.php?file=" . urlencode( $file ) . "&phperror=1", ! empty( $_GET['networkwide'] ) );
} // we'll override this later if the plugin can be included without fatal error
wp_redirect( self_admin_url("plugin-editor.php?file=$file&plugin=$plugin&a=te&scrollto=$scrollto") );
wp_redirect( self_admin_url( 'plugin-editor.php?file=' . urlencode( $file ) . '&plugin=' . urlencode( $plugin ) . "&a=te&scrollto=$scrollto" ) );
exit;
}
@@ -203,18 +203,18 @@ if ( isset( $_REQUEST['action'] ) && 'update' === $_REQUEST['action'] ) {
if ( is_plugin_active( $plugin ) ) {
if ( is_writeable( $real_file ) ) {
/* translators: %s: plugin file name */
echo sprintf( __( 'Editing %s (active)' ), '<strong>' . $file . '</strong>' );
echo sprintf( __( 'Editing %s (active)' ), '<strong>' . esc_html( $file ) . '</strong>' );
} else {
/* translators: %s: plugin file name */
echo sprintf( __( 'Browsing %s (active)' ), '<strong>' . $file . '</strong>' );
echo sprintf( __( 'Browsing %s (active)' ), '<strong>' . esc_html( $file ) . '</strong>' );
}
} else {
if ( is_writeable( $real_file ) ) {
/* translators: %s: plugin file name */
echo sprintf( __( 'Editing %s (inactive)' ), '<strong>' . $file . '</strong>' );
echo sprintf( __( 'Editing %s (inactive)' ), '<strong>' . esc_html( $file ) . '</strong>' );
} else {
/* translators: %s: plugin file name */
echo sprintf( __( 'Browsing %s (inactive)' ), '<strong>' . $file . '</strong>' );
echo sprintf( __( 'Browsing %s (inactive)' ), '<strong>' . esc_html( $file ) . '</strong>' );
}
}
?></big>
@@ -259,7 +259,7 @@ foreach ( $plugin_files as $plugin_file ) :
continue;
}
?>
<li<?php echo $file == $plugin_file ? ' class="highlight"' : ''; ?>><a href="plugin-editor.php?file=<?php echo urlencode( $plugin_file ) ?>&amp;plugin=<?php echo urlencode( $plugin ) ?>"><?php echo $plugin_file ?></a></li>
<li<?php echo $file == $plugin_file ? ' class="highlight"' : ''; ?>><a href="plugin-editor.php?file=<?php echo urlencode( $plugin_file ) ?>&amp;plugin=<?php echo urlencode( $plugin ) ?>"><?php echo esc_html( $plugin_file ); ?></a></li>
<?php endforeach; ?>
</ul>
</div>

View File

@@ -17,7 +17,7 @@ $pagenum = $wp_list_table->get_pagenum();
$action = $wp_list_table->current_action();
$plugin = isset($_REQUEST['plugin']) ? $_REQUEST['plugin'] : '';
$plugin = isset($_REQUEST['plugin']) ? wp_unslash( $_REQUEST['plugin'] ) : '';
$s = isset($_REQUEST['s']) ? urlencode( wp_unslash( $_REQUEST['s'] ) ) : '';
// Clean up request URI from temporary args for screen options/paging uri's to work as expected.
@@ -39,10 +39,10 @@ if ( $action ) {
check_admin_referer('activate-plugin_' . $plugin);
$result = activate_plugin($plugin, self_admin_url('plugins.php?error=true&plugin=' . $plugin), is_network_admin() );
$result = activate_plugin($plugin, self_admin_url('plugins.php?error=true&plugin=' . urlencode( $plugin ) ), is_network_admin() );
if ( is_wp_error( $result ) ) {
if ( 'unexpected_output' == $result->get_error_code() ) {
$redirect = self_admin_url('plugins.php?error=true&charsout=' . strlen($result->get_error_data()) . '&plugin=' . $plugin . "&plugin_status=$status&paged=$page&s=$s");
$redirect = self_admin_url('plugins.php?error=true&charsout=' . strlen($result->get_error_data()) . '&plugin=' . urlencode( $plugin ) . "&plugin_status=$status&paged=$page&s=$s");
wp_redirect(add_query_arg('_error_nonce', wp_create_nonce('plugin-activation-error_' . $plugin), $redirect));
exit;
} else {
@@ -73,7 +73,7 @@ if ( $action ) {
check_admin_referer('bulk-plugins');
$plugins = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
$plugins = isset( $_POST['checked'] ) ? (array) wp_unslash( $_POST['checked'] ) : array();
if ( is_network_admin() ) {
foreach ( $plugins as $i => $plugin ) {
@@ -122,9 +122,9 @@ if ( $action ) {
check_admin_referer( 'bulk-plugins' );
if ( isset( $_GET['plugins'] ) )
$plugins = explode( ',', $_GET['plugins'] );
$plugins = explode( ',', wp_unslash( $_GET['plugins'] ) );
elseif ( isset( $_POST['checked'] ) )
$plugins = (array) $_POST['checked'];
$plugins = (array) wp_unslash( $_POST['checked'] );
else
$plugins = array();
@@ -197,7 +197,7 @@ if ( $action ) {
check_admin_referer('bulk-plugins');
$plugins = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
$plugins = isset( $_POST['checked'] ) ? (array) wp_unslash( $_POST['checked'] ) : array();
// Do not deactivate plugins which are already deactivated.
if ( is_network_admin() ) {
$plugins = array_filter( $plugins, 'is_plugin_active_for_network' );
@@ -234,7 +234,7 @@ if ( $action ) {
check_admin_referer('bulk-plugins');
//$_POST = from the plugin form; $_GET = from the FTP details screen.
$plugins = isset( $_REQUEST['checked'] ) ? (array) $_REQUEST['checked'] : array();
$plugins = isset( $_REQUEST['checked'] ) ? (array) wp_unslash( $_REQUEST['checked'] ) : array();
if ( empty( $plugins ) ) {
wp_redirect( self_admin_url("plugins.php?plugin_status=$status&paged=$page&s=$s") );
exit;
@@ -246,6 +246,14 @@ if ( $action ) {
exit;
}
// Bail on all if any paths are invalid.
// validate_file() returns truthy for invalid files
$invalid_plugin_files = array_filter( $plugins, 'validate_file' );
if ( $invalid_plugin_files ) {
wp_redirect( self_admin_url("plugins.php?plugin_status=$status&paged=$page&s=$s") );
exit;
}
include(ABSPATH . 'wp-admin/update.php');
$parent_file = 'plugins.php';
@@ -360,7 +368,7 @@ if ( $action ) {
default:
if ( isset( $_POST['checked'] ) ) {
check_admin_referer('bulk-plugins');
$plugins = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
$plugins = isset( $_POST['checked'] ) ? (array) wp_unslash( $_POST['checked'] ) : array();
$sendback = wp_get_referer();
/** This action is documented in wp-admin/edit-comments.php */

View File

@@ -99,7 +99,7 @@ if ( empty( $file ) ) {
$relative_file = 'style.css';
$file = $allowed_files['style.css'];
} else {
$relative_file = $file;
$relative_file = wp_unslash( $file );
$file = $theme->get_stylesheet_directory() . '/' . $relative_file;
}
@@ -156,10 +156,12 @@ default:
<div id="message" class="updated notice is-dismissible"><p><?php _e( 'File edited successfully.' ) ?></p></div>
<?php endif;
$description = get_file_description( $relative_file );
$file_description = get_file_description( $relative_file );
$file_show = array_search( $file, array_filter( $allowed_files ) );
if ( $description != $file_show )
$description .= ' <span>(' . $file_show . ')</span>';
$description = esc_html( $file_description );
if ( $file_description != $file_show ) {
$description .= ' <span>(' . esc_html( $file_show ) . ')</span>';
}
?>
<div class="wrap">
<h1><?php echo esc_html( $title ); ?></h1>
@@ -230,9 +232,9 @@ if ( $allowed_files ) :
echo "\t<ul>\n";
}
$file_description = get_file_description( $filename );
$file_description = esc_html( get_file_description( $filename ) );
if ( $filename !== basename( $absolute_filename ) || $file_description !== $filename ) {
$file_description .= '<br /><span class="nonessential">(' . $filename . ')</span>';
$file_description .= '<br /><span class="nonessential">(' . esc_html( $filename ) . ')</span>';
}
if ( $absolute_filename === $file ) {

View File

@@ -250,6 +250,8 @@ function list_plugin_updates() {
<tbody class="plugins">
<?php
foreach ( (array) $plugins as $plugin_file => $plugin_data ) {
$plugin_data = (object) _get_plugin_data_markup_translate( $plugin_file, (array) $plugin_data, false, true );
// Get plugin compat for running version of WordPress.
if ( isset($plugin_data->update->tested) && version_compare($plugin_data->update->tested, $cur_wp_version, '>=') ) {
$compat = '<br />' . sprintf(__('Compatibility with WordPress %1$s: 100%% (according to its author)'), $cur_wp_version);

View File

@@ -182,7 +182,7 @@ include(ABSPATH . 'wp-admin/admin-header.php');
<p><strong><?php _e('User updated.') ?></strong></p>
<?php endif; ?>
<?php if ( $wp_http_referer && false === strpos( $wp_http_referer, 'user-new.php' ) && ! IS_PROFILE_PAGE ) : ?>
<p><a href="<?php echo esc_url( $wp_http_referer ); ?>"><?php _e('&larr; Back to Users'); ?></a></p>
<p><a href="<?php echo esc_url( wp_validate_redirect( esc_url_raw( $wp_http_referer ), self_admin_url( 'users.php' ) ) ); ?>"><?php _e('&larr; Back to Users'); ?></a></p>
<?php endif; ?>
</div>
<?php endif; ?>

View File

@@ -22,6 +22,8 @@ if ( ! current_user_can( 'edit_theme_options' ) ) {
$widgets_access = get_user_setting( 'widgets_access' );
if ( isset($_GET['widgets-access']) ) {
check_admin_referer( 'widgets-access' );
$widgets_access = 'on' == $_GET['widgets-access'] ? 'on' : 'off';
set_user_setting( 'widgets_access', $widgets_access );
}
@@ -353,7 +355,7 @@ require_once( ABSPATH . 'wp-admin/admin-header.php' ); ?>
esc_url( add_query_arg(
array(
array( 'autofocus' => array( 'panel' => 'widgets' ) ),
'return' => urlencode( wp_unslash( $_SERVER['REQUEST_URI'] ) )
'return' => urlencode( remove_query_arg( wp_removable_query_args(), wp_unslash( $_SERVER['REQUEST_URI'] ) ) )
),
admin_url( 'customize.php' )
) ),

View File

@@ -1,8 +1,8 @@
=== Twenty Fifteen ===
Contributors: the WordPress team
Requires at least: WordPress 4.1
Tested up to: WordPress 4.7-trunk
Version: 1.6
Tested up to: WordPress 4.8-trunk
Version: 1.7
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, two-columns, left-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
@@ -55,6 +55,11 @@ Source: http://www.genericons.com
== Changelog ==
= 1.7 =
* Released: December 6, 2016
https://codex.wordpress.org/Twenty_Fifteen_Theme_Changelog#Version_1.7
= 1.6 =
* Released: August 15, 2016

View File

@@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyfifteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Our 2015 default theme is clean, blog-focused, and designed for clarity. Twenty Fifteen's simple, straightforward typography is readable on a wide variety of screen sizes, and suitable for multiple languages. We designed it using a mobile-first approach, meaning your content takes center-stage, regardless of whether your visitors arrive by smartphone, tablet, laptop, or desktop computer.
Version: 1.6
Version: 1.7
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, two-columns, left-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready

View File

@@ -1,8 +1,8 @@
=== Twenty Fourteen ===
Contributors: the WordPress team
Requires at least: WordPress 3.6
Tested up to: WordPress 4.7-trunk
Stable tag: 1.8
Tested up to: WordPress 4.8-trunk
Stable tag: 1.9
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, news, two-columns, three-columns, left-sidebar, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
@@ -50,6 +50,11 @@ Source: http://www.genericons.com
== Changelog ==
= 1.9 =
* Released: December 6, 2016
https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.9
= 1.8 =
* Released: August 15, 2016

View File

@@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyfourteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier.
Version: 1.8
Version: 1.9
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, news, two-columns, three-columns, left-sidebar, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready

View File

@@ -2,15 +2,14 @@
Contributors: the WordPress team
Requires at least: WordPress 4.7
Tested up to: WordPress 4.7
Version: 1.0
Version: 1.2
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, flexible-header, accessibility-ready, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready
== Description ==
Twenty Seventeen brings your site to life with immersive featured images and subtle animations. With a focus on business sites, it features multiple sections on the front page as well as widgets, navigation and social menus, a logo, and more. Personalize its asymmetrical grid with a custom color scheme and showcase your multimedia content with post formats. Our default theme for 2017 works great in many languages, for any abilities, and on any device.
Twenty Seventeen brings your site to life with header video and immersive featured images. With a focus on business sites, it features multiple sections on the front page as well as widgets, navigation and social menus, a logo, and more. Personalize its asymmetrical grid with a custom color scheme and showcase your multimedia content with post formats. Our default theme for 2017 works great in many languages, for any abilities, and on any device.
For more information about Twenty Seventeen please go to https://codex.wordpress.org/Twenty_Seventeen.
@@ -39,7 +38,7 @@ GNU General Public License for more details.
Twenty Seventeen bundles the following third-party resources:
HTML5 Shiv v3.7.3, Copyright 2014 Alexander Farkas
HTML5 Shiv, Copyright 2014 Alexander Farkas
Licenses: MIT/GPL2
Source: https://github.com/aFarkas/html5shiv
@@ -61,6 +60,16 @@ Source: https://unsplash.com/@englr?photo=bIhpiQA009k
== Changelog ==
= 1.2 =
* Released: April 18, 2017
https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.2
= 1.1 =
* Released: January 6, 2017
https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.1
= 1.0 =
* Released: December 6, 2016

View File

@@ -474,8 +474,8 @@ body.colors-dark,
}
/* Fixes linked images */
.entry-content a img,
.widget a img {
.colors-dark .entry-content a img,
.colors-dark .widget a img {
-webkit-box-shadow: 0 0 0 8px #222;
box-shadow: 0 0 0 8px #222;
}
@@ -496,6 +496,9 @@ body.colors-dark,
background-color: transparent;
}
.colors-dark .gallery-item a,
.colors-dark .gallery-item a:hover,
.colors-dark .gallery-item a:focus,
.colors-dark .widget .tagcloud a,
.colors-dark .widget .tagcloud a:focus,
.colors-dark .widget .tagcloud a:hover,

View File

@@ -65,7 +65,7 @@ img {
display: block;
}
.custom-header-image {
.custom-header-media {
background-position: bottom center;
}
@@ -84,8 +84,7 @@ img {
width: 100%;
}
.has-header-image .custom-header-image img,
.has-header-image .custom-header-image video {
.has-header-image .custom-header-media img {
left: 0;
top: 0;
}
@@ -142,8 +141,8 @@ img {
padding-top: 0;
}
.twentyseventeen-front-page .custom-header-image,
.blog.home .custom-header-image {
.twentyseventeen-front-page .custom-header-media,
.blog.home .custom-header-media {
background-position: center center;
}

View File

@@ -4,22 +4,26 @@ Description: IE9 specific styles.
*/
.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header {
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.has-header-video.home.blog .custom-header {
height: 300px;
}
.has-header-image .custom-header-image img,
.has-header-image .custom-header-image video,
.has-header-image .custom-header-image iframe {
.has-header-image .custom-header-media img,
.has-header-video .custom-header-media video,
.has-header-video .custom-header-media iframe {
min-width: 100%;
}
@media screen and (min-width: 30em) {
.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.twentyseventeen-front-page.has-header-image .custom-header-image,
.home.blog.has-header-image .custom-header-image,
.has-header-video.home.blog .custom-header,
.twentyseventeen-front-page.has-header-image .custom-header-media,
.home.blog.has-header-image .custom-header-media,
.panel-image {
height: 700px;
}
@@ -28,9 +32,11 @@ Description: IE9 specific styles.
@media screen and (min-width: 48em) {
.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.twentyseventeen-front-page.has-header-image .custom-header-image,
.home.blog.has-header-image .custom-header-image,
.has-header-video.home.blog .custom-header,
.twentyseventeen-front-page.has-header-image .custom-header-media,
.home.blog.has-header-image .custom-header-media,
.panel-image {
height: 1000px;
}

View File

@@ -25,10 +25,12 @@
});
// Detect when the front page sections section is expanded (or closed) so we can adjust the preview accordingly.
wp.customize.section( 'theme_options' ).expanded.bind( function( isExpanding ) {
wp.customize.section( 'theme_options', function( section ) {
section.expanded.bind( function( isExpanding ) {
// Value of isExpanding will = true if you're entering the section, false if you're leaving it.
wp.customize.previewer.send( 'section-highlight', { expanded: isExpanding });
});
// Value of isExpanding will = true if you're entering the section, false if you're leaving it.
wp.customize.previewer.send( 'section-highlight', { expanded: isExpanding });
} );
} );
});
})( jQuery );

View File

@@ -8,6 +8,10 @@
// Collect information from customize-controls.js about which panels are opening.
wp.customize.bind( 'preview-ready', function() {
// Initially hide the theme option placeholders on load
$( '.panel-placeholder' ).hide();
wp.customize.preview.bind( 'section-highlight', function( data ) {
// Only on the front page.
@@ -54,8 +58,14 @@
clip: 'rect(1px, 1px, 1px, 1px)',
position: 'absolute'
});
// Add class for different logo styles if title and description are hidden.
$( 'body' ).addClass( 'title-tagline-hidden' );
} else {
// Check if the text color has been removed and use default colors in theme stylesheet.
if ( ! to.length ) {
$( '#twentyseventeen-custom-header-styles' ).remove();
}
$( '.site-title, .site-description' ).css({
clip: 'auto',
position: 'relative'
@@ -63,6 +73,7 @@
$( '.site-branding, .site-branding a, .site-description, .site-description a' ).css({
color: to
});
// Add class for different logo styles if title and description are visible.
$( 'body' ).removeClass( 'title-tagline-hidden' );
}
});
@@ -123,11 +134,15 @@
$.each( [ 'external_header_video', 'header_image', 'header_video' ], function( index, settingId ) {
wp.customize( settingId, function( setting ) {
setting.bind(function() {
if ( hasHeaderImage() || ( hasHeaderVideo() && $( 'body' ).hasClass( 'twentyseventeen-front-page' ) ) ) {
if ( hasHeaderImage() ) {
$( document.body ).addClass( 'has-header-image' );
} else {
$( document.body ).removeClass( 'has-header-image' );
}
if ( ! hasHeaderVideo() ) {
$( document.body ).removeClass( 'has-header-video' );
}
} );
} );
} );

View File

@@ -4,7 +4,6 @@
// Variables and DOM Caching.
var $body = $( 'body' ),
$customHeader = $body.find( '.custom-header' ),
$customHeaderImage = $customHeader.find( '.custom-header-image' ),
$branding = $customHeader.find( '.site-branding' ),
$navigation = $body.find( '.navigation-top' ),
$navWrap = $navigation.find( '.wrap' ),
@@ -64,8 +63,8 @@
// Make sure the nav isn't taller than two rows.
if ( navIsNotTooTall ) {
// When there's a custom header image, the header offset includes the height of the navigation.
if ( isFrontPage && $customHeaderImage.length ) {
// When there's a custom header image or video, the header offset includes the height of the navigation.
if ( isFrontPage && ( $body.hasClass( 'has-header-image' ) || $body.hasClass( 'has-header-video' ) ) ) {
headerOffset = $customHeader.innerHeight() - navigationOuterHeight;
} else {
headerOffset = $customHeader.innerHeight();
@@ -242,4 +241,9 @@
setTimeout( adjustHeaderHeight, 1000 );
});
// Add header video class after the video is loaded.
$( document ).on( 'wp-custom-header-video-loaded', function() {
$body.addClass( 'has-header-video' );
});
})( jQuery );

View File

@@ -6,7 +6,7 @@
*/
(function( $ ) {
var masthead, menuToggle, siteNavigation;
var masthead, menuToggle, siteNavContain, siteNavigation;
function initMainNavigation( container ) {
@@ -17,8 +17,13 @@
container.find( '.menu-item-has-children > a, .page_item_has_children > a' ).after( dropdownToggle );
// Toggle buttons and submenu items with active children menu items.
container.find( '.current-menu-ancestor > button' ).addClass( 'toggled-on' );
// Set the active submenu dropdown toggle button initial state.
container.find( '.current-menu-ancestor > button' )
.addClass( 'toggled-on' )
.attr( 'aria-expanded', 'true' )
.find( '.screen-reader-text' )
.text( twentyseventeenScreenReaderText.collapse );
// Set the active submenu initial state.
container.find( '.current-menu-ancestor > .sub-menu' ).addClass( 'toggled-on' );
container.find( '.dropdown-toggle' ).click( function( e ) {
@@ -39,6 +44,7 @@
masthead = $( '#masthead' );
menuToggle = masthead.find( '.menu-toggle' );
siteNavContain = masthead.find( '.main-navigation' );
siteNavigation = masthead.find( '.main-navigation > div > ul' );
// Enable menuToggle.
@@ -49,15 +55,13 @@
return;
}
// Add an initial values for the attribute.
menuToggle.add( siteNavigation ).attr( 'aria-expanded', 'false' );
// Add an initial value for the attribute.
menuToggle.attr( 'aria-expanded', 'false' );
menuToggle.on( 'click.twentyseventeen', function() {
$( siteNavigation.closest( '.main-navigation' ), this ).toggleClass( 'toggled-on' );
siteNavContain.toggleClass( 'toggled-on' );
$( this )
.add( siteNavigation )
.attr( 'aria-expanded', $( this ).add( siteNavigation ).attr( 'aria-expanded' ) === 'false' ? 'true' : 'false' );
$( this ).attr( 'aria-expanded', siteNavContain.hasClass( 'toggled-on' ) );
});
})();
@@ -102,32 +106,4 @@
$( this ).parents( '.menu-item, .page_item' ).toggleClass( 'focus' );
});
})();
// Add the default ARIA attributes for the menu toggle and the navigations.
function onResizeARIA() {
if ( 'block' === $( '.menu-toggle' ).css( 'display' ) ) {
if ( menuToggle.hasClass( 'toggled-on' ) ) {
menuToggle.attr( 'aria-expanded', 'true' );
} else {
menuToggle.attr( 'aria-expanded', 'false' );
}
if ( siteNavigation.closest( '.main-navigation' ).hasClass( 'toggled-on' ) ) {
siteNavigation.attr( 'aria-expanded', 'true' );
} else {
siteNavigation.attr( 'aria-expanded', 'false' );
}
} else {
menuToggle.removeAttr( 'aria-expanded' );
siteNavigation.removeAttr( 'aria-expanded' );
menuToggle.removeAttr( 'aria-controls' );
}
}
$( document ).ready( function() {
$( window ).on( 'load.twentyseventeen', onResizeARIA );
$( window ).on( 'resize.twentyseventeen', onResizeARIA );
});
})( jQuery );

View File

@@ -9,7 +9,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -22,7 +22,7 @@
get_template_part( 'template-parts/footer/footer', 'widgets' );
if ( has_nav_menu( 'social' ) ) : ?>
<nav class="social-navigation" role="navigation" aria-label="<?php _e( 'Footer Social Links Menu', 'twentyseventeen' ); ?>">
<nav class="social-navigation" role="navigation" aria-label="<?php esc_attr_e( 'Footer Social Links Menu', 'twentyseventeen' ); ?>">
<?php
wp_nav_menu( array(
'theme_location' => 'social',

View File

@@ -55,6 +55,9 @@ function twentyseventeen_setup() {
add_image_size( 'twentyseventeen-thumbnail-avatar', 100, 100, true );
// Set the default content width.
$GLOBALS['content_width'] = 525;
// This theme uses wp_nav_menu() in two locations.
register_nav_menus( array(
'top' => __( 'Top Menu', 'twentyseventeen' ),
@@ -103,24 +106,29 @@ function twentyseventeen_setup() {
*/
add_editor_style( array( 'assets/css/editor-style.css', twentyseventeen_fonts_url() ) );
add_theme_support( 'starter-content', array(
// Define and register starter content to showcase the theme on new sites.
$starter_content = array(
'widgets' => array(
// Place three core-defined widgets in the sidebar area.
'sidebar-1' => array(
'text_business_info',
'search',
'text_about',
),
// Add the core-defined business info widget to the footer 1 area.
'sidebar-2' => array(
'text_business_info',
),
// Put two core-defined widgets in the footer 2 area.
'sidebar-3' => array(
'text_about',
'search',
),
),
// Specify the core-defined pages to create and add custom thumbnails to some of them.
'posts' => array(
'home',
'about' => array(
@@ -137,27 +145,30 @@ function twentyseventeen_setup() {
),
),
// Create the custom image attachments used as post thumbnails for pages.
'attachments' => array(
'image-espresso' => array(
'post_title' => _x( 'Espresso', 'Theme starter content' ),
'file' => 'assets/images/espresso.jpg',
'post_title' => _x( 'Espresso', 'Theme starter content', 'twentyseventeen' ),
'file' => 'assets/images/espresso.jpg', // URL relative to the template directory.
),
'image-sandwich' => array(
'post_title' => _x( 'Sandwich', 'Theme starter content' ),
'post_title' => _x( 'Sandwich', 'Theme starter content', 'twentyseventeen' ),
'file' => 'assets/images/sandwich.jpg',
),
'image-coffee' => array(
'post_title' => _x( 'Coffee', 'Theme starter content' ),
'post_title' => _x( 'Coffee', 'Theme starter content', 'twentyseventeen' ),
'file' => 'assets/images/coffee.jpg',
),
),
// Default to a static front page and assign the front and posts pages.
'options' => array(
'show_on_front' => 'page',
'page_on_front' => '{{home}}',
'page_for_posts' => '{{blog}}',
),
// Set the front page section theme mods to the IDs of the core-registered pages.
'theme_mods' => array(
'panel_1' => '{{homepage-section}}',
'panel_2' => '{{about}}',
@@ -165,16 +176,20 @@ function twentyseventeen_setup() {
'panel_4' => '{{contact}}',
),
// Set up nav menus for each of the two areas registered in the theme.
'nav_menus' => array(
// Assign a menu to the "top" location.
'top' => array(
'name' => __( 'Top Menu', 'twentyseventeen' ),
'items' => array(
'page_home',
'link_home', // Note that the core "home" page is actually a link in case a static front page is not used.
'page_about',
'page_blog',
'page_contact',
),
),
// Assign a menu to the "social" location.
'social' => array(
'name' => __( 'Social Links Menu', 'twentyseventeen' ),
'items' => array(
@@ -186,7 +201,18 @@ function twentyseventeen_setup() {
),
),
),
) );
);
/**
* Filters Twenty Seventeen array of starter content.
*
* @since Twenty Seventeen 1.1
*
* @param array $starter_content Array of starter content.
*/
$starter_content = apply_filters( 'twentyseventeen_starter_content', $starter_content );
add_theme_support( 'starter-content', $starter_content );
}
add_action( 'after_setup_theme', 'twentyseventeen_setup' );
@@ -199,10 +225,23 @@ add_action( 'after_setup_theme', 'twentyseventeen_setup' );
*/
function twentyseventeen_content_width() {
$content_width = 700;
$content_width = $GLOBALS['content_width'];
if ( twentyseventeen_is_frontpage() ) {
$content_width = 1120;
// Get layout.
$page_layout = get_theme_mod( 'page_layout' );
// Check if layout is one column.
if ( 'one-column' === $page_layout ) {
if ( twentyseventeen_is_frontpage() ) {
$content_width = 644;
} elseif ( is_page() ) {
$content_width = 740;
}
}
// Check if is single post and there is no sidebar.
if ( is_single() && ! is_active_sidebar( 'sidebar-1' ) ) {
$content_width = 740;
}
/**
@@ -214,7 +253,7 @@ function twentyseventeen_content_width() {
*/
$GLOBALS['content_width'] = apply_filters( 'twentyseventeen_content_width', $content_width );
}
add_action( 'after_setup_theme', 'twentyseventeen_content_width', 0 );
add_action( 'template_redirect', 'twentyseventeen_content_width', 0 );
/**
* Register custom fonts.
@@ -401,7 +440,7 @@ function twentyseventeen_scripts() {
);
if ( has_nav_menu( 'top' ) ) {
wp_enqueue_script( 'twentyseventeen-navigation', get_theme_file_uri( '/assets/js/navigation.js' ), array(), '1.0', true );
wp_enqueue_script( 'twentyseventeen-navigation', get_theme_file_uri( '/assets/js/navigation.js' ), array( 'jquery' ), '1.0', true );
$twentyseventeen_l10n['expand'] = __( 'Expand child menu', 'twentyseventeen' );
$twentyseventeen_l10n['collapse'] = __( 'Collapse child menu', 'twentyseventeen' );
$twentyseventeen_l10n['icon'] = twentyseventeen_get_svg( array( 'icon' => 'angle-down', 'fallback' => true ) );

View File

@@ -443,8 +443,11 @@ body.colors-custom,
.colors-custom .next.page-numbers:focus,
.colors-custom .next.page-numbers:hover,
.colors-custom.has-header-image .site-title,
.colors-custom.has-header-video .site-title,
.colors-custom.has-header-image .site-title a,
.colors-custom.has-header-image .site-description {
.colors-custom.has-header-video .site-title a,
.colors-custom.has-header-image .site-description,
.colors-custom.has-header-video .site-description {
color: hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: #fff; */
}
@@ -557,5 +560,15 @@ body.colors-custom,
}
}';
return $css;
/**
* Filters Twenty Seventeen custom colors CSS.
*
* @since Twenty Seventeen 1.0
*
* @param $css string Base theme colors CSS.
* @param $hue int The user's selected color hue.
* @param $saturation string Filtered theme color saturation level.
*/
return apply_filters( 'twentyseventeen_custom_colors_css', $css, $hue, $saturation );
}

View File

@@ -69,7 +69,7 @@ function twentyseventeen_header_style() {
// If we get this far, we have custom styles. Let's do this.
?>
<style type="text/css">
<style id="twentyseventeen-custom-header-styles" type="text/css">
<?php
// Has the text been hidden?
if ( 'blank' === $header_text_color ) :
@@ -84,9 +84,23 @@ function twentyseventeen_header_style() {
else :
?>
.site-title a,
body.has-header-image .site-title a,
.colors-dark .site-title a,
.colors-custom .site-title a,
body.has-header-image .site-title a,
body.has-header-video .site-title a,
body.has-header-image.colors-dark .site-title a,
body.has-header-video.colors-dark .site-title a,
body.has-header-image.colors-custom .site-title a,
body.has-header-video.colors-custom .site-title a,
.site-description,
body.has-header-image .site-description {
.colors-dark .site-description,
.colors-custom .site-description,
body.has-header-image .site-description,
body.has-header-video .site-description,
body.has-header-image.colors-dark .site-description,
body.has-header-video.colors-dark .site-description,
body.has-header-image.colors-custom .site-description,
body.has-header-video.colors-custom .site-description {
color: #<?php echo esc_attr( $header_text_color ); ?>;
}
<?php endif; ?>

View File

@@ -35,7 +35,7 @@ function twentyseventeen_body_classes( $classes ) {
}
// Add a class if there is a custom header.
if ( has_header_image() || has_header_video() && is_front_page() ) {
if ( has_header_image() ) {
$classes[] = 'has-header-image';
}

View File

@@ -3,8 +3,8 @@ Theme Name: Twenty Seventeen
Theme URI: https://wordpress.org/themes/twentyseventeen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Seventeen brings your site to life with immersive featured images and subtle animations. With a focus on business sites, it features multiple sections on the front page as well as widgets, navigation and social menus, a logo, and more. Personalize its asymmetrical grid with a custom color scheme and showcase your multimedia content with post formats. Our default theme for 2017 works great in many languages, for any abilities, and on any device.
Version: 1.0
Description: Twenty Seventeen brings your site to life with header video and immersive featured images. With a focus on business sites, it features multiple sections on the front page as well as widgets, navigation and social menus, a logo, and more. Personalize its asymmetrical grid with a custom color scheme and showcase your multimedia content with post formats. Our default theme for 2017 works great in many languages, for any abilities, and on any device.
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentyseventeen
@@ -451,7 +451,8 @@ h1 {
font-weight: 300;
}
h2 {
h2,
.home.blog .entry-title {
color: #666;
font-size: 20px;
font-size: 1.25rem;
@@ -868,6 +869,7 @@ html[lang="th"] h4,
html[lang="th"] h5,
html[lang="th"] h6 {
line-height: 1.65;
font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
html[lang="th"] body,
@@ -876,6 +878,7 @@ html[lang="th"] input,
html[lang="th"] select,
html[lang="th"] textarea {
line-height: 1.8;
font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
/* Remove letter-spacing for all non-latin alphabets */
@@ -933,6 +936,7 @@ input[type="datetime-local"],
input[type="color"],
textarea {
color: #666;
background: #fff;
background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
border: 1px solid #bbb;
-webkit-border-radius: 3px;
@@ -1580,7 +1584,9 @@ body {
}
body.has-header-image .site-title,
body.has-header-image .site-title a {
body.has-header-video .site-title,
body.has-header-image .site-title a,
body.has-header-video .site-title a {
color: #fff;
}
@@ -1591,7 +1597,8 @@ body.has-header-image .site-title a {
margin-bottom: 0;
}
body.has-header-image .site-description {
body.has-header-image .site-description,
body.has-header-video .site-description {
color: #fff;
opacity: 0.8;
}
@@ -1609,7 +1616,8 @@ body.has-header-image .site-description {
width: auto;
}
body.home.title-tagline-hidden.has-header-image .custom-logo-link img {
body.home.title-tagline-hidden.has-header-image .custom-logo-link img,
body.home.title-tagline-hidden.has-header-video .custom-logo-link img {
max-height: 200px;
max-width: 100%;
}
@@ -1629,14 +1637,16 @@ body:not(.title-tagline-hidden) .site-branding-text {
}
.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header {
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.has-header-video.home.blog .custom-header {
display: table;
height: 300px;
height: 75vh;
width: 100%;
}
.custom-header-image {
.custom-header-media {
bottom: 0;
left: 0;
overflow: hidden;
@@ -1646,7 +1656,7 @@ body:not(.title-tagline-hidden) .site-branding-text {
width: 100%;
}
.custom-header-image:before {
.custom-header-media:before {
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.3+75 */
background: -moz-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 75%, rgba(0, 0, 0, 0.3) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 75%, rgba(0, 0, 0, 0.3) 100%); /* Chrome10-25,Safari5.1-6 */
@@ -1662,9 +1672,9 @@ body:not(.title-tagline-hidden) .site-branding-text {
z-index: 2;
}
.has-header-image .custom-header-image img,
.has-header-image .custom-header-image video,
.has-header-image .custom-header-image iframe {
.has-header-image .custom-header-media img,
.has-header-video .custom-header-media video,
.has-header-video .custom-header-media iframe {
position: fixed;
height: auto;
left: 50%;
@@ -1674,6 +1684,7 @@ body:not(.title-tagline-hidden) .site-branding-text {
min-width: 100vw; /* vw prevents 1px gap on left that 100% has */
width: auto;
top: 50%;
padding-bottom: 1px; /* Prevent header from extending beyond the footer */
-ms-transform: translateX(-50%) translateY(-50%);
-moz-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
@@ -1706,7 +1717,7 @@ body:not(.title-tagline-hidden) .site-branding-text {
top: 62px;
}
.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-image img {
.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media img {
bottom: 0;
position: absolute;
top: auto;
@@ -1716,14 +1727,35 @@ body:not(.title-tagline-hidden) .site-branding-text {
transform: translateX(-50%) translateY(0);
}
/* For browsers that support 'object-fit' */
@supports ( object-fit: cover ) {
.has-header-image .custom-header-media img,
.has-header-video .custom-header-media video,
.has-header-video .custom-header-media iframe,
.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media img {
height: 100%;
left: 0;
-o-object-fit: cover;
object-fit: cover;
top: 0;
-ms-transform: none;
-moz-transform: none;
-webkit-transform: none;
transform: none;
width: 100%;
}
}
/* Hides div in Customizer preview when header images or videos change. */
body:not(.has-header-image) .custom-header-image {
body:not(.has-header-image):not(.has-header-video) .custom-header-media {
display: none;
}
.has-header-image.twentyseventeen-front-page .site-branding,
.has-header-image.home.blog .site-branding {
.has-header-video.twentyseventeen-front-page .site-branding,
.has-header-image.home.blog .site-branding,
.has-header-video.home.blog .site-branding {
display: table-cell;
height: 100%;
vertical-align: bottom;
@@ -2237,6 +2269,10 @@ body:not(.twentyseventeen-front-page) .entry-header {
margin: 0 0 1.5em;
}
.page:not(.home) #content {
padding-bottom: 1.5em;
}
/* 404 page */
.error404 .page-content {
@@ -2938,7 +2974,7 @@ object {
box-shadow: none;
background: none;
display: inline-block;
width: 100%;
max-width: 100%;
}
.gallery-item a img {
@@ -3110,6 +3146,7 @@ object {
}
h2,
.home.blog .entry-title,
.page .panel-content .recent-posts .entry-title {
font-size: 26px;
font-size: 1.625rem;
@@ -3269,7 +3306,9 @@ object {
}
.has-header-image.twentyseventeen-front-page .site-branding,
.has-header-image.home.blog .site-branding {
.has-header-video.twentyseventeen-front-page .site-branding,
.has-header-image.home.blog .site-branding,
.has-header-video.home.blog .site-branding {
bottom: 0;
display: block;
left: 0;
@@ -3280,23 +3319,28 @@ object {
}
.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header {
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.has-header-video.home.blog .custom-header {
display: block;
height: auto;
}
.custom-header-image {
.custom-header-media {
height: 165px;
position: relative;
}
.twentyseventeen-front-page.has-header-image .custom-header-image,
.home.blog.has-header-image .custom-header-image {
.twentyseventeen-front-page.has-header-image .custom-header-media,
.twentyseventeen-front-page.has-header-video .custom-header-media,
.home.blog.has-header-image .custom-header-media,
.home.blog.has-header-video .custom-header-media {
height: 0;
position: relative;
}
.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-image {
.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media,
.has-header-video:not(.twentyseventeen-front-page):not(.home) .custom-header-media {
bottom: 0;
height: auto;
left: 0;
@@ -3310,11 +3354,13 @@ object {
}
.custom-logo-link img,
body.home.title-tagline-hidden.has-header-image .custom-logo-link img {
body.home.title-tagline-hidden.has-header-image .custom-logo-link img,
body.home.title-tagline-hidden.has-header-video .custom-logo-link img {
max-width: 350px;
}
.title-tagline-hidden.home.has-header-image .custom-logo-link img {
.title-tagline-hidden.home.has-header-image .custom-logo-link img,
.title-tagline-hidden.home.has-header-video .custom-logo-link img {
max-height: 200px;
}
@@ -3576,25 +3622,33 @@ object {
/* Front Page */
.twentyseventeen-front-page.has-header-image .site-branding,
.home.blog.has-header-image .site-branding {
.twentyseventeen-front-page.has-header-video .site-branding,
.home.blog.has-header-image .site-branding,
.home.blog.has-header-video .site-branding {
margin-bottom: 70px;
}
.twentyseventeen-front-page.has-header-image .custom-header-image,
.home.blog.has-header-image .custom-header-image {
.twentyseventeen-front-page.has-header-image .custom-header-media,
.twentyseventeen-front-page.has-header-video .custom-header-media,
.home.blog.has-header-image .custom-header-media,
.home.blog.has-header-video .custom-header-media {
height: 1200px;
height: 100vh;
max-height: 100%;
overflow: hidden;
}
.twentyseventeen-front-page.has-header-image .custom-header-image:before,
.home.blog.has-header-image .custom-header-image:before {
.twentyseventeen-front-page.has-header-image .custom-header-media:before,
.twentyseventeen-front-page.has-header-video .custom-header-media:before,
.home.blog.has-header-image .custom-header-media:before,
.home.blog.has-header-video .custom-header-media:before {
height: 33%;
}
.admin-bar.twentyseventeen-front-page.has-header-image .custom-header-image,
.admin-bar.home.blog.has-header-image .custom-header-image {
.admin-bar.twentyseventeen-front-page.has-header-image .custom-header-media,
.admin-bar.twentyseventeen-front-page.has-header-video .custom-header-media,
.admin-bar.home.blog.has-header-image .custom-header-media,
.admin-bar.home.blog.has-header-video .custom-header-media {
height: calc(100vh - 32px);
}
@@ -3655,7 +3709,7 @@ object {
/* Posts */
.site-content {
padding: 6.5em 0 0;
padding: 5.5em 0 0;
}
.single-post .entry-title,
@@ -3816,6 +3870,10 @@ object {
margin-bottom: 4em;
}
.page:not(.home) #content {
padding-bottom: 3.25em;
}
/* 404 page */
.error404 .page-content {
@@ -4104,12 +4162,14 @@ object {
padding: 0;
}
.custom-header-image {
.custom-header-media {
padding: 0;
}
.twentyseventeen-front-page.has-header-image .site-branding,
.home.blog.has-header-image .site-branding {
.twentyseventeen-front-page.has-header-video .site-branding,
.home.blog.has-header-image .site-branding,
.home.blog.has-header-video .site-branding {
position: relative;
}
@@ -4148,7 +4208,9 @@ object {
a,
.site-title a,
.twentyseventeen-front-page.has-header-image .site-title,
.twentyseventeen-front-page.has-header-image .site-title a {
.twentyseventeen-front-page.has-header-video .site-title,
.twentyseventeen-front-page.has-header-image .site-title a,
.twentyseventeen-front-page.has-header-video .site-title a {
color: #222 !important; /* Make sure color schemes don't affect to print */
}
@@ -4157,6 +4219,7 @@ object {
blockquote,
.site-description,
.twentyseventeen-front-page.has-header-image .site-description,
.twentyseventeen-front-page.has-header-video .site-description,
.entry-meta,
.entry-meta a {
color: #777 !important; /* Make sure color schemes don't affect to print */

View File

@@ -1,6 +1,6 @@
<?php
/**
* Displays header image
* Displays header media
*
* @package WordPress
* @subpackage Twenty_Seventeen
@@ -11,7 +11,7 @@
?>
<div class="custom-header">
<div class="custom-header-image">
<div class="custom-header-media">
<?php the_custom_header_markup(); ?>
</div>

View File

@@ -28,7 +28,7 @@
</div><!-- .site-branding-text -->
<?php if ( ( twentyseventeen_is_frontpage() || ( is_home() && is_front_page() ) ) && ! has_nav_menu( 'top' ) ) : ?>
<a href="#content" class="menu-scroll-down"><?php echo twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ); ?><span class="screen-reader-text"><?php _e( 'Scroll Down', 'twentyseventeen' ); ?></span></a>
<a href="#content" class="menu-scroll-down"><?php echo twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ); ?><span class="screen-reader-text"><?php _e( 'Scroll down to content', 'twentyseventeen' ); ?></span></a>
<?php endif; ?>
</div><!-- .wrap -->

View File

@@ -5,11 +5,11 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
<nav id="site-navigation" class="main-navigation" role="navigation" aria-label="<?php _e( 'Top Menu', 'twentyseventeen' ); ?>">
<nav id="site-navigation" class="main-navigation" role="navigation" aria-label="<?php esc_attr_e( 'Top Menu', 'twentyseventeen' ); ?>">
<button class="menu-toggle" aria-controls="top-menu" aria-expanded="false"><?php echo twentyseventeen_get_svg( array( 'icon' => 'bars' ) ); echo twentyseventeen_get_svg( array( 'icon' => 'close' ) ); _e( 'Menu', 'twentyseventeen' ); ?></button>
<?php wp_nav_menu( array(
'theme_location' => 'top',
@@ -17,6 +17,6 @@
) ); ?>
<?php if ( ( twentyseventeen_is_frontpage() || ( is_home() && is_front_page() ) ) && has_custom_header() ) : ?>
<a href="#content" class="menu-scroll-down"><?php echo twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ); ?><span class="screen-reader-text"><?php _e( 'Scroll Down', 'twentyseventeen' ); ?></span></a>
<a href="#content" class="menu-scroll-down"><?php echo twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ); ?><span class="screen-reader-text"><?php _e( 'Scroll down to content', 'twentyseventeen' ); ?></span></a>
<?php endif; ?>
</nav><!-- #site-navigation -->

View File

@@ -7,7 +7,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -33,6 +33,8 @@
if ( is_single() ) {
the_title( '<h1 class="entry-title">', '</h1>' );
} elseif ( is_front_page() && is_home() ) {
the_title( '<h3 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h3>' );
} else {
the_title( '<h2 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h2>' );
}

View File

@@ -9,7 +9,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -30,7 +30,13 @@
</div><!-- .entry-meta -->
<?php endif; ?>
<?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' ); ?>
<?php if ( is_front_page() && ! is_home() ) {
// The excerpt is being displayed within a front page section, so it's a lower hierarchy than h2.
the_title( sprintf( '<h3 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h3>' );
} else {
the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' );
} ?>
</header><!-- .entry-header -->
<div class="entry-summary">

View File

@@ -7,7 +7,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -32,6 +32,8 @@
if ( is_single() ) {
the_title( '<h1 class="entry-title">', '</h1>' );
} elseif ( is_front_page() && is_home() ) {
the_title( '<h3 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h3>' );
} else {
the_title( '<h2 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h2>' );
}

View File

@@ -7,7 +7,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -32,6 +32,8 @@
if ( is_single() ) {
the_title( '<h1 class="entry-title">', '</h1>' );
} elseif ( is_front_page() && is_home() ) {
the_title( '<h3 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h3>' );
} else {
the_title( '<h2 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h2>' );
}

View File

@@ -7,7 +7,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -32,6 +32,8 @@
if ( is_single() ) {
the_title( '<h1 class="entry-title">', '</h1>' );
} elseif ( is_front_page() && is_home() ) {
the_title( '<h3 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h3>' );
} else {
the_title( '<h2 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h2>' );
}

View File

@@ -7,7 +7,7 @@
* @package WordPress
* @subpackage Twenty_Seventeen
* @since 1.0
* @version 1.0
* @version 1.2
*/
?>
@@ -33,6 +33,8 @@
if ( is_single() ) {
the_title( '<h1 class="entry-title">', '</h1>' );
} elseif ( is_front_page() && is_home() ) {
the_title( '<h3 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h3>' );
} else {
the_title( '<h2 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h2>' );
}

View File

@@ -0,0 +1,34 @@
<?php
/**
* The template for displaying 404 pages (not found)
*
* @package WordPress
* @subpackage Twenty_Sixteen
* @since Twenty Sixteen 1.0
*/
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<section class="error-404 not-found">
<header class="page-header">
<h1 class="page-title"><?php _e( 'Oops! That page can&rsquo;t be found.', 'twentysixteen' ); ?></h1>
</header><!-- .page-header -->
<div class="page-content">
<p><?php _e( 'It looks like nothing was found at this location. Maybe try a search?', 'twentysixteen' ); ?></p>
<?php get_search_form(); ?>
</div><!-- .page-content -->
</section><!-- .error-404 -->
</main><!-- .site-main -->
<?php get_sidebar( 'content-bottom' ); ?>
</div><!-- .content-area -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

View File

@@ -0,0 +1,65 @@
<?php
/**
* The template for displaying archive pages
*
* Used to display archive-type pages if nothing more specific matches a query.
* For example, puts together date-based pages if no date.php file exists.
*
* If you'd like to further customize these archive views, you may create a
* new template file for each one. For example, tag.php (Tag archives),
* category.php (Category archives), author.php (Author archives), etc.
*
* @link https://codex.wordpress.org/Template_Hierarchy
*
* @package WordPress
* @subpackage Twenty_Sixteen
* @since Twenty Sixteen 1.0
*/
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php if ( have_posts() ) : ?>
<header class="page-header">
<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
the_archive_description( '<div class="taxonomy-description">', '</div>' );
?>
</header><!-- .page-header -->
<?php
// Start the Loop.
while ( have_posts() ) : the_post();
/*
* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'template-parts/content', get_post_format() );
// End the loop.
endwhile;
// Previous/next page navigation.
the_posts_pagination( array(
'prev_text' => __( 'Previous page', 'twentysixteen' ),
'next_text' => __( 'Next page', 'twentysixteen' ),
'before_page_number' => '<span class="meta-nav screen-reader-text">' . __( 'Page', 'twentysixteen' ) . ' </span>',
) );
// If no content, include the "No posts found" template.
else :
get_template_part( 'template-parts/content', 'none' );
endif;
?>
</main><!-- .site-main -->
</div><!-- .content-area -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

View File

@@ -0,0 +1,79 @@
<?php
/**
* The template for displaying comments
*
* The area of the page that contains both current comments
* and the comment form.
*
* @package WordPress
* @subpackage Twenty_Sixteen
* @since Twenty Sixteen 1.0
*/
/*
* If the current post is protected by a password and
* the visitor has not yet entered the password we will
* return early without loading the comments.
*/
if ( post_password_required() ) {
return;
}
?>
<div id="comments" class="comments-area">
<?php if ( have_comments() ) : ?>
<h2 class="comments-title">
<?php
$comments_number = get_comments_number();
if ( 1 === $comments_number ) {
/* translators: %s: post title */
printf( _x( 'One thought on &ldquo;%s&rdquo;', 'comments title', 'twentysixteen' ), get_the_title() );
} else {
printf(
/* translators: 1: number of comments, 2: post title */
_nx(
'%1$s thought on &ldquo;%2$s&rdquo;',
'%1$s thoughts on &ldquo;%2$s&rdquo;',
$comments_number,
'comments title',
'twentysixteen'
),
number_format_i18n( $comments_number ),
get_the_title()
);
}
?>
</h2>
<?php the_comments_navigation(); ?>
<ol class="comment-list">
<?php
wp_list_comments( array(
'style' => 'ol',
'short_ping' => true,
'avatar_size' => 42,
) );
?>
</ol><!-- .comment-list -->
<?php the_comments_navigation(); ?>
<?php endif; // Check for have_comments(). ?>
<?php
// If comments are closed and there are comments, let's leave a little note, shall we?
if ( ! comments_open() && get_comments_number() && post_type_supports( get_post_type(), 'comments' ) ) :
?>
<p class="no-comments"><?php _e( 'Comments are closed.', 'twentysixteen' ); ?></p>
<?php endif; ?>
<?php
comment_form( array(
'title_reply_before' => '<h2 id="reply-title" class="comment-reply-title">',
'title_reply_after' => '</h2>',
) );
?>
</div><!-- .comments-area -->

View File

@@ -0,0 +1,547 @@
/*
Theme Name: Twenty Sixteen
Description: Used to style the TinyMCE editor.
*/
/**
* Table of Contents:
*
* 1.0 - Body
* 2.0 - Typography
* 3.0 - Elements
* 4.0 - Alignment
* 5.0 - Caption
* 6.0 - Galleries
* 7.0 - Audio / Video
* 8.0 - RTL
*/
/**
* 1.0 - Body
*/
body {
color: #1a1a1a;
font-family: Merriweather, Georgia, serif;
font-size: 16px;
font-weight: 400;
line-height: 1.75;
margin: 20px 40px;
max-width: 600px;
vertical-align: baseline;
}
body.post-type-page {
max-width: 840px;
}
/**
* 2.0 - Typography
*/
h1,
h2,
h3,
h4,
h5,
h6 {
clear: both;
font-weight: 900;
margin: 56px 0 28px;
}
h1 {
font-size: 33px;
line-height: 1.2727272727;
}
h2 {
font-size: 28px;
line-height: 1.25;
}
h3 {
font-size: 23px;
line-height: 1.2173913043;
}
h4,
h5,
h6 {
font-size: 19px;
line-height: 1.1052631579;
}
h4 {
letter-spacing: 0.13333em;
text-transform: uppercase;
}
h6 {
font-style: italic;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
margin-top: 0;
}
p {
margin: 0 0 28px;
}
b,
strong {
font-weight: 700;
}
dfn,
cite,
em,
i {
font-style: italic;
}
blockquote {
border-left: 4px solid #1a1a1a;
color: #686868;
font-size: 19px;
font-style: italic;
line-height: 1.4736842105;
margin-bottom: 28px;
overflow: hidden;
padding: 0 0 0 24px;
}
blockquote:not(.alignleft):not(.alignright) {
margin-left: -28px;
}
blockquote blockquote:not(.alignleft):not(.alignright) {
margin-left: 0;
}
blockquote:before,
blockquote:after {
content: "";
display: table;
}
blockquote:after {
clear: both;
}
blockquote > :last-child {
margin-bottom: 0;
}
blockquote cite,
blockquote small {
color: #1a1a1a;
font-size: 16px;
line-height: 1.75;
}
blockquote em,
blockquote i,
blockquote cite {
font-style: normal;
}
blockquote strong,
blockquote b {
font-weight: 400;
}
blockquote.alignleft,
blockquote.alignright {
border: 0 solid #1a1a1a;
border-top-width: 4px;
padding: 18px 0 0;
width: -webkit-calc(50% - 14px);
width: calc(50% - 14px);
}
address {
font-style: italic;
margin: 0 0 28px;
}
code,
kbd,
tt,
var,
samp,
pre {
font-family: Inconsolata, monospace;
}
pre {
border: 1px solid #d1d1d1;
font-size: 16px;
line-height: 1.3125;
margin: 0 0 28px;
max-width: 100%;
overflow: auto;
padding: 14px;
white-space: pre;
white-space: pre-wrap;
word-wrap: break-word;
}
code {
background-color: #d1d1d1;
padding: 2px 4px;
}
abbr[title] {
border-bottom: 1px dotted #d1d1d1;
cursor: help;
}
mark,
ins {
background: #007acc;
color: #fff;
padding: 2px 4px;
text-decoration: none;
}
sup,
sub {
font-size: 75%;
height: 0;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
top: -6px;
}
sup {
bottom: -3px;
}
small {
font-size: 80%;
}
big {
font-size: 125%;
}
/**
* 3.0 - Elements
*/
hr {
background-color: #d1d1d1;
border: 0;
height: 1px;
margin-bottom: 28px;
}
ul,
ol {
margin: 0 0 28px 0;
padding: 0;
}
ul {
list-style: disc;
}
ol {
list-style: decimal;
}
li > ul,
li > ol {
margin-bottom: 0;
}
li > ul,
blockquote > ul {
margin-left: 20px;
}
li > ol,
blockquote > ol {
margin-left: 24px;
}
dl {
margin: 0 0 28px;
}
dt {
font-weight: bold;
}
dd {
margin: 0 0 28px;
}
table,
th,
td,
.mce-item-table,
.mce-item-table th,
.mce-item-table td {
border: 1px solid #d1d1d1;
}
table a {
color: #007acc;
}
table,
.mce-item-table {
border-collapse: separate;
border-spacing: 0;
border-width: 1px 0 0 1px;
margin: 0 0 28px;
width: 100%;
}
table th,
.mce-item-table th,
table caption {
border-width: 0 1px 1px 0;
font-size: 16px;
font-weight: 700;
padding: 7px;
text-align: left;
vertical-align: baseline;
}
table td,
.mce-item-table td {
border-width: 0 1px 1px 0;
font-size: 16px;
padding: 7px;
vertical-align: baseline;
}
img {
border: 0;
height: auto;
max-width: 100%;
vertical-align: middle;
}
a img {
display: block;
}
figure {
margin: 0;
}
del {
opacity: 0.8;
}
a {
box-shadow: 0 1px 0 0 currentColor;
color: #007acc;
text-decoration: none;
}
fieldset {
border: 1px solid #d1d1d1;
margin: 0 0 28px;
padding: 14px;
}
/**
* 4.0 - Alignment
*/
.alignleft {
float: left;
margin: 6px 28px 28px 0;
}
.alignright {
float: right;
margin: 6px 0 28px 28px;
}
.aligncenter {
clear: both;
display: block;
margin: 0 auto 28px;
}
/**
* 5.0 - Caption
*/
.wp-caption {
background: transparent;
border: none;
margin-bottom: 28px;
max-width: 100%;
padding: 0;
text-align: inherit;
}
.wp-caption-text,
.wp-caption-dd {
color: #686868;
font-size: 13px;
font-style: italic;
line-height: 1.6153846154;
padding-top: 7px;
}
/**
* 6.0 - Galleries
*/
.mce-content-body .wpview-wrap {
margin-bottom: 28px;
}
.gallery {
margin: 0 -1.1666667%;
padding: 0;
}
.gallery .gallery-item {
display: inline-block;
max-width: 33.33%;
padding: 0 1.1400652% 2.2801304%;
text-align: center;
vertical-align: top;
width: 100%;
}
.gallery-columns-1 .gallery-item {
max-width: 100%;
}
.gallery-columns-2 .gallery-item {
max-width: 50%;
}
.gallery-columns-4 .gallery-item {
max-width: 25%;
}
.gallery-columns-5 .gallery-item {
max-width: 20%;
}
.gallery-columns-6 .gallery-item {
max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
max-width: 11.11%;
}
.gallery .gallery-caption {
font-size: 13px;
margin: 0;
}
.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
display: none;
}
/**
* 7.0 - Audio / Video
*/
.wp-audio-shortcode a,
.wp-playlist a {
box-shadow: none;
}
.mce-content-body .wp-audio-playlist {
margin: 0;
padding-bottom: 0;
}
.mce-content-body .wp-playlist-tracks {
margin-top: 0;
}
.mce-content-body .wp-playlist-item {
padding: 10px 0;
}
.mce-content-body .wp-playlist-item-length {
top: 10px;
}
/**
* 8.0 - RTL
*/
.rtl blockquote {
border: 0 solid #1a1a1a;
border-right-width: 4px;
}
.rtl blockquote.alignleft,
.rtl blockquote.alignright {
border: 0 solid #1a1a1a;
border-top-width: 4px;
}
.rtl blockquote:not(.alignleft):not(.alignright) {
margin-right: -28px;
padding: 0 24px 0 0;
}
.rtl blockquote blockquote:not(.alignleft):not(.alignright) {
margin-right: 0;
margin-left: auto;
}
.rtl li > ul,
.rtl blockquote > ul {
margin-right: 20px;
margin-left: auto;
}
.rtl li > ol,
.rtl blockquote > ol {
margin-right: 24px;
margin-left: auto;
}
.rtl table th,
.rtl .mce-item-table th,
.rtl table caption {
text-align: right;
}

Some files were not shown because too many files have changed in this diff Show More