Commit Graph

70 Commits

Author SHA1 Message Date
John Blackbourn
78a6e4febb Docs: Use more specific types in parameter descriptions in place of mixed.
See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@47397 602fd350-edb4-49c9-b593-d223f7449a82
2020-03-01 10:36:38 +00:00
Sergey Biryukov
130751cda3 Coding Standards: Use Yoda conditions where appropriate.
See #49222.

git-svn-id: https://develop.svn.wordpress.org/trunk@47219 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-09 16:52:28 +00:00
Sergey Biryukov
e72fff9cef Code Modernization: Replace dirname( __FILE__ ) calls with __DIR__ magic constant.
This avoids the performance overhead of the function call every time `dirname( __FILE__ )` was used instead of `__DIR__`.

This commit also includes:

* Removing unnecessary parentheses from `include`/`require` statements. These are language constructs, not function calls.
* Replacing `include` statements for several files with `require_once`, for consistency:
 * `wp-admin/admin-header.php`
 * `wp-admin/admin-footer.php`
 * `wp-includes/version.php`

Props ayeshrajans, desrosj, valentinbora, jrf, joostdevalk, netweb.
Fixes #48082.

git-svn-id: https://develop.svn.wordpress.org/trunk@47198 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-06 06:31:22 +00:00
Sergey Biryukov
cfc3b57488 Docs: Improve inline comments per the documentation standards.
Includes minor code layout fixes for better readability.

See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@47122 602fd350-edb4-49c9-b593-d223f7449a82
2020-01-29 00:43:23 +00:00
Sergey Biryukov
4c2ee4e9ff Docs: In various @return tags, list the expected type first, instead of false.
Follow-up to [46696].

See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@47060 602fd350-edb4-49c9-b593-d223f7449a82
2020-01-11 18:30:58 +00:00
Sergey Biryukov
a4b65bfca8 Date/Time: Ensure that get_feed_build_date() correctly handles a modified post object with invalid date.
* Clarify in the documentation that the function returns `false` on failure.
* Consistently pass the return value through the `get_feed_build_date` filter.

Props Rarst, dd32, azaozz, tellyworth.
Fixes #48957.

git-svn-id: https://develop.svn.wordpress.org/trunk@46974 602fd350-edb4-49c9-b593-d223f7449a82
2019-12-17 20:41:09 +00:00
John Blackbourn
726d3a1d9c Docs: Increase the specificity of various docblock parameter types and return types.
See #48303

git-svn-id: https://develop.svn.wordpress.org/trunk@46823 602fd350-edb4-49c9-b593-d223f7449a82
2019-12-06 22:41:26 +00:00
Sergey Biryukov
172f434332 Date/Time: Correct the time format in get_feed_build_date() to use 24-hour format.
Follow-up to [46756].

See #48675.

git-svn-id: https://develop.svn.wordpress.org/trunk@46757 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-21 16:25:38 +00:00
Sergey Biryukov
6ce8175456 Date/Time: Remove mysql2date() usage in get_feed_build_date() to ensure the output includes correct timezone offset.
With the changes in [45908], `mysql2date()` works correctly for all local time inputs, but should not be used for UTC time inputs.

Add a unit test.

Props Rarst, lisota.
Fixes #48675.

git-svn-id: https://develop.svn.wordpress.org/trunk@46756 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-21 13:16:50 +00:00
Sergey Biryukov
6cf77dbbb6 Docs: Remove incorrect @return tags.
Props diddledan.
Fixes #48613, #48614.

git-svn-id: https://develop.svn.wordpress.org/trunk@46732 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-14 09:55:21 +00:00
Sergey Biryukov
cde71eed52 Docs: In various @return tags, list the expected type first, instead of WP_Error.
See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@46696 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-11 02:41:15 +00:00
Sergey Biryukov
00b03f2a6f I18N: Capitalize translator comments consistently, add trailing punctuation.
Includes minor code layout fixes.

See #44360.

git-svn-id: https://develop.svn.wordpress.org/trunk@45932 602fd350-edb4-49c9-b593-d223f7449a82
2019-09-03 00:39:13 +00:00
Gary Pendergast
72529b3deb Feeds: Introduce the get_self_link() function.
Corresponds to the `self_link()` template function.

This matches other feed template functions, using one function to get the value, and a different function to echo it.

Props jojotjebaby, mobeen-abdullah, donmhico, audrasjb, dshanske.
Fixes #44838.



git-svn-id: https://develop.svn.wordpress.org/trunk@45772 602fd350-edb4-49c9-b593-d223f7449a82
2019-08-09 01:30:32 +00:00
Sergey Biryukov
9bb2eea37a Feeds: Escape & characters in atom_site_icon() for XML, for consistency with rss2_site_icon().
Props abhijitrakas, shawfactor.
Fixes #47482.

