The Wordpress template: Components of a page
The elements that make up a page in Wordpress are small predefined part of code, represented by a function call in PHP.
Like Lego bricks, they can be assembled to compose the interface chosen by the author of the theme.
Main loop
The main loop display a post or a list of post or excerpts of last posts.
Start of loop
if (have_posts()) : while (have_posts()) : the_post();
Displays one or more items. The number is defined in the administration panel.
End of loop
endwhile; else: _e('Sorry, no posts matched your criteria.'); endif;
_e is a function of the CMS and the argument string is translated by the localization module.
Date
the_date('format','before','after');
The parameters are in order:
- The display format. It depends on the country.
- The HTML code to put bafore. Example: <h4>
- The HTML to be placed after. Example: </ h4>
It is better not to indicate the format to allow the user of the template to configure it itself according to its country.
Category
the_category(','),
The arguments are in order:
- The separator. For example, a comma as above. Another example: '•' for a round.
- Display mode: single or multiple for the class hierarchy if any.
The author
the_author();
The author name is added on a collaborative website, otherwise it is superfluous. This function has no parameter.
And whether the authors have different websites, we can replace the link on the profile by a link on his website.
the_author_link();
More options are described in the codex.
The title of the article
the_title();
It is not part of the article, but is stored in a particular field in the database.
Optional arguments are:
- Before: HTML code to insert before the title, for example <h1>.
- After: HTML code to insert at end.
Example: the_title('<h1>', '</h1>');
Content of the post
the_content(__('(more...)'));
The ___() argument is the text displayed when the content is cutted. It does not appear when the page is devoted to a single post. The text is translated automatically by the localization module.
More detail in the Wordpress documentation.
Comments
comments_template();
Displays everything concerning comments and can be deleted as a whole as well.
Navigation buttons
wp_link_pages('before=<p>&after=</p>');
The following and previous articles.
One argument that is a string of parameters separated by &.
The values are:
- Before: HTML code to insert before.
- After: HTML code to insert after.
Edit button
edit_post_link('Edit this entry.', '<p>', '</p>');
It is added inside the loop. The three optional arguments are:
- The label. For example, 'Edit'.
- HTML code to insert before.
- HTML code to insert after.
The button appears only when the reader has publishing rights.
The whole page format
The format of a full page for an article might look like this:
<?php get_header(); if(have_posts()): while (have_posts(): the post(); the title('<h1>', '<h1>'); the_content(); edit_post_link(); wp_link_pages(); endwhile; endif; get_sidebar(); get_footer(); ?>
Reference
See also