#7100 closed defect (bug) (fixed)
don't parse shortcodes in excerpts
| Reported by: | hailin | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | 2.6 |
| Component: | General | Version: | |
| Severity: | normal | Keywords: | |
| Cc: | Focuses: |
Description
some themes display excerpts by calling the_excerpt(), which calls get_the_excerpt, then if there is no original excerpt, call apply_filters('get_the_excerpt', $output). Eventually wp_trim_excerpt() is called, and apply_filters('the_content', $text). The issue is that the_content filter parses shortcode such as [video ..] or [audio ..], and the result is truncated to 55 words, producing ugly output
<eagleclaw2> I am proposing not to parse, nor to display, shortcode in wp_trim_excerpt. But then we need to enumerate and skip every type of shortcode ... not pretty..
<rboren> eagleclaw2: Temporarily remove shortcode from the_content filter for wp_trim_excerpt()?
<rboren> That would leave use with raw shortcodes.
<rboren> But, we might need to write strip_shortcodes() at some point.
<eagleclaw2> you mean to strip all the shortcodes, given a raw post ?
<rboren> Something analogous to strip_tags() to be used in similar situations.
<rboren> Just wondering out loud. :-)
<eagleclaw2> agreed. let me attemp to write strip_shortcodes()
Attachments (1)
Change History (7)
#2
@
18 years ago
Hm.. Actually.. I'm not sure i should've closed this so fast.
The other has mainly gone in the direction of an alternate idea of trimming first and then parsing the shortcodes..
#3
@
18 years ago
DD32:
I've tried to enumerated all shortcodes here and remove them from raw post content.
The function now is useful in producing excerpts, it may be useful in other contexts as well...
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)
While this ticket is mainly [gallery] it applies to all shortcodes.
#6380