Ready to get started?Download WordPress

Plugin Directory

WordPress SEO by Yoast

Improve your WordPress SEO: Write better content and have a fully optimized WordPress site using the WordPress SEO plugin by Yoast.

Release Date: June 2nd, 2014

  • Enhancements

    • We've added some options and some host specific info to our tracking class. Most notably, we're tracking the PHP version for our users now, so we can see whether we, at some point, might drop PHP 5.2 support before WordPress does.
    • Auto-deactivate plugin in the rare case that the SPL (Standard PHP Library) extension is not available.
    • Switch from inline xmlns to inline use of the prefix attribute for breadcrumbs as that makes validation work. Fixes [Issue 1186]((https://github.com/Yoast/wordpress-seo/issues/1186).
  • Bugfixes

    • Check whether snippet preview is shown on page before hiding / showing errors, deducted from #1178
    • Fixed incorrect sitemap last modified date as reported in issue 1136 - props rscs.
    • Specify post ID when using wp_enqueue_media() to set up correctly for the post being edited. Pull #1165, props benhuson.
    • Fixed unreachable filter wpseo_sitemap_[post_type]_content as reported in pull #1163, also fixes unreachable filter wpseo_sitemap_author_content. Props jakub-klapka.
    • Fixed PHP notice as reported by maxiwheat in issue #1160.
    • Backed out pagination overflow redirect as it's causing too many issues.
  • i18n

    • Make sure extensions menu is fully i18n compatible.

Release Date: May 16th, 2014

  • Bugfixes

    • Backing out earlier change, as this breaks the snippet preview.
  • Enhancement

    • Reintroduced the 'Strip the category base (usually /category/) from the category URL.' option.

Release Date: May 15th, 2014

  • Bugfixes
    • Fix regression issue - non-replacement of %%name%% variable as reported in issue #1104 by firstinflight - props Jrf.
    • Fixed an issue where %%category%% was not replaced on certain pages.
    • Added support for %%tag%% even if the ID is empty.
    • All remaining not replaced title vars are now stripped from the title.
    • Added a fallback to post_date in the sitemap 'mod' property for when a post is lacking the post_date_gmt value.


  • Bugfixes

    • Don't ping search engines if the blog is set to 'discourage search engines from indexing this site' - props Jrf.
    • Fix error in sitemap_index.xml if post type does not contain any posts as reported by sebastiaandegeus.
    • Use the correct HTTP protocol for responses - props Fab1en.
    • Better OG locale handling - props maiis.
    • Fixed: 'breadcrumb_last' class was missing on homepage, as reported by uprise10 in issue #1045 - props Jrf.
    • Fix empty post id notice, issue #1080 as reported by sosada.
    • Localize dates where appropriate as suggested by allankronmark in issue #1073.
    • Fix for escaping str literals in JS regexes - props MarventusWP.
  • Enhancement

    • Redirect paginated archive pages with a pagination number that doesn't exist to the first page of that archive.
    • Update score circle icon to look great on HiDPI displays, as well as fitting better with WordPress 3.8+ design - props paulwilde.
    • Only show article publication time for posts, not for pages or other post types, introduce a new filter to do allow them when needed.
    • Load of improvements to banners and licenses page.
    • Update snippet preview to use latest Google design changes - props paulwilde.

  • Bugfixes

    • Added some missing textdomains.
    • Fixed a license manager request bug.
    • Work-around for fatal error caused by other plugins doing front-end post updates without loading all the required WP files, such as the WP Google Forms plugin - props Jrf.
    • Fixed incorrect link to Issues in CONTRIBUTING.md - props GaryJones.
    • Fixed a fatal error caused by not checking if Google Suggest request reponse is valid - props jeremyfelt.
    • Fixed a screen option bug in bulk edit options - props designerken.
    • Fixed warnings on edit files section - props Jrf.
    • Fixed a warning when post_type is an array - props unr.
  • i18n

    • Updated el_GR, hu_HU, nl_NL and pl_PL

  • Bugfixes

    • Fixed a WordPress Network license bug.
  • i18n

    • Updated el_GR, fa_IR, hu, it_IT, pt_PT, ru_RU, tr_TK and zh_CN
    • Added Malay

  • Bugfixes

    • Fixed Open Graph Facebook Debubber Tags/Categories Issue, tags/categories are now grouped into one metatag - props lgrandicelli.
    • Fixed: %%cf_%% and %%parent_title%% not being resolved in the preview snippet as reported by Glark in issue #916 - props Jrf.
    • Options are no longer deleted on plugin uninstall.
    • Fixed a bug that caused the 'Plugins activated' message to be removed by the robots error message - props andyexeter.
    • Fix white screen/blog down issues caused by some webhosts actively disabling the PHP ctype extension - props Jrf.
    • Fixes Metabox Social tab media uploader not working on custom post types which don't use media as reported by Drethic in issue #911 - props Jrf.
    • Fixed vars not being replaced in OG description tag.
  • Enhancement

    • Fix PHP warnings when post_type is an array.

  • Bugfixes
    • Fixed: Premium support link was being added to all plugins, not just ours ;-)
    • Only show the breadcrumbs-blog-remove option if user uses page_for_posts as it's not applicable otherwise and can cause confusion.
    • Clean up url query vars after use in our settings page to avoid actions being executed twice - props Jrf.

  • Bugfixes

    • Changed 'wpseo_frontend_head_init' hook to 'template_redirect' to prevent incorrect canonical redirect.
    • Improved upgrade routine for breadcrumbs maintax/pt option as reported by benfreke in issue #849 - props Jrf.
    • Fixed a bug where the banners overlapped WordPress notices/errors.
    • Fixed: Slashes in Taxonomy text inputs as reported by chuckreynolds in issue #868 - props Jrf.
    • Increased priority (decreased priority int) on the template_redirect for the sitemap redirect hook.
    • Fixed: current_user_can was being called too early as reported by satrya in issue #881 - props Jrf.
  • Enhancement

    • Enhanced validation of webmaster verification keys to prevent invalidating incorrect input which does contain a key as reported by TheZoker in issue #864 - props Jrf.

** Note: if you already upgraded to v1.5+, you will need to retrieve your Facebook Apps again and please also check your Google+ URL. We had some bugs with both being escaped too aggressively. Sorry about that. **

  • Bugfixes

    • Added missing settings menu pages to wp admin bar.
    • Replaced old AdWords keyword tool link.
    • Fix wp admin bar keyword density check link
    • Taxonomy sitemap will now also show if empty.
    • Prevent infinite loop triggered by sitemap_close(), fixes #600 as reported and fixed by pbogdan.
    • Fixed a link count Page Analysis bug.
    • Fixed a keyword density problem in the Page Analysis
    • Fixed OpenGraph/GooglePlus/Twitter tags not showing in a select few themes, issue #750 as reported by Jovian and wwdboer - props Jrf.
    • Fixed Facebook Apps not being saved/ "Failed to retrieve your apps from Facebook" as reported by kevinlisota in issue #812 - props Jrf.
    • Fixed duplicate feedback messages on WPSEO -> Social pages as reported by steverep in issue #743 - props Jrf.
    • Flush our force title rewrite buffer earlier in wp_footer so it can be used by other plugins in wp_footer. Props Gabriel PĂ©rez Salazar.
    • Start the force rewrite buffer late (at 999) in template_redirect instead of get_header because of several themes not using get_header, issue #817 as reported by Jrf.
    • Fixed 'Page %d of %d' / %%page%% variable not being replaced when on pages, as reported by SGr33n in issue #801 - props Jrf.
    • Restore robots meta box per post to its former glory, it now shows even when blog is not set to public.
    • Fixed individual page robots settings not being respected when using a page as blog as reported by wintersolutions in issue #813 - props Jrf.
    • Fixed: Too aggressive html escaping of the breadcrumbs.
    • Fixed: Last breadcrumb wasn't always determined correctly resulting in crumbs not being linked when they should have been.
    • Fixed: Breadcrumbs were sometimes missing separators and default texts since v1.5.0.
    • Fixed: 404 date based breadcrumb and title creation could cause corruption of the $post object.
    • Fixed: Filtering posts based on SEO score via the dropdown at the top of a post/page overview page no longer worked. Fixed. As reported by gmuehl in issue #838 - props Jrf.
  • Enhancements

    • Added filters for the change frequencies of different URLs added to the sitemap. Props to haroldkyle for the idea.
    • Added filter wpseo_sitemap_exclude_empty_terms to allow including empty terms in the XML sitemap.
    • Private posts now default to noindex (even though they technically probably couldn't be indexed anyway).
    • Show a warning message underneath a post's robots meta settings when site is set to noindex sitewide in WP core.
    • Updated licensing class to show a notice when requests to yoast.com are blocked because of WP_HTTP_BLOCK_EXTERNALS.
  • Other

    • Refactored the breadcrumb class - props Jrf.

  • Bugfixes

    • Fix for issue with Soliloquy image slider was not applied to minified js file.
    • Fixed some PHP 'undefined index' notices.
    • Fix banner images overlapping text in help tabs.
    • Fixed meta description tag not showing for taxonomy (category/tag/etc) pages as reported in issue #737 and #780 - props Jrf.
    • Prevent a fatal error if wp_remote_get() fails while testing whether the title needs to be force rewritten as reported by homeispv - props Jrf.
  • Enhancements

  • Bugfixes

    • Fix white screen/blog down issues caused by some (bloody stupid) webhosts actively disabling the filter extension - props Jrf.
    • Fix for some PHP notices, issue #747 as reported by benfreke - props Jrf.
    • Fixed: GooglePlus vanity urls were saved without the + as reported by ronimarin in issue #730 - props Jrf.
    • Fix WP Admin menu items no longer clickable when on WPSEO pages as reported in issue #733 and #738 - props Jrf.
    • Fix strict warning for W3TC, issue 721.
    • Fix RSS text strings on options page being double escaped, issue #731 as reported by namaserajesh - props Jrf.
    • Avoid potential confusion over Facebook OpenGraph front page usage, issue #570 - props Jrf.
    • Potentially fix issue 565 bbpress warning message. Thanks inetbiz for reporting and tobylewis for finding the likely cause.
    • Filter 'wpseo_pre_analysis_post_content' output is now only loaded in DOM object if not empty. - props mgmartel.
    • $post_content is now unset after loading in DOM object. - props mgmartel.
    • Fix Alexa ID string validation, as reported by kyasajin and Bubichka in issue 736 - props Jrf.
    • Fix issue with Soliloquy image query, as reported by osalcedo and mattisherwood in issue #733 - props Jrf.
  • Enhancements

    • Twitter metatag key is now filterable by 'wpseo_twitter_metatag_key'.
    • Added a filter called "wpseo_replacements" in wpseo_replace_vars to allow customization of the replacements before they are applied - props martinernst.
    • Added useful links for page analysis - props bhubbard.
  • i18n Updates

    • Updated nl_NL, id_ID, it_IT, fr_FR and de_DE
    • Added ko
    • Updated .pot file.


  • Bugfix:
    • If mbstring extension isn't loaded, fatal error was thrown.


This release contains tons and tons of bugfixes and security improvements. Credits for this release largely go to Juliette Reinders Folmer aka Jrf / jrfnl.

Also a heartfelt thanks go out to the beta testers who tested all the changes. Special mentions for testers Woyto, Bnpositive, Surbma, DavidCH1, TheITJuggler, kletskater who caught a number of bugs and provided us with actionable information to fix these.

This version also incorporates the SEO Extended plugin functionality into WP SEO with graceful thanks to Faison and Scott Offord for their great work on this plugin.

This version contains a lot of changes under the hood which will break backward compatibility, i.e. once you've upgraded, downgrading will break things. So make sure you make a backup of your settings/database before upgrading.

  • Bugfixes

    • Major overhaul of the way the plugin deals with options. This should fix a truck-load of bugs and provides improved security.
    • Major overhaul of the way the plugin deals with post meta values. This should fix a truck-load of bugs and provides improved security.
    • Major overhaul of the way the plugin deals with taxonomy meta values. This should fix a truck-load of bugs and provides improved security.

    • Fixed: Renamed a number of options as they ran the risk of being overwritten by post type/taxonomy options which could get the same name. This may fix some issues where options did not seem to get saved correctly.

    • Fixed: if page specific keywords were set for a static homepage, they would never be shown.

    • Fixed: if only one FB admin was selected, the tag would not be added.
    • Fixed: bug where taxonomies which were on an individual level set to noindex and sitemap include 'auto-detect' would still be shown in the sitemap
    • Fixed: bug in canonical urls where an essential part of the logic was skipped for singular posts/pages
    • Fixed: category rewrite rules could have errors for categories without parent categories.
    • Fixed: bug in delete_sitemaps() - wrong retrieval of needed options.
    • Fixed: HTML sitemaps would sometimes display headers without a link list.
    • Fixed: Breadcrumbs could potentially output an empty element as part of the chain, resulting in two separators in a row.
    • Fixed: Breadcrumbs: even when removing the prefix texts from the admin page, they would sometimes still be included.
    • Improved fixed for possible caching issue when title_test option remained set, issue #627.
    • Fixed bug in title_test_helper where it would pass the wrong information to update_option(), related to issue #627.
    • Fixed: shortcodes should be removed from ogdesc.

    • Fixed: Admin -> Dashboard -> Failed removal of the meta description from a theme file would still change the relevant internal option as if it had succeeded.

    • Fixed: Admin -> Dashboard -> bug where message about files blocking the sitemap from working would not be removed when it should.
    • Fixed: Admin -> Titles & Meta's -> Post types would show attachments even when attachment redirection to post was enabled.
    • Fixed: Admin -> Import -> Fixed partially broken import functionality for WooThemes SEO framework
    • Fixed: Admin -> Import -> Importing settings from file would not always work due to file/directory permission issues.
    • Fixed: Admin -> Export -> Some values were exported in a way that they couldn't be imported properly again.
    • Fixed: Admin -> Import/Export -> On export, the part of the admin page after export would not be loaded.
    • Fixed: Admin -> Various -> Removed some superfluous hidden fields which could cause issues.
    • Fixed: Admin -> Social -> The same fb user can no longer be added twice as Facebook admin.

    • Admin -> Multi-site -> Added error message when user tries to restore to defaults a non-existent blog (only applies to multi-site installations).

    • Bow out early from displaying the post/taxonomy metabox if the post/taxonomy is not public (no use adding meta data which will never be displayed).

    • Prevent the SEO score filter from displaying on a post type overview page if the metabox has been hidden for the post type as suggested by coreyworrell in issue #601.

    • Improved: post meta -> the keyword density calculation for non-latin, non-ideograph languages - i.e. cyrillic, hebrew etc - has been improved. Related issues #703, #681, #349 and #264. The keyword density calculation for ideograph based languages such as Japanese and Chinese will not work yet, issue #145 remains open.

    • Fixed: post meta -> SEO score indicator -> wpseo_translate_score() would never return score, but always the css value.
    • Fixed: post meta -> SEO score indicator -> wpseo_translate_score() calls were passing unintended wrong parameters
    • Fixed: post meta -> page analysis -> text analysis did not respect the blog character encoding. This may or may not solve a number of related bugs.
    • Fixed: post meta -> often wrong meta value was shown for meta robots follow and meta robots index in post meta box so it appeared as if the chosen value was not saved correctly.
    • Fixed: post meta -> meta robots advanced entry could have strange (invalid) values.
    • Fixed: post meta -> since v1.4.22 importing from other plugins would import data even when the post already had WP SEO values, effectively overwritting (empty by choice) WPSEO fields.
    • Fixed: post meta -> A few of the meta values could contain line breaks where those aren't allowed.

    • Fixed: taxonomy meta -> breadcrumb title entry field would show for taxonomy even when breadcrumbs were not enabled

    • Fixed: taxonomy meta -> bug where W3TC cache for taxonomy meta data wouldn't always be refreshed when it should and sometimes would when it shouldn't

    • Fixed: some things should work better now for must-use installations.

    • Added sanitation/improved validation to $_GET and $_POST variables if/when they are used in a manner which could cause security issues.
    • Fixed: wrong file was loaded for the get_plugin_data() function.
    • Fixed: several bug-sensitive code constructs. This will probably get rid of a number of hard to figure out bugs.
    • Fixed: several html validation issues.
    • Prevent error when theme does not support featured images, issue #639 as reported by kuzudecoletaje.
  • Enhancements

    • The SEO Extended plugin functionality has now been integrated into WP SEO.
    • Added ability to add Pininterest and Yandex site verification tags. You can enter this info on the WPSEO Dashboard and it will auto-generate the relevant meta tags for your webpage headers.
    • New [wpseo_breadcrumb] shortcode.
    • Post meta -> Don't show robots index/no-index choice in advanced meta box if there is a blog-wide override in place, i.e. the Settings -> Reading -> Block search engines checkbox is checked.
    • Post meta -> Added 'Site-wide default' option to meta robots advanced field in advanced meta box.
    • Post meta -> Added an option to decide whether to include/exclude rel="author" on a per post base as suggested by GaryJones. (Added to the advanced meta box).
    • Taxonomy meta -> Don't show robots index/no-index choice in taxonomy meta box if there is a blog-wide override in place, i.e. the Settings -> Reading -> Block search engines checkbox is checked.
    • Admin -> If WP_DEBUG is on or if you have set the special constant WPSEO_DEBUG, a block with the currently saved options will be shown on the settings pages.
    • Admin -> Dashboard -> Added error message for when meta description tag removal from theme file fails.
    • Admin -> Titles & Meta -> Added option to add meta keywords to post type archives.
    • Admin -> Social -> Facebook -> Added error messages for if communication with Facebook failed.
    • Admin -> Import -> WPSEO settings -> Better error messages for when importing the settings fails and better clean up after itself.
    • Adminbar -> Keyword research links now also search for the set the keyword when editing a post in the back-end.
    • [Usability] Proper field labels for user profile form fields.
    • The New Relic daemon (not the W3TC New Relic PHP module) realtime user monitoring will be turned off for xml/xsl files by default to prevent breaking the sitemaps as suggested by szepeviktor in issue #603
    • General jQuery efficiency improvements.
    • Improved lazy loading of plugin files using autoload.
    • Made the Google+ and Facebook post descriptions translatable by WPML.
    • Better calculation precision for SEO score
    • Improved 403 headers for illegal file requests as suggested by cfoellmann
    • Synchronized TextStatistics class with changes from the original, this should provide somewhat better results for non-latin languages.
    • CSS and JS files are now minified
    • Rewrote query logic for XML sitemaps
    • Changed default settings for rel="author"
    • Added option to switch to summary card with image for Twitter cards
    • Made several changes to Open Graph logic
    • Implemented new Yoast License framework
    • Added possibility to create a robots.txt file directly on the server
  • Other:

    • Removed some backward compatibility with WP < 3.5 as minimum requirement for WP SEO is now 3.5
    • Removed some old (commented out) code
    • Deprecated category rewrite functionality


  • Bugfixes

    • Do not include external URLs in XML sitemap (Issue #528) - props tivnet.
    • Get home_url out of the sitemap loop - props tivnet.
    • Add support for html entities - props julienmeyer.
    • Fixed wrong use of __FILE__.
  • Enhancement

    • WPSEO_FILE now has a 'defined' check.
    • Removed unneeded dirname calls.
  • i18n

    • Updated cs_CZ, de_DE, fr_FR & tr_TK


  • Bugfixes

    • Removed screen_icon() calls.
    • Fixed a bug in robots meta tag on singular items.
    • Fix double robots header, WP native settings will be respected - props Jrf.
    • When post published data is newer than last modified date, use that in XML sitemap, props mindingdata.
    • Check if tab hash is correct after being redirected from Facebook API, props dannyvankooten.
    • Fix 404 in category rewrites when pagination_base was changed, props raugfer.
    • Make the metabox tabs jQuery only work for WPSEO tabs, props imageinabox.
    • Sitemap shortcode sql had hard-coded table name which could easily cause the shortcode display to fail. Fixed. - props Jrf.
    • Fix issue with user capability authorisation check as reported by scienceandpoetry in issue #492 - props Jrf.
    • Fixed canonical rel links was causing an error when given an invalid taxonomy, issue #306 - props Jrf.
    • Removed add_meta_box() function duplication - props Jrf.
    • Fix issue "Flesch Reading Ease should only be a positive number". This also fixes the message being unclear. Thanks eugenmihailescu for reporting - props Jrf.
    • Fixed issue with page analysis not taking feature image into account - props darrarski.
  • Enhancement

    • Shortcode now also available to ajax requests - props Jrf.
    • Added gitignores to prevent incorrect commits (Cross platform collab) - props cfoellmann.
    • Adding filters to individual sitemap url entries - props mboynes.


  • Bugfixes

    • Fix for serious sitemap issue which caused all pages of a split sitemap to be the same (show the first 1000 urls) - props Jrf.
    • Fixed a bug in the WPSEO tour in WP Network installs
    • clean_permalink 301 redirect issue when using https - props pirategaspard
  • i18n

    • Updated cs_CZ, fa_IR, fr_FR, hu, hu_HU, pl_PL, ru_RU & zh_CN


  • Bugfixes

    • Reverted change to XML sitemaps stylesheet URL as that was giving issues on multisite installs.
    • Reverted change to XML sitemap loading as we were no longer exposing some variables that other plugins relied upon.
    • Fix bug with author sitemap showing for everyone.
  • Enhancement

    • No longer save empty meta post variables, issue #463. Clean up of DB is coming in future release, if you want to clean your DB now, see that issue for SQL queries.


  • Bugfixes
    • Fix notice for ICL_LANGUAGE_CODE not being defined.
    • Fix missing function in install by adding a require.


  • Bugfixes

    • Fixed bug where posts set to always index would not end up in XML sitemap.
    • Fix Invalid argument supplied for foreach() notice for WPML as reported by pbearne - props Jrf.
    • Yoast tracking cron job will now unschedule on disallowing of tracking, on deactivation and on uninstall, inspired by Bluebird Blvd. - props Jrf.
    • Fix issue #453: setting shop as homepage caused a notice and wrong title with WooCommerce.
    • Fixed a bug #449 where a canonical, when manually set for a category, tag or term, could get pagination added to it on paginated pages, when it shouldn't.
    • Fixed a bug where manually set canonicals would end up in rel="next" and rel="prev" tags.
    • Fixed a bug #450 where noindexed pages would appear in the HTML sitemap.
    • Fixed a bug where non-public taxonomies would appear in the HTML sitemap.
    • Fixed quotes not working in meta title and description for terms, issue #405.
    • Make sure author sitemap works when they should.
    • Fix some notices in author sitemap, issue #402.
    • Fix breadcrumbs being broken on empty post type archives, issue #443.
    • Fixed a possible caching issue when title_test option remained set, issue #419.
    • Make sure og:description is shown on homepage when it's left empty in settings, fixes #441.
    • Make sure there are no WPML leftovers in our title, issue #383.
    • Fix padding on fix it buttons with 3.8 design, issue #400.
    • Hide SEO columns in responsive admin ( in 3.8 admin design ), issue #445.
  • Misc

    • Switch back to MailChimp for newsletter subscribe.
    • Default to nofollowing links in RSS feed footers.
  • i18n

    • Updated es_ES, pt_BR & ru_RU
    • Added sk_SK


  • Enhancements

    • Added the option to upload a separate image for Facebook in the Social tab.
    • Added published time, last modified time, tags and categories to OpenGraph output, to work with Pinterests new article pin.
    • Added a filter for post length requirements in the Analysis tab.
    • If there is a term description, use it in the OpenGraph description for a term archive page.
    • Applied a number of settings form best practices - props Jrf.
    • File inclusion best practices applied - props Jrf.
    • Breadcrumbs for Custom Post Types now take the CPT->label instead of CPT->labels->menu_name as text parameter, as suggested by katart17 and Robbert V - props Jrf.
  • Bugfixes

    • Move all rewrite flushing to shutdown, so it doesn't break other plugins who add their rewrites late.
    • Fixed the wrong naming of the L10n JS object, props Otto.
    • Improved form support for UTF-8 - props Jrf.
    • Corrected faulty multisite option registration - props Jrf.
    • Fixed appropriate use of plugins_url() to avoid breaking hooked in filters - props Jrf.
    • (Temporary) fix for metabox styling for users using the MP6 plugin - props Jrf.
    • Minor fix in localization loading - props Jrf.
    • Fixed Missing argument 3 for wpseo_upgrader_process_complete notice for WP 3.7+, thanks vickyindo, Wendyhihi and Theressa1 for reporting - props Jrf.
  • i18n

    • Updated ru_RU, tr_TK and Hr


  • Unhooking 'shutdown' (part of the NGG fix in 1.4.16) caused caching plugins to break, fixed while preserving NGG fix.
  • These changes were pushed in later but were deemed not important enough to force an update:
    • Updated newsletter subscription form to reflect new newsletter system.
    • Documentation
      • Updated readme.txt to reflect support changes.
      • Moved old sections of changelog to external file.
    • i18n
    • Updated pt_PT


  • Missed a line in the commit of the option to stop stop words cleaning.


  • Fix for compatibility with NextGen Gallery.

  • Enhancements

    • Add option to enable slug stop word cleaning, find it under SEO -> Permalinks. It's on by default.
    • Remove tracking variables from the Yoast Tracking that weren't used.
  • i18n

    • Updated de_DE, fa_IR, fi, hu_HU, it_IT, pl_PL, sv_SE and tr_TK


  • Bugfixes
    • Fix the white XML sitemap errors caused by non-working XSL.
    • Fixed the errors in content analysis reporting an H2 was not found when it was really there.
    • Fix slug stopwords removal, props amm350.
    • Fix PHP Notice logged when site has capabilities created without 3rd value in args array, props mbijon.
    • Fix the fact that meta description template for archive pages didn't work, props MarcQueralt.
    • Prevent wrong shortcodes (that echo instead of return) from causing erroneous output.
    • Fix edge cases issue for keyword in first paragraph test not working.
    • Revert change in 1.4.14 that did a do_shortcode while in the head to retrieve images from posts, as too many plugins crash then, instead added wpseo_pre_analysis_post_content filter there as well.


This release contains tons and tons of bugfixes, thanks in large part to Jrf, who now has commit rights to the code on Github directly. Please join me in thanking her for her efforts!

  • Notes:

  • Bugfixes

    • Switch to stock autocomplete file and fix clash with color picker, props Heinrich Luehrsen.
    • Prevent strip category base code from breaking Custom Post Type rewrites, props Steve Hulet.
    • Fixed issue with canonical links on last page of paginated posts - props maxbugfiy
    • Fixed bug in shortcode removal from meta description as reported by professor44 - props Jrf.
    • Fixed bug preventing saving of taxonomy meta data on first try - props Jrf.
    • Fixed small (potential) issue in wpseo_title_test() - props Jrf.
    • Fixed bug where RSS excerpt would be double wrapped in &lt;p&gt; tags as reported by mikeprince - props Jrf.
    • Fixed HTML validation error: Duplicate id Twitter on Social tab - props Jrf.
    • Fixed undefined index notice as reported by szepeviktor.
    • Fixed error in a database query as reported by Watch Teller - props Jrf.
    • Fixed small issue with how styles where enqueued/registered - props Jrf.
    • Fixed bug in alt text of score dots as reported by Rocket Pixels - props Jrf.
    • Applied best practices to all uses of preg_ functions fixing some bugs in the process - props Jrf.
    • Fixed bug in processing of %%ct_<custom-tax-name>%% as reported by Joy - props Jrf.
    • Fixed: no more empty og: or twitter: tags. Also added additional escaping where needed - props Jrf.
    • Fixed: Meta description tag discovery looked in parent theme header file even when a child theme is the current theme - props Jrf.
    • Fixed: Using the 'Fix it' button would remove the meta description tag from the parent theme header file, even when a child theme is the current theme - props Jrf.
    • Fixed: Using the 'Fix it' button would fail if it had already been used once (i.e. if a wpseo backup file already existed) - props Jrf.
    • Fixed repeated unnecessary meta description tag checks on each visit to dashboard page - props Jrf.
    • Fixed: Meta description 'Fix it' feedback message was not shown - props Jrf.
    • Mini-fix for plugin_dir_url - props Jrf.
    • Fixed Author Highlighting to only show authors as possible choice for Google+ Plus author as reported by Sanoma - props Jrf.
    • Fixed adjacent_rel_links() for Genesis users - props benjamin74 for reporting.
    • Replace jQuery .live function with .on(), as .live() has been deprecated and deleted. Props Viktor Kostadinov & Taco Verdonschot.
    • Fix how breadcrumbs deal with taxonomy orders. Props Gaya Kessler.
    • Fixed some PHP warnings
  • Enhancements

    • Added wpseo_pre_analysis_post_content filter. This allows plugins to add content to the content that is analyzed by the page analysis functionality.
    • Added wpseo_genesis_force_adjacent_rel_home filter to allow forcing of rel=next / rel=prev links on the homepage pagination for Genesis users, they're off by default.
    • Make $wpseo_metabox a global, props Peter Chester.
    • No need to show Twitter image when OpenGraph is showing, props Gary Jones.
    • Make sure WPML works again, props dominykasgel.
    • Added checks for the meta description tag on theme switch, on theme update and on (re-)activation of the WP SEO plugin including a visual warning if the check would warrant it - props Jrf.
    • Added the ability to request re-checking a theme for the meta description tag. Useful when you've manually removed it (to get rid of the warning), inspired by tzeldin88 - props Jrf.
    • OpenGraph image tags will now also be added for images added to the post via shortcodes, as suggested by msebald - props Jrf.
    • Added 'wpseo_breadcrumb_single_link_with_sep' filter which allows users to filter a complete breadcrumb element including the separator - props Jrf.
    • Added 'wpseo_stopwords' filter which allows users to filter the stopwords list - props Jrf.
    • Added 'wpseo_terms' filter which allows users to filter the terms string - props Jrf.
    • Hide advanced tab for users for which it has been disabled, as suggested by jrgmartin - props Jrf.
    • Updated Facebook supported locales list for og:locale
  • i18n

    • Updated languages tr_TK, fi, ru_RU & da_DK
    • Added language hi_IN
    • Updated wordpress-seo.pot file


  • Bugfixes
    • Fixed ampersand (&) in site title in Title Templates loading as &
    • Fixed error when focus keyword contains a / - props Jrf.
    • Fixed issue with utf8 characters in meta description - props Jrf.
    • Fixed undefined property error - props Jrf.
    • Fixed undefined index error for the last page of the tour - props Jrf.
    • Fixed undefined index error for images without alt - props Jrf.
    • Fix output of author for Google+ when using a static front page - props petervanderdoes.
    • Keyword density calculation not working when special character in focus keyword - props siriuzwhite.
    • Reverse output buffer cleaning for XML sitemaps, as that collides with WP Super Cache, thanks to Rarst for finding this.
    • Fix canonical and rel=prev / rel=next links for paginated home pages using index.php links.
    • Fixed og:title not following title settings.
  • Enhancements
    • Improved breadcrumbs and titles for 404 pages - props Jrf.
    • Moved XSL stylesheet from a static file in wp-content folder to a dynamic one, allowing it to work for sites that prevented the wp-content dir from being opened directly, f.i. through Sucuri's hardening.
    • Added a link in the XSL pointing back to the sitemap index on individual sitemaps.
    • When remove replytocom is checked in the permalink settings, these are now also redirected out.
    • Added filters to OpenGraph output functions that didn't have them yet.


  • Bugfixes
    • Submit button displays again on Titles & Metas page.
    • SEO Title now calculates length correctly.
    • Force rewrite titles should no longer reset wrongly on update.


  • i18n
    • Updated de_DE, ru_RU, zh_CN.
  • Bugfixes
    • Make rel="publisher" markup appear on every page.
    • Prevent empty property='article:publisher' markup from being output .
    • Fixed twitter:description tag should only appears if OpenGraph is inactive.
    • og:description will default to get_the_excerpt when meta description is blank (similar to how twitter:description works).
    • Fixes only 25 tags (and other taxonomy) are being indexed in taxonomy sitemaps.
    • Fix lastmod dates for taxonomies in XML sitemap index file.
  • Enhancements
    • Changed Social Admin section to have a tab-layout.
    • Moved Google+ section from Homepage tab of Titles & Metas to Social

Requires: 3.5 or higher
Compatible up to: 3.9.1
Last Updated: 2014-6-2
Downloads: 11,243,958


4 stars
4.7 out of 5 stars


14 of 319 support threads in the last two months have been resolved.

Got something to say? Need help?



21 people say it works.
2 people say it's broken.

100,16,16 70,10,7 80,25,20 100,2,2 100,4,4 100,6,6 100,4,4 100,3,3 100,3,3 100,1,1 0,1,0 0,1,0 0,1,0
100,5,5 100,7,7 100,7,7
96,26,25 100,1,1
67,15,10 100,1,1 0,1,0
100,3,3 100,3,3 100,3,3 100,1,1 0,4,0 100,1,1 0,1,0
91,35,32 75,4,3 91,11,10 91,22,20 77,26,20 100,5,5 100,1,1 83,6,5 0,1,0 100,1,1 100,1,1 0,1,0
100,3,3 56,9,5 100,1,1 86,7,6 100,6,6 86,29,25 100,1,1 100,1,1 0,1,0 50,2,1 100,1,1
93,15,14 50,2,1 100,1,1 100,8,8 33,3,1 79,24,19 63,8,5 100,5,5 0,1,0
100,4,4 63,35,22 94,47,44 0,1,0 0,1,0 0,1,0 0,1,0
100,7,7 100,1,1 100,1,1 0,1,0
92,12,11 100,1,1
83,60,50 100,3,3 100,9,9 95,21,20 80,5,4 90,10,9 83,18,15 91,105,96 100,3,3 100,2,2 67,3,2 100,5,5 100,1,1 100,1,1 0,1,0 0,1,0 0,1,0 0,1,0 0,1,0 0,1,0
50,8,4 44,16,7 90,20,18 96,71,68 0,1,0 0,1,0 100,3,3 100,1,1
100,1,1 100,27,27 44,9,4 89,35,31 94,201,189 100,3,3 100,2,2 100,3,3 100,1,1 100,1,1 100,2,2 0,1,0 100,2,2 100,1,1
90,63,57 83,18,15 88,17,15 0,5,0 97,63,61 33,9,3 91,11,10 67,3,2 50,6,3 50,4,2 0,2,0 100,1,1
0,2,0 57,28,16 67,52,35 75,4,3 29,7,2 0,1,0
0,1,0 44,9,4 75,133,100 58,24,14 69,45,31 0,23,0 63,27,17 70,23,16 68,22,15 67,6,4 33,3,1 50,2,1 0,1,0
80,5,4 83,52,43 65,26,17 90,21,19 83,104,86 33,3,1 69,13,9 100,5,5 100,2,2 100,2,2 100,1,1 100,1,1 0,1,0
33,3,1 38,16,6 100,1,1 91,32,29 50,2,1 79,19,15 86,21,18 100,2,2 100,1,1 0,1,0 0,1,0
85,33,28 100,2,2 92,13,12 13,8,1 100,5,5 50,2,1 0,1,0 73,11,8 60,10,6 85,20,17 100,2,2 76,17,13 81,53,43 0,5,0 0,5,0
10,21,2 13,8,1 88,16,14 82,39,32 75,4,3 0,1,0 100,4,4 100,1,1
87,15,13 11,19,2 87,39,34 0,2,0
100,8,8 86,42,36
25,4,1 100,1,1
0,1,0 98,43,42 0,1,0 100,1,1 100,1,1
100,2,2 100,1,1 73,11,8 62,29,18 94,16,15 93,15,14 100,1,1
83,29,24 25,20,5 50,4,2 0,1,0 40,5,2 31,16,5 82,17,14 30,10,3 33,3,1 48,27,13 23,13,3 100,1,1 100,1,1
63,8,5 100,1,1 100,1,1
100,9,9 100,2,2 100,1,1
69,13,9 45,20,9 100,2,2 100,1,1
40,5,2 67,6,4 50,4,2 81,26,21 91,23,21