Twenty Thirteen project update, March 26, 2013

Our focus right now is on post formats integration, both structured (formats with post meta) and “normal” output for the other formats.

Priorities

  1. Work with Post Formats team to get the_video(), the_audio(), and the_image() functions into core, so we can avoid a ton of extra logic in Twenty Thirteen’s functions.php file to grab the first asset for a format. Making it easier for *any* theme to get the same data back and keep their template files simpler. Themes should not have to parse shortcodes or try to make something run through oEmded before display.
  2. Work with Post Formats team on post_formats_compat() functionality, improving Quote markup and filling in the gaps for other formats. Obenland is going to work on a patch for this.
  3. Image: we need clarification from 3.6 leads and Post Formats team on whether it is going to be structured or not (post meta) and it needs more work for the post-media functions (see 1 and 2 priorities above)
  4. Finalize each post format in Twenty Thirteen: what template HTML or PHP it needs, what it needs from core functionality to work correctly

By post format

Here’s a breakdown per format, per today’s discussion (IRC log).

  • Standard: good to go
  • Aside: we remove the title from the PHP template, added styling; non-structured
  • Chat: IHNIWIGOWTPF (see IRC log, hehe); non-structured
  • Gallery: we use a bit of PHP to remove default gallery styles, and we use a filter to change the image size to large on index view, then add a bit of CSS fanciness to change the first image to “bigger” size, 300×300 (single view is not changed other than to align the columns); non-structured
  • Link: structured, we use get_the_url() wrapped in our own fallback to output permalink if no URL is found
  • Image: right now it works OK without any changes, but the design calls for the image to be above the title, which means we need a way to pull out the first image, and have the_content() be output without that image; also filter content_width to 724 for this format (small issue with that reported in #23863). Seems like the best approach here is to use a custom image size to grab an exact 724 px wide image (unless it’s smaller that 724, in which case we grab the largest available). Ideal: a user uploads an image, adds it to the post content at exactly 724 from the Media editor, then the_image() outputs the exact HTML img tag + attributes.
  • Quote: structured; currently we rely on people using blockquote correctly in the editor, and style it with CSS; after Obenland’s patch to Quote markup (noted above in priority 2) we’ll add CSS support for the structured HTML markup, and leave in the basic styles in case someone uses post content anyway
  • Status: similar to Aside
  • Video: structured; we filter content_width to 724 to allow the video to be wider than the rest of the content area; needs the_video() to return the HTML output of first video and remove the same from the post content
  • Audio: structured, we’re leaning towards using the post format compat output instead of a custom structure in the theme; needs more testing but seems to be working OK as-is right now