Summary of changes in WordPress 3.7

in Upgrade
December 9th, 2014

As we prepare for another round of WordPress upgrades we’ll be summarizing the changes between WordPress versions here, focusing on changes relevant to our environment. As discussed in the first of these posts, summaries are

broken down into “changes” and “new features”. Changes are any deprecated pieces of code or changes to how a piece of code functions. New features are self-explanatory. For our purposes, the list of changes is of greater importance to ensure nothing breaks.

The next release beyond our current installation is WordPress 3.7. The big change with WP 3.7 is a focus on plugin-led development, meaning WP developers will focus on adding features via plugins instead of within core. The other huge change is the addition of automatic upgrades. Obviously in our environment we do not want any updates downloaded and installed automatically so disabling this feature is important.

WP 3.7 also brings improvements to search results claiming more relevance in results than before. Additional options for querying posts by date is one of the biggest additions along with the new filters and functions listed here. Below are some highlighted changes from WordPress 3.7 that are most relevant to us. Please keep in mind that this list is not all-encompassing and thus you should still review the WordPress 3.7 Codex for the full list of all changes and additions.


  • Advanced Date Queries for posts now includes date ranges, older/newer than options, and more (See date_query under WP_Query)
  • Multisite now has wp_get_sites() to list all sites on the network
  • Actually limit password-protected post passwords to the 20-character limit
  • Trim leading and trailing spaces from passwords when saving
  • Fix terms with a post count of 0 returning if ‘hide_empty’ is true.
  • Fix issue with deleting terms shared across taxonomies from deleting associated nav menus
  • Make is_tag() accept a term-id, term-name, term-slug or an array of id’s, names and slugs
  • meta_box_cb callback for register_taxonomy()
  • description__like for get_terms()
  • show_in_menu for register_taxonomy()
  • Convert all get_category() calls to use get_terms()

New features

  • WP_Query::stopwords property
  • WP_Query::parse_search() method
  • WP_Query::parse_search_terms() method
  • WP_Query::get_search_stopwords() method
  • WP_Query::reset_postdata() method
  • author__in and author__not_in for WP_Query
  • WP_Http_Streams class
  • WP_Http::handle_redirects() method
  • WP_Http::is_ip_address() method
  • WP_Meta_Query::get_cast_for_type() method
  • unregister_taxonomy_for_object_type()
  • got_url_rewrite()
  • get_previous_post_link()
  • get_next_post_link()
  • get_adjacent_post_link()
  • wp_using_ext_object_cache()
  • is_main_network() template tag
  • verify_file_md5()
  • wp_extract_urls()
  • __return_empty_string()
  • mbstring_binary_safe_encoding()
  • reset_mbstring_encoding()
  • get_post_type_archive_template()

New Filters

  • wp_count_attachments
  • bulk_post_updated_messages
  • got_url_rewrite
  • post_password_expires
  • img_caption_shortcode_width
  • ajax_query_attachments_args
  • months_dropdown_results
  • populate_network_meta
  • wp_link_query_args
  • wp_link_query
  • wp_audio_shortcode_override
  • wp_video_shortcode_override
  • wp_count_posts
  • wp_search_stopwords
  • posts_search_orderby
  • flush_rewrite_rules_hard

WordPress 3.7.1, 3.7.2, 3.7.3, 3.7.4 and 3.7.5 were reviewed as well but contained only bug fixes and security hardening patches and are not summarized in this post.


Post Your Comment