Agreed. I’m using custom fields for taxonomy terms… so if you have a taxonomy with 250 terms and I have to cross check with wp_options for say… 2 custom fields… the number of queries goes from 1 with get_terms() to 500 when I have to loop through every one to get it’s associated custom field in wp_options. Brutal. Adds 5 seconds to page load time. There must be some better way?
While this will be hopefully be fixed/improved due to the autoloading options, if you have templates fetching a huge number of options fields like this you can build a caching system yourself – hook into the edit_category (or similar) filters; fetch all of the relevant fields for the page and cache them in an array in a single autoloaded option. That way all of the queries only need to be run when saving/creating/deleting a category, rather than on the frontend.