Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

When I create a custom taxonomy, what template file is being used to display the page? How might I create a custom listing page for my custom taxonomy.

eg. I have a custom taxonomy skills. In it are values like: PHP, MySQL, HTML/CSS/JS ...

When users goto say /skills/php they will see all posts containing PHP in skills. What template is used by default for this page and how might I create a custom page template for this?

share|improve this question
add comment

1 Answer

up vote 7 down vote accepted

It really depends on your theme. Term archive views are governed by the rules of template hierarchy which means that more than one template may display these archives. For your project, I would suggest that you create a new template file called "taxonomy-skills.php". This file will get use only for archives of skills enabling you to create a design that differs from other term archive pages.

You do not need to start from scratch. It often saves time to copy the contents of another file and adjust the code to your needs. I would first look for taxonomy.php. If it exists in your theme, copy and paste it's contents into "taxonomy-skills.php". If this file does not exist, try to locate the following files in the order specified: category.php, archive.php, index.php.

Best, -Mike

share|improve this answer
    
Thanks, now how will I get the taxonomy/"skill" being shown? I am new with WP dev –  Jiew Meng Feb 20 '11 at 9:59
    
To show the skill's name I would do something like this global $wp_query; $term = $wp_query->get_queried_object();. To show the description you can use the : term_description() function. All posts can be displayed in a normal WordPress Loop. –  mfields Feb 20 '11 at 11:38
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.