The WordPress SEO plugin comes with its own set of actions and filters, described below, first the actions, then the filters, then some example use cases.
Actions
- Frontend
wpseo_head
Runs at the end of the output of all SEO meta tags by the plugin, before the closing debug comment.wpseo_opengraph
Runs at the end of the output of OpenGraph meta tags by the plugin, before the closing debug comment.wpseo_do_sitemap_<$type>
Runs in the creation of XML sitemaps, $type can not be a valid post type or taxonomy, when they are this action will not trigger.
- Backend
wpseo_dashboard
Runs on the SEO admin dashboard page.wpseo_xmlsitemaps_config
Runs on the SEO Admin page for XML Sitemaps.
Filters
- Frontend
wpseo_canonical(string)
Allows changing of the canonical URL. Returning false will disable the canonical.wpseo_title(string)
Allows changing the title being output.wpseo_metadesc(string)
Allows changing of the meta description. Returning false will disable the meta description.wpseo_author_link
Change the author link added in the<head>or return false to disable it.wpseo_metakey(string)
Allows changing of the meta keywords. Returning false will disable the meta keywords.wpseo_locale(string)
Allows changing the locale used in the opengraph set (and possibly in other locations later on).wpseo_opengraph_type(string)
Allows changing the content type for the current page being output in the opengraph set.wpseo_opengraph_image(string)
Allows changing the image(s) being output in the opengraph set.wpseo_opengraph_image_size(int)
Allows changing the image size used for the output of the featured image in the opengraph set.wp_seo_get_bc_title(string)
Allows changing the title used for the current page in the breadcrumb.wp_seo_get_bc_ancestors(array)
Allows changing the ancestors for the current page in the breadcrumb.wpseo_whitelist_permalink_vars(array)
Allows changing the array of whitelisted permalink variables, useful for plugin authors who get complaints from users who are using the plugins permalink redirect function.wpseo_prev_rel_linkandwpseo_next_rel_link(string)
Filter to change therel="next"andrel="prev"links output by WordPress SEO, by returning false they won’t show.wpseo_xml_sitemap_img_src(string)
Allows you to change the URL for images embedded in the XML sitemap. Most common usecase is to make sure the CDN URL is embedded.
- Backend
wpseo_options(array)
Allows you to filter the array of options used by the WP SEO plugin, mostly so you can add your own if needed.wpseo_use_page_analysis(boolean)
Returning false on this will disable the page analysis score from showing up in publish box and edit posts pages.wpseo_show_date_in_snippet_preview(boolean)
Returning false on this will prevent the date from showing up in the snippet preview.
Examples
- Disable canonical URLs
To disable the canonical entirely, you could do the following:add_filter( 'wpseo_canonical', '__return_false' );
- Disable rel=”next” on home
To disable the rel=”next” link on your homepage if you have a static homepage but are not using the corresponding WordPress settings:function wpseo_disable_rel_next_home( $link ) { if ( is_home() ) { return false; } } add_filter( 'wpseo_next_rel_link', 'wpseo_disable_rel_next_home' ); - Change meta keywords
To always add ‘yoast’ to your meta keywords (which is a bad idea):function yoast_add_keywords( $str ) { return $str.',yoast'; } add_filter( 'wpseo_metakey', 'yoast_add_keywords', 10, 1 ); - Change the OpenGraph type of a page
To change the OpenGraph type of page X, do the following:function yoast_change_opengraph_type( $type ) { if ( is_page( 'X' ) ) return 'video'; } add_filter( 'wpseo_opengraph_type', 'yoast_change_opengraph_type', 10, 1 ); - Switch XML Sitemap image URLs to CDN
The following, when replaced with your domain name and CDN url, would make the sitemap contain your CDN image URLs:function wpseo_cdn_filter( $uri ) { return str_replace( 'http://example.com', 'http://cdn.example.com', $uri ); } add_filter( 'wpseo_xml_sitemap_img_src', 'wpseo_cdn_filter' );