WP Page Excerpt

Hand-crafting Excerpts for Pages got a lot easier in in WordPress 3+. Put this in your functions.php:

add_post_type_support( 'page', 'excerpt' );

And voilà, an Excerpt textarea should now show on your Edit Page screen (make sure “Excerpt” is checked in Edit Page»Screen Options). To extract Pages’ Excerpts…

Inside a WP loop (e.g., query_posts()), you can use the_excerpt() (or the_excerpt_rss()):

<?php query_posts( 'post_type=page' );?><br />
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?></p>
<h3><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
<p>	<?php the_excerpt(); ?><br />
	<?php endwhile; else: ?></p>
<p>Yer lame-ass Loop is Post-less.</p>
<p><?php endif; ?>

Outside the loop, get_pages() will git ‘er done:

<?php<br />
$pages = get_pages();<br />
foreach ( $pages as $page ) : 	?></p>
<h3><a href="<?php echo get_page_link($page->ID); ?>"><?php echo $page->post_title; ?></a></h3>
<p><?php echo $page->post_excerpt; ?></p>
<p><?php endforeach; ?>

Both the above output about the same HTML. To access a single Page’s Excerpt, get_page() already has a post_excerpt parameter:

<?php $n = 420; echo( get_page($n)->post_excerpt ) ?>

Note: you gotta pass a variable into the above function, else WP will freak. As decreed in the esteemed Codex:

“You must pass in a variable to the get_page function. If you pass in a value (e.g. get_page(123); ), WordPress will generate an error.”

Apparently a Page Excerpt panel was once part of WP’s past. Well, they’re back, baby.

via mfields.

Bookmark and Share
« | HV NEWS | »

Leave a comment:


(required) (will be hidden)

(Allowed tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> )