Commit Graph

44 Commits

Author SHA1 Message Date
Sergey Biryukov b80ce60f70 Coding Standards: Use pre-increment/decrement for stand-alone statements.
Note: This is enforced by WPCS 3.0.0:

1. There should be no space between an increment/decrement operator and the variable it applies to.
2. Pre-increment/decrement should be favoured over post-increment/decrement for stand-alone statements. “Pre” will in/decrement and then return, “post” will return and then in/decrement. Using the “pre” version is slightly more performant and can prevent future bugs when code gets moved around.

References:
* [https://developer.wordpress.org/coding-standards/wordpress-coding-standards/php/#increment-decrement-operators WordPress PHP Coding Standards: Increment/decrement operators]
* [https://github.com/WordPress/WordPress-Coding-Standards/pull/2130 WPCS: PR #2130 Core: add sniffs to check formatting of increment/decrement operators]

Props jrf.
See #59161, #58831.
Built from https://develop.svn.wordpress.org/trunk@56549


git-svn-id: http://core.svn.wordpress.org/trunk@56061 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-09-09 09:28:26 +00:00
Sergey Biryukov 3d1140c898 Coding Standards: Use strict comparison in `wp-admin/includes/menu.php`.
Includes minor code layout fixes for better readability.

Follow-up to [3536], [4093], [9578], [11092], [18034].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@55873


git-svn-id: http://core.svn.wordpress.org/trunk@55385 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-05-31 14:53:26 +00:00
Sergey Biryukov 2ec23a82ed Code Modernization: Replace usage of `strpos()` with `str_starts_with()`.
`str_starts_with()` was introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) begins with the given substring (needle).

WordPress core includes a polyfill for `str_starts_with()` on PHP < 8.0 as of WordPress 5.9.

This commit replaces `0 === strpos( ... )` with `str_starts_with()` in core files, making the code more readable and consistent, as well as improving performance.

While `strpos()` is slightly faster than the polyfill on PHP < 8.0, `str_starts_with()` is noticeably faster on PHP 8.0+, as it is optimized to avoid unnecessarily searching along the whole haystack if it does not find the needle.

Follow-up to [52039], [52040], [52326].

Props spacedmonkey, costdev, sabernhardt, mukesh27, desrosj, jorbin, TobiasBg, ayeshrajans, lgadzhev, SergeyBiryukov.
Fixes #58012.
Built from https://develop.svn.wordpress.org/trunk@55703


git-svn-id: http://core.svn.wordpress.org/trunk@55215 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-05-02 15:45:22 +00:00
Sergey Biryukov bdfe3d5a46 Coding Standards: Use strict comparison where `count()` is involved.
Follow-up to [1636], [6974], [8114], [10322], [13326], [14760], [18006], [18541], [19743], [23249], [24115], [33359].

Props aristath, poena, afercia, SergeyBiryukov.
See #57839.
Built from https://develop.svn.wordpress.org/trunk@55642


git-svn-id: http://core.svn.wordpress.org/trunk@55154 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-04-10 12:56:21 +00:00
Sergey Biryukov 8a6d7ea5ac Coding Standards: Correct the `$items_count` variable in `add_menu_classes()`.
Follow-up to [53195].

See #54728.
Built from https://develop.svn.wordpress.org/trunk@53196


git-svn-id: http://core.svn.wordpress.org/trunk@52785 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2022-04-17 14:44:07 +00:00
Sergey Biryukov b32080c332 Coding Standards: Use more descriptive variable names in `add_menu_classes()`.
Follow-up to [9578], [53193], [53194].

See #54728.
Built from https://develop.svn.wordpress.org/trunk@53195


git-svn-id: http://core.svn.wordpress.org/trunk@52784 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2022-04-17 14:41:08 +00:00
Sergey Biryukov a30a1efac4 Docs: Add missing documentation for `add_cssclass()` and `add_menu_classes()`.
Follow-up to [9578], [53193].

See #54729.
Built from https://develop.svn.wordpress.org/trunk@53194


git-svn-id: http://core.svn.wordpress.org/trunk@52783 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2022-04-17 14:30:13 +00:00
Sergey Biryukov f6b7a1fd7a Code Modernization: Rename parameters that use reserved keywords in `wp-admin/includes/menu.php`.
While using reserved PHP keywords as parameter name labels is allowed, in the context of function calls using named parameters in PHP 8.0+, this will easily lead to confusion. To avoid that, it is recommended not to use reserved keywords as function parameter names.

This commit:
* Renames the `$class` parameter to `$classes` in `add_cssclass()`.
* Renames the `$add` parameter to `$class_to_add` for clarity.
* Includes minor code layout changes for better readability. 

Follow-up to [52946], [52996], [52997], [52998], [53003], [53014], [53029], [53039], [53116], [53117], [53137], [53174], [53184], [53185], [53192].

Props jrf, aristath, poena, justinahinon, SergeyBiryukov.
See #55327.
Built from https://develop.svn.wordpress.org/trunk@53193


git-svn-id: http://core.svn.wordpress.org/trunk@52782 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2022-04-17 14:10:07 +00:00
Sergey Biryukov b9751d4efe Coding Standards: Use strict comparison for `count()` calls.
See #49542.
Built from https://develop.svn.wordpress.org/trunk@47848


git-svn-id: http://core.svn.wordpress.org/trunk@47624 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-05-23 11:38:08 +00:00
Sergey Biryukov 7932193708 Coding Standards: Use strict comparison where static strings are involved.
This reduces the number of `WordPress.PHP.StrictComparisons.LooseComparison` issues in half, from 1897 to 890.

Includes minor code layout fixes for better readability.

See #49542.
Built from https://develop.svn.wordpress.org/trunk@47808


git-svn-id: http://core.svn.wordpress.org/trunk@47584 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-05-16 18:42:12 +00:00
Sergey Biryukov 053a9cd5b8 Docs: Improve comments in some `wp-admin` files per the documentation standards.
Props passoniate.
Fixes #49215, #49216.
Built from https://develop.svn.wordpress.org/trunk@47084


git-svn-id: http://core.svn.wordpress.org/trunk@46884 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-01-18 00:54:04 +00:00
Gary Pendergast cf3fa9f7c8 Coding Standards: Fix the `Squiz.PHP.DisallowMultipleAssignments` violations in `wp-admin`.
See #47632.


Built from https://develop.svn.wordpress.org/trunk@45583


git-svn-id: http://core.svn.wordpress.org/trunk@45394 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-07-01 12:52:01 +00:00
Gary Pendergast aaf99e6913 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.


Built from https://develop.svn.wordpress.org/trunk@42343


git-svn-id: http://core.svn.wordpress.org/trunk@42172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-11-30 23:11:00 +00:00
Dominik Schilling 25e66e4f1e Text Changes: Unify permission error messages.
The new format looks like "Sorry, you are not allowed to <action>.". This provides a consistent experience for all error messages related to missing permissions. It also reduces the number of similar strings and allows translators to provide a consistent style in their language.

Props ramiy, Presskopp.
Fixes #34521.
Built from https://develop.svn.wordpress.org/trunk@37914


git-svn-id: http://core.svn.wordpress.org/trunk@37855 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-29 15:16:29 +00:00
Drew Jaynes c3055cc190 Docs: Standardize hook docs in wp-admin/* to use third-person singular verbs per the inline documentation standards for PHP.
See #36913.

Built from https://develop.svn.wordpress.org/trunk@37488


git-svn-id: http://core.svn.wordpress.org/trunk@37456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-22 18:01:30 +00:00
Scott Taylor 70689237f3 Admin Menu: after [34861], prevent adjacent separators.
Props johnjamesjacoby.
Fixes #24104.

Built from https://develop.svn.wordpress.org/trunk@35416


git-svn-id: http://core.svn.wordpress.org/trunk@35380 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-28 18:06:24 +00:00
Drew Jaynes f60bd8d827 Docs: Wrap a couple of hook name references in inline `@see` tags in the hook docs for `custom_menu_order` and `menu_order`.
Inline `@see` tags in the context of hooks are parsed as links to hook pages in the Code Reference.

See #32246.

Built from https://develop.svn.wordpress.org/trunk@35027


git-svn-id: http://core.svn.wordpress.org/trunk@34992 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-12 03:39:26 +00:00
Scott Taylor c5475fbfc2 Admin Menu: remove duplicated separators, and use `strpos()` (instead of `strcmp()`) when determining if the separator CSS class is present.
Props rilwis, chriscct7.
Fixes #24104.

Built from https://develop.svn.wordpress.org/trunk@34861


git-svn-id: http://core.svn.wordpress.org/trunk@34826 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 13:46:25 +00:00
Scott Taylor d2a00338f6 Don't loosely compare functions that return `bool` against a literal `bool`.
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32730


git-svn-id: http://core.svn.wordpress.org/trunk@32701 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-12 17:19:27 +00:00
Scott Taylor b3e0cfd25d Add (more) missing doc blocks to `wp-admin/includes/*`.
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32655


git-svn-id: http://core.svn.wordpress.org/trunk@32625 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-29 21:17:27 +00:00
Scott Taylor b56b9b3e5c Add `@global` annotations for `wp-admin/*`.
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32642


git-svn-id: http://core.svn.wordpress.org/trunk@32612 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-28 21:41:30 +00:00
Scott Taylor bce851dcf2 Replace `array_shift()` with `reset()` where appropriate for performance.
Props SergeyBiryukov.
Fixes #31259.

Built from https://develop.svn.wordpress.org/trunk@31829


git-svn-id: http://core.svn.wordpress.org/trunk@31811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-19 03:56:27 +00:00
Sergey Biryukov 5ac0568ee3 Switch to a 403 response code in places where it is more appropriate than a 500 due to permissions errors.
props tomdxw.
fixes #30927.
Built from https://develop.svn.wordpress.org/trunk@31300


git-svn-id: http://core.svn.wordpress.org/trunk@31281 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-29 21:15:22 +00:00
Drew Jaynes 097dc8ee15 Fix syntax for single- and multi-line comments in wp-admin-directory files.
See #28931.

Built from https://develop.svn.wordpress.org/trunk@29206


git-svn-id: http://core.svn.wordpress.org/trunk@28990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-17 09:14:16 +00:00
Scott Taylor 2f513d3320 Fix some `hackificator` odds and ends in `wp-admin`:
* `wp-activate.php` and `wp-admin/themes.php` don't need the closing PHP tag
* Switch single quotes for HTML attribute values to double in a few places
* Convert `include_once file.php` syntax to `include_once( 'file.php' )`
* Add access modifiers to methods/members in: `_WP_List_Table_Compat`, `Walker_Nav_Menu_Edit`, `Walker_Nav_Menu_Checklist`, `WP_Screen`, `Walker_Category_Checklist`
* `edit_user()` doesn't need to import the `$wpdb` global
* `wp_list_widgets()` doesn't need to import the `$sidebars_widgets` global
* switch/endswitch syntax is not supported in Hack
* A `<ul>` in `wp-admin/users.php` is unclosed

See #27881.

Built from https://develop.svn.wordpress.org/trunk@28500


git-svn-id: http://core.svn.wordpress.org/trunk@28326 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-19 05:04:16 +00:00
Drew Jaynes b4903834cf Remove some debug cruft accidentally committed in [27670].
See #27430.

Built from https://develop.svn.wordpress.org/trunk@27671


git-svn-id: http://core.svn.wordpress.org/trunk@27514 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-24 02:38:17 +00:00
Drew Jaynes 1a0881f341 Inline documentation for hooks in wp-admin/includes/menu.php.
Also fixes syntax for a few unrelated multi-line comments in the file.

Props kpdesign for some minor cleanup.
Fixes #27430.

Built from https://develop.svn.wordpress.org/trunk@27670


git-svn-id: http://core.svn.wordpress.org/trunk@27513 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-24 02:35:14 +00:00
Mark Jaquith 1b84d2140a Prevent an offset error if the first menu item is a separator.
props phill_brown. fixes #23182

git-svn-id: http://core.svn.wordpress.org/trunk@24455 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-20 16:45:45 +00:00
Andrew Nacin b11654ce74 Revert [23871] - Customize should be added to the menu, but not hacked in as first. see #21413.
git-svn-id: http://core.svn.wordpress.org/trunk@24048 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-22 19:33:39 +00:00
Mark Jaquith 8c4aeb9188 Add "Customize" as first item under Appearance menu.
fixes #21413. props ryanhellyer, obenland, DrewAPicture

git-svn-id: http://core.svn.wordpress.org/trunk@23871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 20:39:54 +00:00
ryan e3b46b25d3 Lose EOF ?>. Clean up EOF newlines. fixes #12307
git-svn-id: http://svn.automattic.com/wordpress/trunk@19712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-08 17:01:11 +00:00
ryan e261ac43e7 Avoid 'Only variables should be passed by reference' warnings. Props SergeyBiryukov. see #18975
git-svn-id: http://svn.automattic.com/wordpress/trunk@19072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-27 20:00:09 +00:00
ryan 6623ea4b4a Avoid pass by ref warning. Props arena. see #18975
git-svn-id: http://svn.automattic.com/wordpress/trunk@18997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-18 20:38:18 +00:00
ryan 9a1be60235 Avoid notice with empty menu. Props ansimation, SergeyBiryukov. fixes #18085
git-svn-id: http://svn.automattic.com/wordpress/trunk@18740 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-21 20:17:22 +00:00
ryan 538658c4de Use array_pop( array_keys() ) instead of end() to find the end of the array. end() finds that last item added, which is not reliable with plugins that add items to the end and then sort them up with custom_menu_order. see #17629
git-svn-id: http://svn.automattic.com/wordpress/trunk@18109 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-01 21:27:42 +00:00
ryan 9f677a0847 Use wp-menu-separator after Settings and before the first plugin top-level. Remove trailing separators. fixes #17629
git-svn-id: http://svn.automattic.com/wordpress/trunk@18089 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-06-01 14:41:43 +00:00
ryan 3fc5956921 s/seperator/separator/. Props brandonburke. fixes #17610
git-svn-id: http://svn.automattic.com/wordpress/trunk@18084 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-31 19:58:36 +00:00
ryan e68292421d Fix notices. Props ocean90. fixes #17528
git-svn-id: http://svn.automattic.com/wordpress/trunk@18038 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-25 16:46:40 +00:00
ryan ae8f4a2a80 If there is only one submenu and it is has same destination as the parent, remove the submenu. fixes #17528
git-svn-id: http://svn.automattic.com/wordpress/trunk@18034 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-05-25 16:05:52 +00:00
ryan a216b1ed8f Fix undefined offset warnings on pages the current user does not have perms for. Props wpdavis. fixes #15469
git-svn-id: http://svn.automattic.com/wordpress/trunk@16471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-11-18 19:55:05 +00:00
ryan 9c31fd7c70 First pass of user admin. Network admin and screen cleanups. see #14696
git-svn-id: http://svn.automattic.com/wordpress/trunk@15746 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-07 19:34:18 +00:00
ryan 2a7220b15a Revert [15717]; it had extra bits in it
git-svn-id: http://svn.automattic.com/wordpress/trunk@15718 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-04 19:28:31 +00:00
ryan d78d29dfc4 Fix user edit urls for network admin
git-svn-id: http://svn.automattic.com/wordpress/trunk@15717 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-10-04 19:26:40 +00:00
ryan 21e3f0f7fa Network Admin, first pass. see #14435
git-svn-id: http://svn.automattic.com/wordpress/trunk@15481 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-07-30 20:34:54 +00:00