Taxonomy Metadata
Caching meta data (1 post)

  1. Stephen Harris
    Posted 4 years ago #

    I've found this plug-in very useful and will be using it as the basis of a custom metadata table that I need for a plug-in I'm working on.

    I just wanted to suggest maybe caching the term meta?

    Of course the metadata functions you use, already cache the term's metadata - but they need to first need to generate the cache. As it stands each 'new' call to get_metadata will require a query of the database to generate the cache of that term.

    I wanted to suggest hooking into the hooks get_terms (for when taxonomy terms are queried) and wp_get_object_term (for when terms associated with some posts are queried). These both pass an array of terms - allowing you to call update_meta_cache with an array of term IDs to generate the cache for all those terms at once.

    So, when posts are queried - the metadata of all the associated terms will generated to cache in one query - and then inside the loop all calls to retrieve the metdata will be obtained from cache.

    Pseudo code:

    function update_term_cache($terms){
        $taxonomy ='mytaxonomy'; //Set taxonomy
        $term_ids = wp_list_pluck($terms,'term_id');
        return terms;

    If the term's metadata is already in cache, then update_meta_cache doesn't do anything - so it's not wasteful.


Topic Closed

This topic has been closed to new replies.

About this Plugin

  • Taxonomy Metadata
  • Frequently Asked Questions
  • Support Threads
  • Reviews

About this Topic

  • RSS feed for this topic
  • Started 4 years ago by Stephen Harris
  • This topic is not resolved
  • WordPress version: 3.3.2