WordCamp 2010 The WordPress Loop
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

WordCamp 2010 The WordPress Loop

on

  • 2,102 views

Learn about custom queries, template tags, and more!

Learn about custom queries, template tags, and more!

Statistics

Views

Total Views
2,102
Views on SlideShare
2,001
Embed Views
101

Actions

Likes
1
Downloads
8
Comments
0

2 Embeds 101

http://jakespurlock.com 98
http://wpslide.com 3

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />

WordCamp 2010 The WordPress Loop Presentation Transcript

  • 1. THE LOOP JAKE SPURLOCK @WHYISJAKE JAKESPURLOCK.COM
  • 2. DEVELOPERS IN THE HOUSE?
  • 3. OVERVIEW INTRODUCE THE LOOP BASIC TEMPLATE TAGS CUSTOM QUERIES MULTIPLE LOOPS PAGE CUSTOM POST TYPES
  • 4. GET STARTED... WHY NOT JUST LOOK AT CODE EH?
  • 5. SIMPLEST INDEX PAGE <?PHP IF (HAVE_POSTS()) : WHILE (HAVE_POSTS()) : THE_POST(); THE_CONTENT(); ENDWHILE; ENDIF; ?>
  • 6. TEMPLATE TAGS .:THE BREAD AND BUTTER OF THEME DESIGNERS:.
  • 7. TEMPLATE TAGS THE_CONTENT() THE_META(); THE_TITLE() THE_ID() THE_PERMALINK() THE_POST_THUMBNAIL() THE_CATEGORY() THE_AUTHOR() THE_TAGS() THE_SHORTLINK() THE_DATE() EDIT_POST_LINK() CODEX.WORDPRESS.ORG/TEMPLATE_TAGS THE_EXCERPT()
  • 8. CUSTOM QUERIES
  • 9. QUERY_POSTS VS. GET_POSTS
  • 10. QUERY_POSTS WHEN YOU WANT TO CHANGE THE MAIN LOOP EXCLUDE CATEGORIES FROM MAIN LOOP SHOW POSTS FROM ONLY ONE CATEGORY.
  • 11. IMPORTANT NOTE THE QUERY_POSTS FUNCTION IS INTENDED TO BE USED TO MODIFY THE MAIN PAGE LOOP ONLY. IT IS NOT INTENDED AS A MEANS TO CREATE SECONDARY LOOPS ON THE PAGE. IF YOU WANT TO CREATE SEPARATE LOOPS OUTSIDE OF THE MAIN ONE, YOU SHOULD USE GET_POSTS() INSTEAD. USE OF QUERY_POSTS ON LOOPS OTHER THAN THE MAIN ONE CAN RESULT IN YOUR MAIN LOOP BECOMING INCORRECT AND POSSIBLY DISPLAYING THINGS THAT YOU WERE NOT EXPECTING. THE QUERY_POSTS FUNCTION OVERRIDES AND REPLACES THE MAIN QUERY FOR THE PAGE. TO SAVE YOUR SANITY, DO NOT USE IT FOR ANY OTHER PURPOSE.
  • 12. <?php //The
Query query_posts('posts_per_page=5'); //The
Loop if
(
have_posts()
)
:
while
(
have_posts()
)
:
 the_post(); 
.. endwhile;
else: 
.. endif; //Reset
Query wp_reset_query(); ?>
  • 13. CUSTOM POST TYPES?
  • 14. QUERY_POSTS WITH CUSTOM POST TYPES QUERY_POSTS( 'POST_TYPE=NAME 0F POST TYPE'); QUERY_POSTS(ARRAY('POST_TYPE' => ARRAY('POST', 'MOVIES')));
  • 15. PLUGIN? ADD_FILTER( 'PRE_GET_POSTS', 'MY_GET_POSTS' ); FUNCTION MY_GET_POSTS( $QUERY ) { ! IF ( IS_HOME() && FALSE == $QUERY- >QUERY_VARS['SUPPRESS_FILTERS'] ) ! ! $QUERY->SET( 'POST_TYPE', ARRAY( 'POST', 'PAGE', 'ALBUM', 'MOVIE', 'QUOTE', 'ATTACHMENT' ) ); ! RETURN $QUERY; } VIA
JUSTIN
TADLOCK
  • 16. THE LOOP JAKE SPURLOCK @WHYISJAKE JAKESPURLOCK.COM