Front (category)

attachment_link

Allows you to change an attachment link (a file from the media library).

body_class

Allows you to change the list of CSS classes assigned to the <body> tag.

do_parse_request

Allows you to completely disable processing of the current request.

do_robotstxt

Allows you to completely replace the content of the /robots.txt page.

get_canonical_url

Allows you to change the canonical URL that WordPress outputs for posts.

login_enqueue_scripts

Allows you to enqueue scripts and styles on the wp-login.php page.

mod_rewrite_rules

Allows you to change, add, or remove any rules in the .htaccess file.

robots_txt

Allows you to append content to the already generated /robots.txt page.

script_loader_tag

Allows you to change the HTML of a <script> tag enqueued for output by wp_enqueue_script().

shortcode_atts_(shortcode)

Filters the default attributes of the specified shortcode.

the_content

Filters post content after it is retrieved from the database but before it is displayed.

wp_headers

Allows you to change HTTP headers before they are sent to the browser.

wp_lazy_loading_enabled

Allows you to enable or disable the loading attribute for the specified tag in the specified context.

Theme (template)

after_switch_theme

Fires after the theme has been switched to a new one, when the theme is activated.

document_title_parts

Allows you to change the title of a WordPress site page.

get_search_form

Allows you to change the HTML of the search form.

site_icon_meta_tags

Allows you to change or extend the list of HTML meta tags for the site icon.

switch_theme

Fires when the theme is switched. Used when deactivating a theme.

template_include

Allows changing the path to the selected template file used to display the current page, such as single.php or page.php.

template_redirect

Fires before WordPress determines which template file to use to display the content.

theme_(post_type)_templates

Allows you to add or remove page templates for post types. These templates can be selected when publishing a post in the admin area.

theme_templates

Allows adding/removing page (post) template files used in the template selector when editing a post.

wp_after_load_template

Fires after a template is included (output).

wp_before_load_template

Fires before a template is included (output).

wp_enqueue_scripts

Allows you to enqueue scripts and styles for loading on the front end.

wp_footer

Fires in the page footer. Scripts, styles, and other assets are commonly included when this event fires. This is one of the main theme hooks.

wp_head

Fires in the page's <head> section. Scripts such as jQuery, site CSS, and SEO metadata such as title, description, and robots are commonly output at this point. This is one of the primary WordPress theme hooks.

LogIn and Registrations

authenticate

Allows you to perform additional checks on a user's authentication credentials (login/password) before the user is authenticated.

login_footer

Fires after the form is output on the login/authorization page (wp-login.php).

login_head

Fires in the <head> section of the login/registration page (wp-login.php).

login_header

Fires immediately after the opening <body> tag on the login/authorization page (wp-login.php), before the form is output.

login_headerurl

Allows you to change the URL of the logo link above the registration/login form. By default, the link points to wordpress.org.

login_redirect

Allows you to change the URL to which a user is redirected after logging in.

login_url

Allows you to change the login page URL (link).

register_form

Fires after the “Email” field is displayed in the user registration form on the wp-login.php page.

registration_errors

Allows you to add custom registration checks and change error messages on the registration page.

Comments (pings)

comment_form_default_fields

Allows you to modify, add, or remove comment form fields such as name, email, and website.

comment_post

Fires immediately after a comment is added to the database. The event passes the comment ID, status, and data.

comments_popup_link_attributes

Filters the attributes of the link output by comments_popup_link().

edit_comment

Fires immediately after a comment has been updated in the database.

get_comment_author_link

Allows you to change the link to the commenter's website returned by get_comment_author_link().

preprocess_comment

Filters comment data before it is sanitized and added to the database. The filter fires at the very beginning of wp_new_comment(), which adds a new comment.

respond_link

Filters the response URL (the link to the comments) when a post has no comments. Clicking the link takes the user to the comment form (the link contains an anchor).

wp_count_comments

Allows you to change the comment count for a specified post or for the site as a whole.

Widgets

dynamic_sidebar_params

Allows you to change the parameters passed to a widget's display callback.

sidebars_widgets

Allows you to change the list of sidebars and the widgets assigned to them.

widget_title

Allows you to change a widget title on the front end.

Navigation Menu (nav_menu)

nav_menu_css_class

Allows changing the set of CSS classes assigned to a menu item.

nav_menu_item_args

Allows you to change the arguments of an individual navigation menu item in wp_nav_menu().

nav_menu_item_id

Allows you to change the ID attribute of a menu item's <li> element.

nav_menu_item_title

Allows you to change a menu item's title (link anchor text).

nav_menu_link_attributes

Allows changing the <a> HTML attributes of a menu item: title, target, rel, and href.

nav_menu_meta_box_object

Allows you to change the object used to build a meta box in the menu item selection accordion on the admin menu creation page.

nav_menu_submenu_css_class

Allows you to change the CSS classes added to nested ul elements (menu lists). The sub-menu class is added by default.

pre_wp_nav_menu

Allows you to change the output of wp_nav_menu() at an early stage, before the function's main code runs.

walker_nav_menu_start_el

Allows you to change the output of a menu item's opening element.

wp_nav_menu

Allows you to change the navigation menu HTML before it is displayed.

wp_nav_menu_(menu_slug)_items

Allows you to change the generated HTML of each menu's items individually based on its slug.

wp_nav_menu_args

Allows you to change the arguments passed to wp_nav_menu() after they have been merged with the default values.

wp_nav_menu_container_allowedtags

Allows you to extend the list of HTML tags accepted in the 'container' parameter when a menu is output by wp_nav_menu(). Filters the list of menu container tags.

wp_nav_menu_items

Allows you to change the generated HTML of menu items.

wp_nav_menu_objects

Allows you to modify the sorted list of menu item objects before the menu HTML is generated from them.