git-svn-id: https://develop.svn.wordpress.org/trunk@45753 602fd350-edb4-49c9-b593-d223f7449a82
2019-08-05 13:14:25 +00:00
Sergey Biryukov
d19f4d7ff4 Docs: Add missing description for $wp_query and $wp_the_query globals.
Props mukesh27.
See #45604, #47110.

git-svn-id: https://develop.svn.wordpress.org/trunk@45739 602fd350-edb4-49c9-b593-d223f7449a82
2019-08-04 01:58:03 +00:00
Gary Pendergast
d36eda33f7 Coding Standards: Fix instances of WordPress.PHP.NoSilencedErrors.Discouraged.
Noteable changes:
- The `magic_quotes_runtime` and `magic_quotes_sybase` settings were removed in PHP 5.4, so no longer need to be set.
- Some functions that use external libraries can generate errors that can't be tested for, so are globally allowed to silence errors.
- Quite a few functions would cause errors if `safe_mode` was set. This setting was removed in PHP 5.4.
- Only a handful of `header()` calls needed corresponding `headers_sent()` checks for unit tests to pass, but more may need to be added as the nightlies builds are tested.

See #46732.


git-svn-id: https://develop.svn.wordpress.org/trunk@45611 602fd350-edb4-49c9-b593-d223f7449a82
2019-07-09 05:44:42 +00:00
Jonathan Desrosiers
05da62cca7 Feeds: Ensure a feed’s <lastBuildDate> has the correct date.
The maximum modified time for a is currently being determined after an arbitrary date format is applied. Because the string sort in `max()` is being used to return the highest (most recent) modified value, the incorrect date is sometimes returned. This was introduced in [45247].

Props onlanka, Rarsr, mukesh27.
Fixes #47304.

git-svn-id: https://develop.svn.wordpress.org/trunk@45367 602fd350-edb4-49c9-b593-d223f7449a82
2019-05-20 14:41:59 +00:00
Adam Silverstein
9e3c57c2ff Feeds: improve structure and naming of feed build date helper function.
Simplify overall code structure by passing the required format to the helper function.
Clarify functionality by renaming `get_last_build_date` to `get_feed_build_date`.

Props pento, spacedmonkey.
Fixes #4575.



git-svn-id: https://develop.svn.wordpress.org/trunk@45247 602fd350-edb4-49c9-b593-d223f7449a82
2019-04-18 17:07:07 +00:00
adamsilverstein
d1de972555 Feeds: ensure build/update date matches current query.
Displaying the correct build date in feeds is as important today as it was twelve years ago when this ticket was opened.

Fix an issue where all feeds in WordPress showed the same date for their last build date (the datapoint is `lastBuildDate`, `updated` or `dc:date` depending on the feed type). 

Introduce a new `get_last_build_date` filter to adjust the date used for `lastBuildDate`. Developers who previously filtered `get_lastcommentmodified` to alter feed dates should use this filter instead.

* `get_last_build_date` extracts the latest post (or comment) in the current WP_Query object.
* In all feed templates, use `get_last_build_date` vs `get_lastpostmodified( 'GMT' );`.

Props stevenkword, spacedmonkey, ryanshoover, mauteri, nacin, jorbin, MikeNGarrett, Denis-de-Bernardy, peaceablewhale.
Fixes #4575.



git-svn-id: https://develop.svn.wordpress.org/trunk@44948 602fd350-edb4-49c9-b593-d223f7449a82
2019-03-20 20:37:02 +00:00
Sergey Biryukov
e553acf201 Docs: Remove erroneous zero-width space before URL in fetch_feed() DocBlock.
Props coffee2code.
Fixes #42951. See #meta3212.

git-svn-id: https://develop.svn.wordpress.org/trunk@42414 602fd350-edb4-49c9-b593-d223f7449a82
2017-12-21 02:39:21 +00:00
Gary Pendergast
8f95800d52 Code is Poetry.
WordPress' code just... wasn't.
This is now dealt with.

Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057.



git-svn-id: https://develop.svn.wordpress.org/trunk@42343 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-30 23:09:33 +00:00
John Blackbourn
0b11b6ea36 Hardening: Ensure the attributes of enclosures are correctly escaped in RSS and Atom feeds.
git-svn-id: https://develop.svn.wordpress.org/trunk@42260 602fd350-edb4-49c9-b593-d223f7449a82
2017-11-29 15:55:03 +00:00
John Blackbourn
dd33fc9301 Docs: Remove & prefixes from parameter documentation to avoid doc parsing errors.
Props sudar for the original patch.

See #35974


git-svn-id: https://develop.svn.wordpress.org/trunk@41686 602fd350-edb4-49c9-b593-d223f7449a82
2017-10-02 22:01:23 +00:00
rmccue
48ec643441 Feeds: Don't override the Content-Type header inside fetc_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.
Fixes #39066.


