wordpress-develop/tests/phpunit/tests/query
Sergey Biryukov ef6973b7f0 Bootstrap/Load: Make handling the /favicon.ico requests more flexible.
Previously, `wp_favicon_request()` was introduced in [13205] to avoid a performance hit of serving a full 404 page on every favicon request.

While working as intended, that implementation did not provide a way for theme or plugin authors to manage the behavior of favicon requests.

This changeset implements the following logic (only applied if WordPress is installed in the root directory):

* If there is a Site Icon set in Customizer, redirect `/favicon.ico` requests to that icon.
* Otherwise, use the WordPress logo as a default icon.
* If a physical `/favicon.ico` file exists, do nothing, let the server handle the request.

Handling `/favicon.ico` is now more consistent with handling `/robots.txt` requests.

New functions and hooks:

* Introduce `is_favicon()` conditional tag to complement `is_robots()`.
* Introduce `do_favicon` action to complement `do_robots` and use it in template loader.
* Introduce `do_favicon()` function, hooked to the above action by default, to complement `do_robots()`.
* Introduce `do_faviconico` action to complement `do_robotstxt`, for plugins to override the default behavior.
* Mark `wp_favicon_request()` as deprecated in favor of `do_favicon()`.

Props jonoaldersonwp, birgire, joostdevalk, mukesh27, SergeyBiryukov.
Fixes #47398.

git-svn-id: https://develop.svn.wordpress.org/trunk@47018 602fd350-edb4-49c9-b593-d223f7449a82
2019-12-28 21:18:03 +00:00
..
commentCount.php Code is Poetry. 2017-11-30 23:09:33 +00:00
conditionals.php Coding Standards: Fix the Squiz.PHP.DisallowMultipleAssignments violations in tests. 2019-07-02 04:43:01 +00:00
date.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:50:26 +00:00
dateQuery.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:50:26 +00:00
generatePostdata.php Code Modernisation: Fix known instances of array access on data types that can't be accessed as arrays. 2019-07-15 06:24:08 +00:00
isTerm.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:50:26 +00:00
metaQuery.php Query: Expand the list of operators available to compare_key in WP_Meta_Query. 2019-09-19 15:02:20 +00:00
noFoundRows.php Code is Poetry. 2017-11-30 23:09:33 +00:00
parseQuery.php Code is Poetry. 2017-11-30 23:09:33 +00:00
postStatus.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:50:26 +00:00
results.php Coding Standards: Fix the Squiz.PHP.DisallowMultipleAssignments violations in tests. 2019-07-02 04:43:01 +00:00
search.php Coding Standards: Upgrade WPCS to 1.0.0 2018-08-17 01:50:26 +00:00
setupPostdata.php Coding Standards: Fix the Squiz.PHP.DisallowMultipleAssignments violations in tests. 2019-07-02 04:43:01 +00:00
stickies.php Date/Time: Replace all instances of date() with gmdate(). 2019-05-26 00:11:37 +00:00
taxQuery.php Coding Standards: Fix the Squiz.PHP.DisallowMultipleAssignments violations in tests. 2019-07-02 04:43:01 +00:00
vars.php Bootstrap/Load: Make handling the /favicon.ico requests more flexible. 2019-12-28 21:18:03 +00:00
verboseRewriteRules.php Built/Test Tools: Unify the way the permastructure is set when used in conjunction with re-registering the initial taxonomies. This ensure that rewrite rules for taxonomies are consistently available. 2016-09-26 17:01:48 +00:00