WordPress.org

Make WordPress Core

Opened 8 years ago

Closed 8 years ago

#7100 closed defect (bug) (fixed)

don't parse shortcodes in excerpts

Reported by: hailin Owned by:
Milestone: Priority: normal
Severity: normal Version:
Component: General Keywords:
Focuses: Cc:

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)

7100_strip_shortcodes.diff (1.3 KB) - added by hailin 8 years ago.
updated patch using shortcode_tags

Download all attachments as: .zip

Change History (6)

#1 @DD32
8 years ago

  • Milestone 2.7 deleted
  • Resolution set to duplicate
  • Status changed from new to closed

While this ticket is mainly [gallery] it applies to all shortcodes.

#6380

#2 @DD32
8 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 @hailin
8 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...

#4 @hailin
8 years ago

  • Resolution duplicate deleted
  • Status changed from closed to reopened

@hailin
8 years ago

updated patch using shortcode_tags

#5 @ryan
8 years ago

  • Resolution set to fixed
  • Status changed from reopened to closed

(In [8054]) Strip shortcodes when making excerpts. Props hailin. fixes #7100

Note: See TracTickets for help on using tickets.