Codex

Function Reference

The files of WordPress define many useful PHP functions. Some of the functions, known as Template Tags, are defined especially for use in WordPress Themes. There are also some functions related to actions and filters (the Plugin API), which are therefore used primarily for developing Plugins. The rest are used to create the core WordPress functionality.

Many of the core WordPress functions may also be useful to Plugin developers, and to a lesser extent, possibly theme developers as well. So, this article lists most of the core functions, by category; some of the function names are also links to more detailed documentation in separate pages. Each category also lists the files where its functions can be found (the files are in the wp-includes directory of WordPress).

Note: This reference applies to Version 2.1 and later versions of WordPress, and does not include functions that have been deprecated as of that version of WordPress. An incomplete page for the 2.0.x versions of WordPress can be found at Function Reference 2.0.x.

Note: Functions specifically for templates, which are listed in the Template Tags article, and contained in files wp-includes/*_template.php, are not listed here.

You can help make this page more complete!

Here are some things you can do to help:

  • Add documentation to un-documented functions, by creating sub-pages or at least by adding short comments in the lists below. If you create a subpage for a function, please include information and examples of usage of that function, if possible, per the examples found in Template Tags.
  • List more functions here, following the category structure.
  • Remove functions from the list, if you think they could not possibly be useful to plugin developers, or if they have been deprecated.
  • Correct errors by moving functions to better categories where appropriate, and of course fixing typos. Note that it is OK for a function to appear in more than one category.

Read Contributing to WordPress to find out more about how you can contribute to the effort!


Functions by category

Post, Page, and Attachment Functions

These functions are contained in formatting.php, post.php. See also Template Tags.


Category, Tag and Taxonomy Functions

Functions surrounding the WordPress Terms tables, encompassing categories and tags for classifying posts, pages, links, etc.

Category functions in category.php

Tag Functions in category.php

  • get_tags
  • get_tag

Term Functions in taxonomy.php

  • is_taxonomy
  • is_taxonomy_hierarchical
  • get_term
  • get_term_by
  • get_term_children
  • get_terms
  • is_term
  • register_taxonomy
  • wp_get_object_terms

Other Category Functions'


User and Author Functions

These functions are in user.php, pluggable.php, registration.php. See also Template Tags.

Feed Functions

These functions are in functions.php, feed.php, rss.php

  • fetch_rss
  • wp_rss
  • get_rss
  • do_feed
  • do_feed_rdf
  • do_feed_rss
  • do_feed_rss2
  • do_feed_atom
  • get_bloginfo_rss
  • bloginfo_rss
  • get_the_title_rss
  • the_title_rss
  • the_content_rss
  • the_excerpt_rss
  • permalink_single_rss
  • comment_link
  • get_comment_author_rss
  • comment_author_rss
  • comment_text_rss
  • post_comments_feed_link
  • get_post_comments_feed_link
  • get_author_feed_link
  • get_category_rss_link
  • get_category_feed_link(2.5 or later)
  • get_the_category_rss
  • the_category_rss
  • rss_enclosure
  • get_search_feed_link (2.5 or later)</tt>
  • get_search_comments_feed_link (2.5 or later)</tt>

Comment, Ping, and Trackback Functions

These functions are found in comment.php, functions.php, post.php. See also Template Tags.

  • check_comment
  • get_approved_comments
  • get_comment
  • get_lastcommentmodified
  • sanitize_comment_cookies
  • wp_allow_comment
  • wp_delete_comment
  • wp_get_comment_status
  • wp_get_current_commenter
  • wp_insert_comment
  • wp_filter_comment
  • wp_throttle_comment_flood
  • wp_new_comment
  • wp_set_comment_status
  • wp_update_comment
  • wp_update_comment_count
  • discover_pingback_server_uri
  • do_all_pings
  • do_trackbacks
  • generic_ping
  • pingback
  • privacy_ping_filter
  • trackback
  • weblog_ping
  • do_enclose
  • add_ping
  • get_enclosed
  • get_pung
  • get_to_ping
  • trackback_url_list

Action, Filter, and Plugin Functions

These functions are contained in plugin.php. See also Plugin API.

Theme-Related Functions

These functions are found in theme.php.

  • get_stylesheet
  • get_stylesheet_directory
  • get_stylesheet_directory_uri
  • get_stylesheet_uri
  • get_locale_stylesheet_uri
  • get_template
  • get_template_directory
  • get_template_directory_uri
  • get_theme_data
  • get_themes
  • get_theme
  • get_current_theme
  • get_theme_root
  • get_theme_root_uri
  • get_query_template
  • get_404_template
  • get_archive_template
  • get_author_template
  • get_category_template
  • get_date_template
  • get_home_template
  • get_page_template
  • get_paged_template
  • get_search_template
  • get_single_template
  • get_attachment_template
  • get_comments_popup_template
  • load_template
  • locale_stylesheet
  • preview_theme
  • preview_theme_ob_filter
  • preview_theme_ob_filter_callback
  • validate_current_theme
  • switch_theme
  • get_theme_mod
  • set_theme_mod
  • get_header_textcolor
  • get_header_image
  • header_image
  • add_custom_image_header


Formatting Functions

These functions are contained in formatting.php, functions.php, kses.php.

  • wptexturize
  • clean_pre
  • wpautop
  • seems_utf8
  • wp_specialchars
  • utf8_uri_encode
  • remove_accents
  • sanitize_file_name
  • sanitize_user
  • sanitize_title
  • sanitize_title_with_dashes
  • convert_chars
  • funky_javascript_fix
  • balanceTags
  • force_balance_tags
  • format_to_edit
  • format_to_post
  • zeroise
  • backslashit
  • trailingslashit
  • addslashes_gpc
  • stripslashes_deep
  • antispambot
  • make_clickable
  • wp_rel_nofollow
  • convert_smilies
  • is_email
  • wp_iso_descrambler
  • popuplinks
  • sanitize_email
  • ent2ncr
  • wp_richedit_pre
  • clean_url
  • htmlentities2
  • js_escape
  • attribute_escape
  • wp_make_link_relative
  • add_magic_quotes
  • wp_kses
  • wp_kses_hook
  • wp_kses_version
  • wp_kses_split
  • wp_kses_split2
  • wp_kses_attr
  • wp_kses_hair
  • wp_kses_check_attr_val
  • wp_kses_bad_protocol
  • wp_kses_no_null
  • wp_kses_strip_slashes
  • wp_kses_array_lc
  • wp_kses_js_entities
  • wp_kses_html_error
  • wp_kses_bad_protocol_once
  • wp_kses_bad_protocol_once2
  • wp_kses_normalize_entities
  • wp_kses_normalize_entities2
  • wp_kses_decode_entities
  • wp_filter_kses
  • wp_filter_post_kses
  • wp_filter_nohtml_kses

Miscellaneous Functions

These functions are contained in formatting.php, functions.php, bookmarks.php, cron.php, l10n.php, user.php, pluggable.php

Time/Date Functions

  • get_gmt_from_date
  • get_date_from_gmt
  • iso8601_timezone_to_offset
  • iso8601_to_datetime
  • human_time_diff
  • mysql2date
  • current_time
  • date_i18n
  • get_weekstartend
  • get_lastpostdate
  • get_lastpostmodified
  • is_new_day

Serialization

  • maybe_serialize
  • maybe_unserialize
  • is_serialized
  • is_serialized_string

Options

XMLRPC

  • xmlrpc_getposttitle
  • xmlrpc_getpostcategory
  • xmlrpc_removepostdata
  • user_pass_ok

Localization See also Translating WordPress.

  • get_locale
  • __
  • _e
  • _ngettext
  • load_textdomain
  • load_default_textdomain
  • load_plugin_textdomain
  • load_theme_textdomain

Cron (Scheduling)

Miscellaneous

  • gzip_compression
  • make_url_footnote
  • wp_get_http_headers
  • add_query_arg
  • remove_query_arg
  • wp_remote_fopen
  • wp
  • status_header
  • nocache_headers
  • cache_javascript_headers
  • get_num_queries
  • bool_from_yn
  • do_robots
  • is_blog_installed
  • wp_nonce_url
  • wp_nonce_field
  • wp_referer_field
  • wp_original_referer_field
  • wp_get_referer
  • wp_get_original_referer
  • wp_mkdir_p
  • wp_upload_dir
  • wp_upload_bits
  • wp_check_filetype
  • wp_explain_nonce
  • wp_nonce_ays
  • wp_die
  • get_bookmark
  • get_bookmarks
  • wp_mail
  • check_admin_referer
  • check_ajax_referer
  • wp_redirect
  • wp_get_cookie_login
  • wp_setcookie
  • wp_clearcookie
  • wp_notify_postauthor
  • wp_notify_moderator
  • wp_new_user_notification
  • wp_verify_nonce
  • wp_create_nonce
  • wp_salt
  • wp_hash

Classes

The following classes were created by WordPress developers, and are found in files capabilities.php, classes.php, class-snoopy.php, locale.php, query.php, rewrite.php, script-loader.php, wp-db.php:

  • WP - general request handling
  • WP_Ajax_Response - AJAX handling
  • WP_Object_Cache (formerly <tt>WP_Cache) - Object cache (and functions wp_cache_add, wp_cache_close, wp_cache_delete, wp_cache_flush, wp_cache_get, wp_cache_init, wp_cache_replace, wp_cache_set)
  • WP_Error - error handling (and function is_wp_error)
  • WP_Locale - handles date and time locales
  • WP_Query - Request parsing and manipulation, posts fetching (with functions get_query_var, query_posts, have_posts, in_the_loop, rewind_posts, the_post, wp_old_slug_redirect, setup_postdata, as well as the Conditional Tags is_*)
  • WP_Rewrite - Rewrite rules (and functions add_rewrite_rule, add_rewrite_tag, add_feed, add_rewrite_endpoint, url_to_postid)
  • WP_Roles, WP_Role, WP_User - Users and capabilities - map_meta_cap, current_user_can, get_role, add_role, remove_role
  • WP_Scripts - JavaScript loading (and functions wp_print_scripts, wp_register_script, wp_deregister_script wp_enqueue_script)
  • Display tree-like data - Walker, Walker_Page, Walker_PageDropdown, Walker_Category, Walker_CategoryDropdown
  • wpdb - Database interface

The following classes were created by outside developers, and are found in files class-IXR.php, class-pop3.php, class-snoopy.php, gettext.php, rss.php, streams.php:

  • IXR - XML-RPC Classes, including IXR_Value, IXR_Message, IXR_Server, IXR_IntrospectionServer, IXR_Request, IXR_Client, IXR_ClientMulticall, IXR_Error, IXR_Date, IXR_Base64
  • Snoopy - HTTP client
  • gettext_reader (part of PHP-gettext) - Localization Class
  • RSS Classes (MagpieRSS and RSSCache) (and functions fetch_rss, is_info, is_success, is_redirect, is_error, is_client_error, is_server_error, parse_w3cdtf, wp_rss, get_rss)
  • POP3: SquirrelMail wrapper
  • StreamReader, StringReader, FileReader, CachedFileReader

Further Reading

For a comprehensive list of functions, take a look at the category Functions

External References

This page is marked as incomplete. You can help Codex by expanding it.