git-svn-id: https://develop.svn.wordpress.org/trunk@39681 602fd350-edb4-49c9-b593-d223f7449a82
2017-01-05 03:05:53 +00:00
pento
2e9b3c22d8 General: Check to see that the PHP-XML module is enabled before using XML functions.
There are a handful of places where we don't check that the XML functions exist before we use them. Ubuntu's PHP 7 packages don't include PHP-XML by default, increasing the chance of this causing issues.

Props kraftbj, markoheijnen.
Fixes #37122.



git-svn-id: https://develop.svn.wordpress.org/trunk@38883 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-24 04:44:07 +00:00
Scott Taylor
cba0e2c8f7 Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389.
See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38470 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-31 16:30:48 +00:00
Scott Taylor
4225e71a6b Bootstrap: after r38409 and r38410, revert r38402 which reverted r38399.
This fixes the paths in `wp-vendor/` that were including `src`. I want to drop this in so we can find out what else will break.

See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38411 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-27 22:31:11 +00:00
Dion Hulse
e353179ce5 Bootstrap: Revert [38399] as it's broken /build/ and subsequently core.svn.wordpress.org.
The generated classmaps reference `/src/` files and operates in the assumption that the base directory is one level above `wp-settings.php`, which it isn't after our build processes are run.

See #36335


git-svn-id: https://develop.svn.wordpress.org/trunk@38402 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-27 14:36:42 +00:00
Scott Taylor
388690382c Bootstrap: Autoload classes using a Composer-generated PHP 5.2-compatible Autoloader.
* `wp-admin` and `wp-includes` are scanned for classes to autoload
* Several 3rd-party and Ryan McCue-shaped libraries are excluded when the classmap is generated, see `composer.json`: `autoload.exclude-from-classmap`
* `wp-vendor/autoload_52.php` is included at the top of `wp-settings.php` - no changes need to be made to unit tests to include the autoloader
* An avalanche of `require()` and `require_once()` calls that loaded class files have been removed from the codebase.

The following files have been added to `svn:ignore` - they are not 5.2-compatible and fail during pre-commit:
* src/wp-vendor/autoload.php
* src/wp-vendor/composer/autoload_real.php
* src/wp-vendor/composer/autoload_static.php
* src/wp-vendor/composer/ClassLoader.php

We favor these files instead:
* src/wp-vendor/autoload_52.php
* src/wp-vendor/composer/autoload_real_52.php
* src/wp-vendor/composer/ClassLoader52.php

When new PHP classes are added to the codebase, simply run `composer install` or `composer update` from the project root to update the autoloader.

The future is now.

See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38399 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-27 09:15:01 +00:00
Scott Taylor
aad8b9805e Load: remove class-feed.php (There is no class named Feed or WP_Feed, it just loads other classes) and, instead, move the require calls to the only place they are ever included: inside fetch_feed(). This simplifies the include path.
Tested with this feed in a widget: `http://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml`.

See #36335.


git-svn-id: https://develop.svn.wordpress.org/trunk@38374 602fd350-edb4-49c9-b593-d223f7449a82
2016-08-26 17:52:05 +00:00
Drew Jaynes
2c579e3909 Docs: Add an initial @since version to wp-includes/feed.php.
The file was introduced in 2.1.0 when it was moved from wp-includes/feed-functions.php in [3862].

See #32246. See #36295.


