Dion Hulse
2038a29352
Shortcodes: `=` is a reserved character in shortcode names, mark it as such.
...
This allows for shortcodes such as `[shortcode=attribute]` to work, which while never intentionally supported were widely used in the pre-shortcode days.
Props aaroncampbell.
Fixes #34939 for trunk.
Built from https://develop.svn.wordpress.org/trunk@36097
git-svn-id: http://core.svn.wordpress.org/trunk@36062 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-26 04:46:28 +00:00
Drew Jaynes
d5a9811f02
Docs: Add a missing summary, parameter, and return notations to the DocBlock for `strip_shortcode_tag()`.
...
Introduced in [18952].
See #32246 .
Built from https://develop.svn.wordpress.org/trunk@35982
git-svn-id: http://core.svn.wordpress.org/trunk@35947 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-12-16 23:23:26 +00:00
Sergey Biryukov
a7e305b06f
Use correct placeholders in translator comments added in [35542].
...
See #34249 .
Built from https://develop.svn.wordpress.org/trunk@35543
git-svn-id: http://core.svn.wordpress.org/trunk@35507 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-05 21:05:25 +00:00
Drew Jaynes
48f4b7cfc3
I18N: Add translator comments to three `_doing_it_wrong()` messages added for 4.3 and 4.4.
...
Also adds a full-stop to an invalid taxonomy message introduced in [34745] and later modified in [35428] for `wp_insert_post()`.
Props pavelevap.
Fixes #34249 .
Built from https://develop.svn.wordpress.org/trunk@35542
git-svn-id: http://core.svn.wordpress.org/trunk@35506 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-05 20:56:32 +00:00
Gary Pendergast
44fb83dc0b
Shortcodes: Tweak the error messages added in [34745].
...
See #34090 .
Built from https://develop.svn.wordpress.org/trunk@35428
git-svn-id: http://core.svn.wordpress.org/trunk@35392 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-29 10:32:26 +00:00
John Blackbourn
7b230cafab
Abstract the shortcode attribute parsing regex into its own function, update the JavaScript counterpart, and introduce a test to ensure they do not diverge again.
...
Fixes #34191
Props miqrogroove, johnbillion
Built from https://develop.svn.wordpress.org/trunk@34933
git-svn-id: http://core.svn.wordpress.org/trunk@34898 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-08 03:12:24 +00:00
Helen Hou-Sandí
cd3367d942
Shortcodes: Pass the name as context for `shortcode_atts_{$shortcode}`.
...
props mattheu.
fixes #34167 .
Built from https://develop.svn.wordpress.org/trunk@34868
git-svn-id: http://core.svn.wordpress.org/trunk@34833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 14:34:24 +00:00
Scott Taylor
7a0f8602f3
Shortcodes/Formatting: Add PCRE Performance Testing
...
* Move pattern from `wptexturize()` into a separate function.
* Move pattern from `wp_html_split()` into a separate function.
* Beautify code for `wp_html_split()`.
* Remove unnecessary instances of `/s` modifier in patterns that don't use dots.
* Add `tests/phpunit/data/formatting/whole-posts.php` for testing larger strings.
* Add function `benchmark_pcre_backtracking()`.
* Add tests for `wp_html_split()`.
* Add tests for `wptexturize()`.
* Add tests for `get_shortcode_regex()`.
Props miqrogroove.
Fixes #34121 .
Built from https://develop.svn.wordpress.org/trunk@34761
git-svn-id: http://core.svn.wordpress.org/trunk@34726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-02 04:26:25 +00:00
Scott Taylor
99347fd96e
Shortcodes: Fix PCRE performance bugs in `get_shortcode_regexp()` and related to `wptexturize()`, `do_shortcode()`, and `strip_shortcodes()`
...
Alters unit tests.
Props miqrogroove.
Fixes #33517 .
Built from https://develop.svn.wordpress.org/trunk@34747
git-svn-id: http://core.svn.wordpress.org/trunk@34712 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-01 18:05:25 +00:00
Scott Taylor
d8179a2a1f
Shortcodes: prevent registration of invalid shortcode names.
...
Adds unit tests.
Props miqrogroove.
Fixes #34090 .
Built from https://develop.svn.wordpress.org/trunk@34745
git-svn-id: http://core.svn.wordpress.org/trunk@34710 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-01 17:34:24 +00:00
Scott Taylor
82f244414e
Shortcodes: clarify the `@return` docs for `shortcode_parse_atts()`.
...
Props miqrogroove.
See #23307 .
Built from https://develop.svn.wordpress.org/trunk@34744
git-svn-id: http://core.svn.wordpress.org/trunk@34709 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-01 17:32:26 +00:00
Nikolay Bachiyski
3778cae8ec
Shortcodes: don't allow unclosed HTML elements in attributes
...
Built from https://develop.svn.wordpress.org/trunk@34134
git-svn-id: http://core.svn.wordpress.org/trunk@34102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-14 22:36:24 +00:00
Scott Taylor
ef87172270
`foreach` is a statement, not a function.
...
See #33491 .
Built from https://develop.svn.wordpress.org/trunk@33734
git-svn-id: http://core.svn.wordpress.org/trunk@33702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-25 20:28:22 +00:00
Dominik Schilling
96a6f0ac1f
Pinking shears.
...
Built from https://develop.svn.wordpress.org/trunk@33627
git-svn-id: http://core.svn.wordpress.org/trunk@33594 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-17 21:39:25 +00:00
Dominik Schilling
e9e88d0b4b
Shortcodes: Trim whitespace after sanitizing the shortcode output.
...
props Ankit K Gupta, obenland, miqrogroove.
fixes #33259 .
Built from https://develop.svn.wordpress.org/trunk@33600
git-svn-id: http://core.svn.wordpress.org/trunk@33567 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-09 20:49:25 +00:00
Dion Hulse
f8136f2ab2
Fix `do_shortcode('<[shortcode]')` edge case.
...
Props miqrogroove.
Merges [33499] trunk.
See #33116 .
Built from https://develop.svn.wordpress.org/trunk@33594
git-svn-id: http://core.svn.wordpress.org/trunk@33561 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-07 02:50:25 +00:00
Scott Taylor
15a7d98ce6
Protect newlines inside of `CDATA`. This was breaking things, notably inline JS that used comments for HTML standards compat.
...
* Tokenize newlines in `WP_Embed::autoembed()` before running `->autoembed_callback()`
* Tokenize newlines with placeholders in `wpautop()`
* Introduce `wp_html_split()` to DRY the RegEx from `wp_replace_in_html_tags()` and `do_shortcodes_in_html_tags()`
Adds unit tests.
Props miqrogroove, kitchin, azaozz.
Fixes #33106 .
Built from https://develop.svn.wordpress.org/trunk@33469
git-svn-id: http://core.svn.wordpress.org/trunk@33436 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-28 23:03:24 +00:00
Gary Pendergast
c3e0ed7e03
Shortcodes: Improve the reliablity of shortcodes inside HTML tags.
...
Props miqrogroove.
See #15694 .
Built from https://develop.svn.wordpress.org/trunk@33359
git-svn-id: http://core.svn.wordpress.org/trunk@33331 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-22 05:15:25 +00:00
John Blackbourn
bc745f81a9
Allow shortcode parameter names (attributes) to contain dashes.
...
Props aaroncampbell, tyxla, izem
Fixes #9405
Built from https://develop.svn.wordpress.org/trunk@33118
git-svn-id: http://core.svn.wordpress.org/trunk@33089 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-07 23:59:24 +00:00
Scott Taylor
0c866cfa79
Check `is_callable()` in `do_shortcode_tag()`, not `add_shortcode()`.
...
Add a `_doing_it_wrong()` in `do_shortcode_tag()` when `is_callable()` is `false`.
Props aaroncampbell.
See #32445 .
Built from https://develop.svn.wordpress.org/trunk@32867
git-svn-id: http://core.svn.wordpress.org/trunk@32838 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-19 21:33:25 +00:00
Scott Taylor
2bac335bdc
Add missing doc blocks to `shortcodes.php`.
...
See #32444 .
Built from https://develop.svn.wordpress.org/trunk@32624
git-svn-id: http://core.svn.wordpress.org/trunk@32594 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-27 19:39:25 +00:00
Dominik Schilling
64fc7294b6
Use HTTPS URLs for codex.wordpress.org.
...
see #27115 .
Built from https://develop.svn.wordpress.org/trunk@32116
git-svn-id: http://core.svn.wordpress.org/trunk@32095 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-12 21:29:32 +00:00
Drew Jaynes
e0b3db1e09
Remove a stray period introduced in [31242].
...
Props SergeyBiryukov.
See #31048 .
Built from https://develop.svn.wordpress.org/trunk@31245
git-svn-id: http://core.svn.wordpress.org/trunk@31226 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-19 08:47:24 +00:00
Drew Jaynes
3a0726d7b8
Add more complete documentation for parameters, globals, and return values to the DocBlocks for `remove_shortcode()`, `shortcode_exists()`, and `do_shortcode()`.
...
Props SergeyBiryukov.
Fixes #31048 .
Built from https://develop.svn.wordpress.org/trunk@31243
git-svn-id: http://core.svn.wordpress.org/trunk@31224 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-19 08:40:24 +00:00
Drew Jaynes
a8e2ae2117
Ensure both parameters and the return for `has_shortcode()` are fully documented.
...
Props cais, SergeyBiryukov
See #31048 .
Built from https://develop.svn.wordpress.org/trunk@31242
git-svn-id: http://core.svn.wordpress.org/trunk@31223 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-19 08:36:25 +00:00
Scott Taylor
fc843ce4d0
There are some random `add_action()` and `add_filter()` calls littered around some files in `wp-includes/`. These should be moved to `wp-includes/default-filters.php` with the rest of the registered hooks. It seems like this was the best practice for awhile and then we randomly stopped. This file loads way before any of the includes, so the hooks will be registered for any request that loads WordPress, even `SHORTINIT` - a lot of the hooks registered won't run anyways (that's already the case).
...
See #30947 .
Built from https://develop.svn.wordpress.org/trunk@31168
git-svn-id: http://core.svn.wordpress.org/trunk@31149 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-12 16:40:23 +00:00
Scott Taylor
4feecb922c
Use `&&` instead of `and` in the 3 places where `and` was used.
...
See #30799 .
Built from https://develop.svn.wordpress.org/trunk@31099
git-svn-id: http://core.svn.wordpress.org/trunk@31080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 21:12:22 +00:00
Drew Jaynes
3b6c9519a8
Ensure inline code is markdown-escaped as such, HTML tags are removed from summaries, and that code snippets in descriptions are properly indented.
...
Affects DocBlocks for the following core elements:
* Backtick-escape HTML tags in several argument descriptions for `wp_link_pages()`
* Remove an HTML tag from the summary for `prepend_attachment()`
* Backtick-escape inline code in the description for `get_extended()`
* Backtick-escape inline code in the description for `get_post_type_labels()`
* Various markdown formatting in the description for `add_rewrite_endpoint()`
* Markdown-indent a code snippet in the file header for wp-includes/shortcodes.php
* Markdown-indent code snippets in the description for `add_shortcode()
Props rarst.
See #30473 .
Built from https://develop.svn.wordpress.org/trunk@30545
git-svn-id: http://core.svn.wordpress.org/trunk@30534 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-24 06:15:24 +00:00
Drew Jaynes
f8657d5890
Remove redundant and erroneous `@uses` tag from most core inline documentation.
...
Per our inline documentation standards, no further use of the `@uses` tag is recommended as used and used-by relationships can be derived through other means. This removes most uses of the tag in core documentation, with remaining tags to be converted to `@global` or `@see` as they apply.
Fixes #30191 .
Built from https://develop.svn.wordpress.org/trunk@30105
git-svn-id: http://core.svn.wordpress.org/trunk@30105 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-30 01:05:24 +00:00
Scott Taylor
37a0c36d38
The joys of `wptexturize()`:
...
* Revert parts of [28773] and [28727] and [29748].
* Do not crash PHP. Make the shortcode quantifier possessive to avoid backtracks.
* Reduce backtracking in long HTML comments by 100x.
* Do not ignore unclosed HTML comments.
* Do not break unregistered shortcodes, e.g. `[hello attr="value"]`.
* Do not break HTML in shortcode attributes, e.g. `[hello attr="<"]`.
* Do not match for shortcodes when there is extra whitespace, e.g. `[ hello ]`.
* Add unit tests to show #12690 was not fully resolved.
* Tested PHP 5.2.4, 5.2.13, 5.4.32, and 5.5.8.
Adds/modifies unit tests.
Props miqrogroove.
See #29557 .
Built from https://develop.svn.wordpress.org/trunk@29781
git-svn-id: http://core.svn.wordpress.org/trunk@29553 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 04:07:15 +00:00
Scott Taylor
0a848a6171
`wptexturize()` improvements:
...
* Expand the `wptexturize()` RegEx to include the list of registered shortcodes.
* Avoid backtracking after `[` chars by not filtering params in registered shortcodes. This will cause escaped shortcodes and their params to become texturized if not registered.
* Registered shortcode params will never be texturized, even when escaped.
* Move all tests involving unregistered shortcodes to a new and improved unit.
* Update one test involving HTML within shortcode params.
Props miqrogroove.
See #29557 .
Built from https://develop.svn.wordpress.org/trunk@29748
git-svn-id: http://core.svn.wordpress.org/trunk@29520 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-17 15:14:17 +00:00
Scott Taylor
3ca4223a00
After [29197], use `! empty()` instead of `isset()`. Don't call `has_shortcode()` internally twice if it's true.
...
Props kovshenin.
Fixes #26343 .
Built from https://develop.svn.wordpress.org/trunk@29207
git-svn-id: http://core.svn.wordpress.org/trunk@28991 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-17 17:38:13 +00:00
Scott Taylor
1292ee0151
Make `has_shortcode()` recursive/work for nested shortcodes.
...
Adds unit test.
Props katzwebdesign.
Fixes #26343 .
Built from https://develop.svn.wordpress.org/trunk@29197
git-svn-id: http://core.svn.wordpress.org/trunk@28981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-16 22:05:17 +00:00
Scott Taylor
947aa04900
Update the inline docs for `add_shortcode()` to eliminate suggestion to use `extract()`.
...
See #22400 .
Built from https://develop.svn.wordpress.org/trunk@28413
git-svn-id: http://core.svn.wordpress.org/trunk@28240 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-15 03:28:15 +00:00
Andrew Nacin
5468377d3e
Bail early from shortcode functions if no delimiter is present.
...
This is a significant performance improvement for processing content without shortcodes, and only the slightest hit when content contains shortcodes (which must then undergo processing anyway). Performance results on the ticket.
props TobiasBg.
fixes #23855 .
Built from https://develop.svn.wordpress.org/trunk@27394
git-svn-id: http://core.svn.wordpress.org/trunk@27242 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 07:11:13 +00:00
Drew Jaynes
cd8cedc40d
First there were two, and now there are three -- in the @since versions that came before and that shall be. And so it will be, says nacin.
...
Props JustinSainton, SergeyBiryukov, DrewAPicture.
Fixes #26713 .
Built from https://develop.svn.wordpress.org/trunk@26868
git-svn-id: http://core.svn.wordpress.org/trunk@26754 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-24 18:57:12 +00:00
Andrew Nacin
70fd806759
Revert r25824:25875 from the core.svn.wordpress.org repository.
...
These commits were accidentally re-synced commits from develop.svn.wordpress.org due to a race condition. Thankfully, the history of this repository matters fairly little. It also happened only for trunk.
git-svn-id: http://core.svn.wordpress.org/trunk@25876 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-25 02:29:52 +00:00
Andrew Nacin
8ae8e01b67
Remove the old wp_auto_updates_maybe_update cron event. Schedule the new wp_maybe_auto_update event at 7 a.m. and 7 p.m. in the site's timezone.
...
see #27704 .
Built from https://develop.svn.wordpress.org/trunk@25825
git-svn-id: http://core.svn.wordpress.org/trunk@25825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:53:14 +00:00
Ryan Boren
b87d4b77e5
Pinking shears
...
Built from https://develop.svn.wordpress.org/trunk@25880
git-svn-id: http://core.svn.wordpress.org/trunk@25792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-23 14:38:10 +00:00
Sergey Biryukov
c227a3d78a
Inline documentation for hooks in wp-includes/shortcodes.php.
...
props natejacobs.
see #25229 .
Built from https://develop.svn.wordpress.org/trunk@25423
git-svn-id: http://core.svn.wordpress.org/trunk@25348 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-13 09:02:09 +00:00
Andrew Nacin
3139a0451e
Variables passed by reference do not need to be set first.
...
props kovshenin.
see #24222 .
git-svn-id: http://core.svn.wordpress.org/trunk@24129 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-29 14:48:31 +00:00
Mark Jaquith
53d12e91bc
Introduce [audio] and [video] shortcodes, and use MediaElement.js to play them.
...
props wonderboymusic. see #23282 .
git-svn-id: http://core.svn.wordpress.org/trunk@23729 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-16 05:25:44 +00:00
Andrew Nacin
c3a174becd
Add shortcode_atts_$shortcode filter for when the name of the shortcode is passed to shortcode_atts(). props coffee2code. fixes #15155 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@23626 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-06 20:07:40 +00:00
Jon Cave
df39c7be71
Update shortcode regular expression commentary. See #17657 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@22401 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-06 14:47:33 +00:00
Ryan Boren
3757d63f6b
Allow hyphens in shortcode names.
...
Props kovshenin, solarissmoke, aaroncampbell
fixes #17657
git-svn-id: http://core.svn.wordpress.org/trunk@22382 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-05 22:27:36 +00:00
Andrew Nacin
ab5878259e
Add a comment to get_shortcode_regex() mentioning its near clones elsewhere. see #21996 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@22005 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 01:16:31 +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
83b131f8e3
User lowercase true, false, null instead of uppercase. Props c3mdigital, mfields. fixes #16302
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@19687 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-05 20:50:54 +00:00
ryan
80351b789d
Avoid preg backtrack limit errors with large posts when processing shortcodes. Props mdawaffe. fixes #15600
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@18952 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-10-12 16:50:30 +00:00
duck_
2f51b9be0d
Fix typos in documentation (wp-includes/[i-z]). See #18560 .
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@18639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-09-05 19:08:15 +00:00