Commit Graph

109 Commits

Author SHA1 Message Date
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
markjaquith
e0872e840c Make it obvious that do_shortcode_tag passes the tag as the third parameter. plus code spacing cleanup.
git-svn-id: http://svn.automattic.com/wordpress/trunk@12750 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-17 22:51:15 +00:00
markjaquith
f4ae37b9f1 Do not destroy characters surrounding shortcodes in strip_shortcodes(). fixes #10326
git-svn-id: http://svn.automattic.com/wordpress/trunk@12206 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-11-18 08:12:05 +00:00
ryan
e8b6fe7347 Trim trailing whitespace
git-svn-id: http://svn.automattic.com/wordpress/trunk@10810 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-18 02:43:45 +00:00
westi
56436d1ffc Fix regression in shortcode behaviour. Fixes #9238 props tellyworth.
git-svn-id: http://svn.automattic.com/wordpress/trunk@10658 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-02-27 17:01:59 +00:00
westi
e5003996e3 Introduce a simple mechanism for escaping shortcodes by doubling the [[]]. Fixes #6518 props tellyworth.
git-svn-id: http://svn.automattic.com/wordpress/trunk@10576 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-02-15 16:01:14 +00:00
ryan
e02f178aa0 Pass tag name when using shortcodes. Props Viper007Bond. fixes #6606
git-svn-id: http://svn.automattic.com/wordpress/trunk@8613 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-08-11 04:00:33 +00:00
ryan
35b18e5034 Trailing whitespace cleanup
git-svn-id: http://svn.automattic.com/wordpress/trunk@8600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-08-09 05:36:14 +00:00
ryan
f0935b49ae phpdoc for shortcodes from jacobsantos. fixes #7184
git-svn-id: http://svn.automattic.com/wordpress/trunk@8196 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-06-26 15:55:33 +00:00
ryan
570cb5374c Strip shortcodes when making excerpts. Props hailin. fixes #7100
git-svn-id: http://svn.automattic.com/wordpress/trunk@8054 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-06-05 20:11:38 +00:00
markjaquith
ca6bd9ebd5 Don't wpautop()-wrap shortcodes that stand alone. fixes #6444 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@7815 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-04-25 00:45:31 +00:00
markjaquith
6930439dfe Revert [7700] from trunk in preparation for a different #6444 solution
git-svn-id: http://svn.automattic.com/wordpress/trunk@7814 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-04-25 00:43:44 +00:00
ryan
c77c239754 Normalize whitespace when parsing shortcodes. Props azaozz. fixes #6562 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@7769 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-04-22 20:54:51 +00:00
markjaquith
9df4077f95 Allow shortcodes to run before or after wpautop()/texturize() formatting. Default to before for WP 2.5 compat. Props AaronCampbell
git-svn-id: http://svn.automattic.com/wordpress/trunk@7699 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-04-16 21:07:04 +00:00
markjaquith
359fb2aced Parse shortcodes AFTER wpautop() to avoid mangling. Have wptexturize() ignore shortcodes so quotes stay straight. fixes #6444 for trunk
git-svn-id: http://svn.automattic.com/wordpress/trunk@7581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-03-31 07:56:58 +00:00
matt
a419491688 Shortcode quotes were getting texturized, which can cause a bit of chaos. Fixes #6436.
git-svn-id: http://svn.automattic.com/wordpress/trunk@7561 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-03-28 15:23:09 +00:00
ryan
193b20c03f Gallery display enhancements from tellyworth. fixes #6368
git-svn-id: http://svn.automattic.com/wordpress/trunk@7496 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-03-24 02:57:19 +00:00
ryan
c506a8173c Fix insert, gallery, sizing, type queries, errors, thumbs, type fallback. Props andy. see #5911
git-svn-id: http://svn.automattic.com/wordpress/trunk@7172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-03-06 19:48:54 +00:00
ryan
4bbe72cd41 shortcodes should not require var=val format. Props andy. fixes #5892
git-svn-id: http://svn.automattic.com/wordpress/trunk@6939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-02-20 16:47:50 +00:00
ryan
3e9b80d5ef Support positional attributes in shortcodes. Props tellyworth. fixes #5914
git-svn-id: http://svn.automattic.com/wordpress/trunk@6911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-02-19 06:52:30 +00:00
ryan
9900f35dd3 Fix floated left gallery layout breaks. Prop s nbachiyski. fixes #5828
git-svn-id: http://svn.automattic.com/wordpress/trunk@6801 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-02-13 06:35:21 +00:00
matt
3b82a74e29 Blow out mem limit, slightly larger thumbnails.
git-svn-id: http://svn.automattic.com/wordpress/trunk@6786 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-02-11 09:02:44 +00:00
ryan
d88983793b Trailing whitespace cleanup
git-svn-id: http://svn.automattic.com/wordpress/trunk@6726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-02-05 06:47:27 +00:00
matt
f529123061 First pass at async upload, multi-upload, and gallery feature. Modified names from patch. Hat tip: tellyworth, skeltoac.
git-svn-id: http://svn.automattic.com/wordpress/trunk@6659 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2008-01-25 19:21:11 +00:00