git-svn-id: https://develop.svn.wordpress.org/trunk@38056 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-13 17:03:54 +00:00
Drew Jaynes
194583a770 Docs: Apply inline @see tags to hooks referenced in DocBlocks in a variety of wp-includes/* files.
Applying these specially-crafted `@see` tags allows the Code Reference parser to recognize and link these elements as actions and filters.

See #36921.


git-svn-id: https://develop.svn.wordpress.org/trunk@37543 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-23 19:00:41 +00:00
Drew Jaynes
4fd2c46d89 Docs: Standardize filter docs in wp-includes/feed.php to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.


git-svn-id: https://develop.svn.wordpress.org/trunk@37516 602fd350-edb4-49c9-b593-d223f7449a82
2016-05-22 18:46:29 +00:00
John Blackbourn
b41fc5595b Feeds: Revert [36230] which removed the rss-http feed content type. Removing this means that any feeds which are using this feed content type are now being served as application/octet-stream instead of text/xml.
See #36620


git-svn-id: https://develop.svn.wordpress.org/trunk@37282 602fd350-edb4-49c9-b593-d223f7449a82
2016-04-21 18:56:37 +00:00
John Blackbourn
021401424b Docs: @param fixes for a variety of docblocks.
See #32246


git-svn-id: https://develop.svn.wordpress.org/trunk@36232 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-09 01:44:31 +00:00
John Blackbourn
5b2c1a52cc Feeds: Remove the rss-http feed type, unused since r32468.
See #15110


git-svn-id: https://develop.svn.wordpress.org/trunk@36230 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-09 01:19:31 +00:00
Dominik Schilling (ocean90)
707cc2ae9e Use correct placeholders for translator comments added in [35303].
See #31078.

git-svn-id: https://develop.svn.wordpress.org/trunk@35388 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-24 18:49:11 +00:00
Drew Jaynes
11f4d7bb68 Docs: Add translator comments for two _deprecated_argument() calls added to get_wp_title_rss() and wp_title_rss() in [35294].
See #31078. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@35303 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-20 19:19:37 +00:00
Drew Jaynes
e5ec034d8f Docs: Improve vague changelog entries for functions and hooks where arguments were deprecated in [35294].
See #31078. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@35297 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-20 18:09:06 +00:00
Konstantin Obenland
d625bd2428 Themes: Improve document title output.
Introduces more flexibility in filtering all parts of the document title,the
separator, and a way to short-circuit title generation. Plugins can now also
check for theme support and reliably filter the entire output. See #18548.
Deprecates `wp_title()`.

Fixes #31078.



git-svn-id: https://develop.svn.wordpress.org/trunk@35294 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-20 16:20:04 +00:00
Drew Jaynes
fea6142412 Docs: Make a minor adjustment to the description syntax for the optional $comment argument in the DocBlock for comment_link(), introduced in [34071].
See #33638. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34230 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-16 11:01:50 +00:00
Scott Taylor
dd55363884 Comments: comment_link() currently takes no arguments, yet get_comment_link() does. Allow comment_link() to optionally take the same arguments.
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34071 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-12 03:15:14 +00:00
Scott Taylor
23f2e79350 Correct the param docs for comment_guid() and get_comment_guid().
Props dimadin.
Fixes #32619.


git-svn-id: https://develop.svn.wordpress.org/trunk@33913 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-05 19:59:10 +00:00
Scott Taylor
60ba8b05e4 Introduce WP_Comment class to model/strongly-type rows from the comments database table. Inclusion of this class is a pre-req for some more general comment cleanup and sanity.
* Takes inspiration from `WP_Post` and adds sanity to comment caching. 
* Clarifies when the current global value for `$comment` is returned. The current implementation in `get_comment()` introduces side effects and an occasion stale global value for `$comment` when comment caches are cleaned.
* Strongly-types `@param` docs
* This class is marked `final` for now

Props wonderboymusic, nacin.

See #32619.


git-svn-id: https://develop.svn.wordpress.org/trunk@33891 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-03 18:16:35 +00:00
Helen Hou-Sandi
b9dd879f42 Site icon: Rearrange function parameters to avoid frequently passing empty values.
props obenland.
fixes #33325.


git-svn-id: https://develop.svn.wordpress.org/trunk@33605 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-10 20:14:35 +00:00
Konstantin Obenland
8c36e7b3c4 Feeds: Revert [32765] because of objections raised in #4575.
git-svn-id: https://develop.svn.wordpress.org/trunk@33281 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-15 19:57:47 +00:00
Drew Jaynes
8287ff9dbc Fix summaries for new feed functions added in 4.3.
* `get_last_build_date_feed()` [32765]
* `atom_site_icon()` [32994]
* `rss2_site_icon()` [32994]

See #32891.


git-svn-id: https://develop.svn.wordpress.org/trunk@33224 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-13 21:26:29 +00:00
Konstantin Obenland
ffa682bee4 Introducing Site Icon, favicon management for WordPress.
This v1 marries Jetpack's Site Icon module with the Media Modal, reusing code
from the Custom Header admin. For now, the core-provided icons will be limited
to a favicon, an iOS app icon, and a Windows tile icon, leaving `.ico` support
and additional icons to plugins to add.

Props obenland, tyxla, flixos90, jancbeck, markjaquith, scruffian.
See #16434.



git-svn-id: https://develop.svn.wordpress.org/trunk@32994 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-29 12:57:35 +00:00
Scott Taylor
9cef023a96 prep_atom_text_construct() and before_last_bar() should strictly check against false when using str(r)?pos().
Sidenote: there's a function named `before_last_bar`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32940 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-25 16:48:14 +00:00
Scott Taylor
646c19accf Make sure that all Gravatars are generated by get_avatar() or at least run through apply_filters( 'get_avatar', $avatar ) for the sake of extensibility.
Props miqrogroove, GlennM, SergeyBiryukov.
Fixes #22650.


git-svn-id: https://develop.svn.wordpress.org/trunk@32845 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-18 18:35:04 +00:00