Create and Use WordPress Template Parts
A WordPress template part is very similar to the Header, Footer, and Sidebar templates except you can branch out and create any number of template parts to call into your WordPress theme to provide specific functions, such as displaying posts from a specific category or displaying a gallery of photos you’ve uploaded to your website.
The get_header, get_footer, and get_sidebar functions allow for code that was once duplicated in many of the template files to be placed in a single file and loaded using a standard process. The purpose of template parts is to offer a new standardized function that can be used to load sections of code specific to an individual theme.
Using the concept of template parts, sections of code that add a specialized section of header widgets or display a block of ads can be placed in individual files and easily loaded as a template part.
Template parts are loaded via the get_template_part function. The get_template_part function accepts two parameters:
Slug: The slug parameter is required and describes the generic type of template part to be loaded, such as loop.
Name: The name parameter is optional and selects a specialized template part, such as post.
A call to get_template_part with just the slug parameter tries to load a template file with the slug.php filename. Thus, a call to get_template_part('loop') tries to load loop.php. And a call to get_template_part('header' ,'widgets') tries to load header-widgets.php. Slug refers to the name of the template file, minus the .php extension, because WordPress already assumes that it’s a PHP file.
A call to get_template_part with both the slug and name parameters tries to load a template file with a slug-name.php filename. If a template file with a slug-name.php filename doesn't exist, WordPress tries to load a template file with a slug.php filename.
Thus, a call to get_template_part('loop', 'post') first tries to load loop-post.php followed by loop.php if loop-post.php doesn't exist. A call to get_template_part('header-widgets', 'post') first tries to load header-widgets-post.php followed by header-widgets.php if header-widgets-post.php doesn't exist.
The Twenty Ten theme offers a good example of the template part feature in use; it uses a loop template part to allow The Loop to be pulled into individual template files.
Twenty Ten's index.php template file shows a template part for The Loop in action:
<?php get_header(); ?>
<div id="container">
<div id="content" role="main">
<?php get_template_part('loop', 'index'); ?>
</div>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Loading The Loop by using a template part, Twenty Ten cleans up the index.php code considerably when compared to other themes, but the true benefits are the improvements to theme development.
Twenty Ten's index.php template file calls for a template part with a slug of loop and an index. Because Twenty Ten doesn't supply a loop-index.php file, loop.php is used. This allows a child theme to supply a loop-index.php file to customize just The Loop for index.php.
A child theme can do this without supplying a customized index.php file because of Twenty Ten's good use of template parts and both parameters (slug and name) of the get_template_part function.
With Twenty Ten’s code for The Loop, header, sidebar, and footer placed into separate files, the template files become much easier to customize for specific uses. You can see the benefit of template parts by comparing the page.php and onecolumn-page.php template files. This is the page.php listing:
<?php get_header(); ?>
<div id="container">
<div id="content" role="main">
<?php get_template_part('loop', 'page'); ?>
</div>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
This is the onecolumn-page.php listing:
/* Template Name: One column, no sidebar */
<?php get_header(); ?>
<div id="container" class=one-column>
<div id="content" role="main">
<?php get_template_part('loop', 'page'); ?>
</div>
</div>
<?php get_footer(); ?>
Other than onecolumn-page.php having the Template Name comment at the top, which allows it to be used as a Page template, the only differences are that page.php has the get_sidebar function call and onecolumn-page.php adds a one-column class to the container div. With just these modifications and a few styling rules added for the one-column class in the CSS (style.css), your theme has a Page template without a sidebar.
Before template parts, the full Loop code, which can have up to ten lines of code (or more), would be duplicated in the page.php and onecolumn-page.php files. This means that a modification to the page.php file's Loop code would also require the same modification to the onecolumn-page.php file.
Repeatedly making the same modifications would quickly become tiring, and each modification would increase the chance of making mistakes. Using a template part means that the modifications to the Loop needs to be made only once so it then is applied to all templates using the Loop code via the get_template_part(); function. This cuts down on your development time, overall.

Blogging & Social Networking Glossary
archive
1. (noun) A list of previous blog posts, in chronological order. 2. (verb) To place files or blog posts in a safer place (on DVD or another server) for longer-term or backup storage.

Blogging & Social Networking Glossary
attribute
Used in an HTML tag to give an instruction to a Web browser. For example, in This link goes to <a href="http://www.google.com">Google</a>, the <a> tag gets an attribute (href) and a value ("http://www.google.com") to go along with the basic tag. In this case, the attribute indicates to the browser that what comes next is a hypertext reference — in this case, a Web page.

Blogging & Social Networking Glossary
blacklist
An often-centralized list of e-mail addresses, URLs, and IP addresses used by spammers that are then forbidden in any blog post on your blog. With an up-to-date blacklist, a lot of spam is stopped before it becomes a comment.

Blogging & Social Networking Glossary
block
To stop all contact with a MySpace user. He can’t comment on your blog page or send you any message that you actually receive.

Blogging & Social Networking Glossary
blog
A combination of the words Web and log. Bloggers (individuals, groups, or businesses) post a chronological log of information. Content is determined entirely by the author(s) of the blog; many are personal journals.

Blogging & Social Networking Glossary
blog post
An entry in a blog, possibly containing text, images, and other media.

Blogging & Social Networking Glossary
blogger
The author of a blog.

Blogging & Social Networking Glossary
blogging policy
Outlines what you’re allowed to post in your blog.

Blogging & Social Networking Glossary
blogging software
Technology that enables you to blog. Can be either hosted or nonhosted.

Blogging & Social Networking Glossary
blogroll
A collection of links used or recommended by a blogger.

Blogging & Social Networking Glossary
cookie
A short piece of computer code, stored on your computer, that enables Web sites to remember certain settings and information the next time you visit that site.

