Performance: Custom taxonomies
MEDIUM IMPACT
Custom taxonomies affect page load speed by adding database queries and can impact rendering if taxonomy data is heavily used in templates.
<?php register_taxonomy('genre', 'post', array('hierarchical' => true, 'show_ui' => true, 'rewrite' => true)); ?> // In template $posts = get_posts(array('post_type' => 'post', 'tax_query' => array(array('taxonomy' => 'genre', 'field' => 'slug', 'terms' => 'fiction')))); foreach ($posts as $post) { setup_postdata($post); echo get_the_title(); } wp_reset_postdata();
<?php register_taxonomy('genre', 'post', array('hierarchical' => true, 'show_ui' => true, 'rewrite' => true)); ?> // In template $terms = get_the_terms(get_the_ID(), 'genre'); if ($terms && !is_wp_error($terms)) { foreach ($terms as $term) { echo $term->name; } }
| Pattern | Database Queries | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Querying taxonomy terms inside post loop | N queries for N posts | 0 | Low | [X] Bad |
| Querying posts filtered by taxonomy once | 1 optimized query | 0 | Low | [OK] Good |