Blogging & Social Networking Glossary
Dashboard
A kind of control panel in Blogger that shows you the blogs you’ve set up, giving you access posting, using help resources, or even creating another blog.

Blogging & Social Networking Glossary
definition list
A type of HTML list that gives a term and then its definition and has built-in spacing to lay out those elements properly.

Blogging & Social Networking Glossary
disk space
Amount of room available on your hard drive.

Blogging & Social Networking Glossary
domain
A domain is the address, or main URL, that people type in the browser to get to your Web site. The domain name you choose can’t be used by anyone else.

Blogging & Social Networking Glossary
domain registrar
A service that enables you to register a domain name.

Blogging & Social Networking Glossary
entry
An single posting in a blog containing text, images, or other media, or any combination of those things.

Blogging & Social Networking Glossary
Facebook
A social-networking service that enables you to keep in contact with families and friends via the Web.

Blogging & Social Networking Glossary
Flickr
A Web site that allows you to share, organize, edit, and otherwise manage your photos.

Blogging & Social Networking Glossary
Friend List
Your virtual online address book in MySpace. You can become someone’s friend by either sending a fellow MySpacer a Friend Request or by being on the receiving end of a Friend Request from another MySpace user.

Blogging & Social Networking Glossary
hosted services
Manages the data, software, and Web hosting of a blog; the blogger just manages the content.

Blogging & Social Networking Glossary
HTML
The computer coding used by Web designers to create Web pages.

Blogging & Social Networking Glossary
hyperlink
A navigation tool that allows a user to go from one Web location to another by clicking. Hyperinks (or just links) are typically underlined.

Blogging & Social Networking Glossary
hypertext reference
In HTML, the address that a hyperlink connects to when clicked. For example, in This link goes to <a href="http://www.google.com">Google</a>, the hypertext reference (href) is http://www.google.com. Hyperlink references can also jump to new positions on the same page, open a new e-mail message, or begin a file download.

Blogging & Social Networking Glossary
link
Short for hyperlink, a navigation tool that allows a user to go from one Web location to another by clicking. Links are typically underlined.

Blogging & Social Networking Glossary
Mom test
A self-test that flags inappropriate blog posts. If you’d let your mom read the post, then it’s probably passed the Mom test. Specifically, don’t blog about topics you think will hurt others; don’t blog about others without their permission, even about topics you consider inconsequential; and don’t identify friends and lovers by name without their permission.

Blogging & Social Networking Glossary
MySpace
A social-networking service that enables you to keep in contact with families and friends via the Web.

Blogging & Social Networking Glossary
MySpace profile
Your MySpace identity. It can contain as much or as little information about you as you’d like.

Blogging & Social Networking Glossary
news aggregation
The ability to aggregate news by using RSS feeds. Having a news aggregator included with your blog package allows your site to pull in information from another blog.

Blogging & Social Networking Glossary
nonhosted service
Blog software that you set up on your own Web server. It allows you to take on all responsibilities related to maintaining your blog.

Blogging & Social Networking Glossary
ordered list
Contains items that must be listed in a particular order, such as a list of ranks or preferences. It may also indicate a list of steps for the reader to follow.

Blogging & Social Networking Glossary
pinging
An automated notification system for search engines and newsreaders, letting those services know that your blog has been updated. A ping occurs when one computer asks another whether it’s there; the second computer confirms its presence.

Blogging & Social Networking Glossary
post
1. (noun) An entry in a blog containing text, images, other media, or any combination of these. 2. (verb) The act of creating and/or uploading a blog entry.

Blogging & Social Networking Glossary
private profile
A MySpace profile that’s limited on who can view it, such as only people on your Friend List.

Blogging & Social Networking Glossary
public domain
The status of publications, processes, and product designs that are free from copyrights and/or patents and are available for anyone's use.

Blogging & Social Networking Glossary
social network
A service, such as Facebook or MySpace, that enables to keep in touch with people you know — and meet people you don’t know.

Blogging & Social Networking Glossary
spam
Unsolicited electronic messages sent in bulk that may be commercial, nonsensical, or malicious. In addition to e-mail spam, blog comments and blog forums can be targeted by spammers.

Blogging & Social Networking Glossary
tag
A relevant keyword associated or assigned to a piece of information, such as an image, a blog entry, or a video clip. Tags are usually chosen informally by the content creator or by the online community; they help give content to nontext media and organize information for ease of searching.

Blogging & Social Networking Glossary
Trackback
A technology that tracks references to a blog posting that occurs on other blogs. They allow bloggers to link to blog posts on related topics.

Blogging & Social Networking Glossary
transparent
1. Being honest and truthful on your blog. Also means that you admit mistakes and engage in dialogue with readers who leave comments. Considered proper blogging etiquette. 2. Integration of applications, programs, and media from different sources in such a way that the end user is unaware that the content is not self-contained.

Blogging & Social Networking Glossary
unordered list
unordered list is a series of bulleted items and is used for lists that don’t require numbering.

Blogging & Social Networking Glossary
video blog
A blog consisting of video files, or the practice of placing a video file in a blog post.

Blogging & Social Networking Glossary
video-sharing service
A service, such as YouTube, that enables you to share video with others.

Blogging & Social Networking Glossary
Web host
The Web server where you software, graphics, and other files live online.

Blogging & Social Networking Glossary
Web server
Technology that looks at what Web page is requested and then feeds the browser the appropriate file. It does most of the hard work of serving Web pages to visitors coming to your Web site.

Blogging & Social Networking Glossary
whitelist
A list of preselected users who are allowed to comment on your blog.

Blogging & Social Networking Glossary
YouTube
A video-sharing service.