HeadSpace 2


Download: HeadSpace
Note: This plugin is no longer actively maintained

HeadSpace is a powerful all-in-one plugin to manage meta-data and handle a wide range of SEO tasks. With it you can tag your posts, create custom titles and descriptions that improve your page ranking, change the theme or run disabled plugins on specific pages, and a whole lot more.

Because the configuration of meta-data can be a complicated and tiresome process HeadSpace provides several shortcuts to reduce your effort:

  • Meta-data nesting – data is collected not only from the page itself, but nested parent pages
  • Dynamic data extracted – why repeat yourself when you can extract data from the post itself?
  • Full GUI interface – data is entered alongside post content, and with a full auto-suggested AJAX interface for tags and keywords
  • Mass-editing – now you can edit meta-data for all pages and posts at one go!

HeadSpace is modular in nature and provides a full set of modules that allow you to configure your site exactly as you want and without requiring several conflicting plugins – everything is contained within one consistent interface. These modules include:

  • Page-specific modules that can be applied to posts, pages, categories, archives, search pages, 404 pages, and the home page!
    • Page titles – SEO optimized titles
    • Tags and keywords are auto-suggested using a smart algorithm or via Yahoo and work on both posts and pages (pages can also be set to appear in tag archives)
    • Page-specific plugins – have plugins that run only on specific pages!
    • Theme-specific plugins – change your site theme on specific pages!
    • Description – what appears in search engine listing
    • More text – change the ‘more text’ for each post
    • JavaScript & CSS – add JavaScript or CSS files to a post
    • No index – configure whether a page is indexed by search engines
    • No follow – configure whether links receive a follow/nofollow attribute
    • Site name & description
    • RSS name & description
    • Anything else you want – HeadSpace allows custom meta-data
  • Site-wide modules:
    • Configure auto-formatting (wpautop), auto-fancy quotes, auto-clickable links, and disable visual editing
    • Tracking codes for Google Analytics (new & old code), Crazy Egg, StatCounter, 103bees, Mint, FeedBurner Stats, Yahoo! Site Explorer, HitTail, Google Webmaster, Piwik, and Apture, with the ability to not track registered users
    • Google section targeting
    • First Time Visitor – display a special message to visitors when they first visit your site (based upon idea by Seth Godin)
    • Disable Widgets
    • Change PHP memory limit, timeout, and error reporting level

Due to the number of meta-data plugins available for WordPress, HeadSpace will import data from these plugins:

  • UTW (Ultimate Tag Warrior)
  • SEO Title tags
  • All-in-one SEO
  • Jerome’s Keywords
  • Simple Tagging
  • lud.icro.us HeadMeta
  • HeadMeta description
  • More Unique

Now there’s no reason not to use it!

HeadSpace is available in the following languages (all included within the plugin):

If you can provide a language translation then please get in contact with the author. A PO file is provided with the plugin to be used in translating with poEdit.

People upgrading from previous versions should be aware that you must reconfigure the plugin. As much of your existing configuration will be retained, and existing custom meta data for posts should be completely safe.


The plugin is simple to install:

  1. Download headspace2.zip
  2. Unzip
  3. Upload headspace2 directory to your /wp-content/plugins directory – the directory must be called headspace2.
  4. Go to the plugin management page and enable the plugin
  5. Configure the options from the Options/HeadSpace page
  6. Ensure your theme calls wp_head in header.php (most themes do this anyway – see wp-content/themes/default/header.php as an example)

You can find full details of installing a plugin on the plugin installation page. Note that, depending on your site configuration, you may need to increase the amount of available memory to 32MB. Details of doing this can be found here.


It is useful to understand the process involved in generating meta-data for a WordPress page. HeadSpace allows meta-data to be both nested and dynamically generated from the page itself.


This is a fairly simple concept, but one that requires explanation. When a page is to be displayed, HeadSpace looks at the page type and retrieves meta-data from all available sources. For example, when displaying a post, HeadSpace will first look at the post’s meta-data, then it will look at meta-data set for all posts, then it will look at global meta-data. When displaying a category page, HeadSpace will look first at the category meta-data, then at global meta-data.

The reason for this nesting is that you can configure HeadSpace as little as possible, but get the maximum effect. For example, adding a tag of ‘scuba’ to the global ‘tag’ settings will mean that every page will have the ‘scuba’ tag set, in addition to whatever specific meta-data the page may contain.

Inheritance After

Note that nesting can be disabled.

Dynamically generated meta-data

Dynamic meta-data is simply meta-data that is taken from the post being displayed. In practical terms this means you can insert special tags into HeadSpace meta-data that are replaced when a post is to be displayed. These tags are:

Tag Inserts
%%date%% Date of the current post/page
%%title%% Title of the current post/page
%%sitename%% The site’s name
%%excerpt%% Excerpt of the current post/page (auto-generated if necessary)
%%excerpt_only%% Excerpt of the current post/page (not auto-generated)
%%modified%% Modified date of the current post/page
%%id%% Post/page ID
%%userid%% Post/page author’s ID
%%name%% Post/page author’s name
%%category%% List of categories the post/page belongs to
%%category_description%% Category description
%%searchphrase%% Search phrase
%%currentdate%% Current date
%%currenttime%% Current time
%%page%% Current page and total pages (i.e. page 1 of 3)


HeadSpace has site modules and page modules. Site modules affect the site as a whole, while page modules affect individual pages. Both are configured from the Options/HeadSpace/Modules page of the administration section. Page modules appear as:

Page Modules

Modules can be dragged and dropped into the appropriate areas. Modules in the ‘simple’ area will always when editing meta-data. Modules in the ‘advanced’ area will only appear when a link is pressed.

Site modules appear as:

Site Modules

Note that some modules have an edit button allowing further configuration. Disabled modules do not run and use no resources.

Page Settings

Configuration of page settings takes place from the HeadSpace administration page:

Page Settings

Clicking any of the sections will allow the meta-data to be configured:

The exact details and the order in which they appear is determined by your page modules. Note that advanced modules are hidden behind an ‘advanced’ link that, when clicked, will expand to show the advanced modules.

Post & Page Settings

The plugin adds an extra section to the post and page editing screen:

Admin Edit

Like for page settings the exact details and order is determined by your page modules. The settings defined here always take precedence over settings defined elsewhere.

Category Settings

You can also configure HeadSpace settings when editing a category from the Category Management page.

Category settings are applied when viewing a category page, and will inherit settings from the general category settings, as well as the global settings.


HeadSpace provides a mass-editing interface which allows you to change meta-data across all posts and pages. The interface is found in the Manage/Meta-data administration page:

Mass Edit

You can select the type of meta-data from the drop-down menu.

Tags or keywords

If the tag module is enabled then HeadSpace will automatically suggest tags for posts based upon previous tags. A smart-matching algorithm is used so that matches will be made when words have the same root. For example, if you previously defined the tag ‘elevate’ then the smart-matching algorithm will detect ‘elevator’, ‘elevated’, ‘elevating’, and ‘elevates’.

Tags are added with a special interface:


You can either manually enter tags in the input box, or you can click on a tag to have it added. Tags can be suggested using a smart HeadSpace algorithm, or you can enable a Yahoo option to have Yahoo suggest tags.

Support & Bugs

If you need further information then these are good guides and introductions to HeadSpace:

This plugin is no longer actively maintained.

1,428 thoughts on “HeadSpace 2”

  1. Hello! Im getting the fatal error when I activate the plugin:

    Warning: include() [function.include]: Failed opening ‘/home/donnasty/public_html/newborngifts/wp-content/plugins/headspace2/plugin.php’ for inclusion (include_path=’.:/usr/local/php52/pear’) in /home/donnasty/public_html/newborngifts/wp-content/plugins/headspace2/headspace.php on line 57

    Warning: include() [function.include]: Failed opening ‘/home/donnasty/public_html/newborngifts/wp-content/plugins/headspace2/models/headspace.php’ for inclusion (include_path=’.:/usr/local/php52/pear’) in /home/donnasty/public_html/newborngifts/wp-content/plugins/headspace2/headspace.php on line 58

    Fatal error: Class ‘HeadSpace2_Plugin’ not found in /home/donnasty/public_html/newborngifts/wp-content/plugins/headspace2/headspace.php on line 68

    Whats up? Please help!

  2. It seems to have troubles with 2.6. The keyword/tags editing field will not appear.

    When the plugin is turned on a list of tags for each page appears in the_content(), I can’t figure out how disable this feature.

  3. One truly great plugin! I’ve used WP for years now; tried dozens of different plugins and this one is wonderful all the way around. Thanks for all of the hard work you put into it.

  4. Tobias/Wally, I don’t see any problems with WP 2.6. If it’s not working for you then it’s likely that something else you have installed is interfering with the way HS displays tags on the edit page. If you can narrow down the cause then I’ll be able to look at it and try and stop it happening.

    All tag options are configured from the tag module on the modules page. This includes whether to display tags or not.

    Tatyana, have you installed the plugin correctly? You should have a headspace directory with several sub-directories.

    Oskar, I cannot imagine the plugin messing with your theme unless something has been configured incorrectly. Unfortunatley I cannot view your code so you’ll need to post it over in the bug tracker.

    Christian, the option to change the description length is in the same place as before – the descriptions module.

    Wally, the headspace menu has moved further down the page in relation to WP’s change of style. I cannot reproduce any issues with the advanced page options either.

  5. 3.4.4 seems to cause an issue with the Write Page Advanced Options. They become inaccessible.

    While having only the Headspace2 plugin active:
    3.4.3 works fine with the Write Page Advanced Options
    3.4.4 access to the Advanced Options is not available.

    I’ve switched back and forth between versions and get the same behavior on a fresh 2.6 WP install with no other plugins.

    I actually love the plugin by the way, just sticking with 3.4.3 for the moment.

  6. John, I was able to “fix” the issues I was having with Headspace by completely removing it and reinstalling from scratch. After I did that everything appeared as it should.

    Since this was a blog that was upgraded from 2.3 all the way to 2.6, something might have gotten lost in the translation (upgrade). I’ve created a couple of new blogs with a “fresh” 2.6 install, installed Headspace, and they worked fine.

    As far as the advanced options issue, I tracked it down to FeedWordpress. So, your off the hook 🙂

  7. Me again (sorry). I do have a couple more things to report.

    First, when the ShareThis plugin is installed, for whatever reason Headspace automatically puts

    SHARETHIS.addEntry({ title: “”, url: “” });

    into the description area of all Page Setting except the Global Settings. You have to actually type something over it before it will go away (or disable the ShareThis plugin).

    Second, I have the Global Settings title set up with

    %%title%% | %%category%% | domain.com

    I figure that covers most entries. But, when I go into other Settings (Home Page, Archives, etc.) I get

    | | domain.com

    which – automatically – which kinda defeats the idea of setting up a “Global” settings that are supposed to be inherited (I have the Inherit Settings box checked).

  8. I don’t know what the problem is. I have tried with several themes and it didn’t work for any of theme. Could anybody tell me of a theme with which works smoothly? I am not bothered about design so much I prefer to get the plugin running and i can always customize the theme myself.

    Any help will be appreciated.

  9. Wally, you should consider a job as a tester! The ShareThis thing looks like the ShareThis plugin is inserting something into the HS settings page. It could also be related to the page title mystery (i.e. the insertion of | | domain.com). I’ll try and take a look at the ShareThis plugin and see if there is anything I can do to disable whatever it is doing.

    Doc, more than likely you need to increase your memory limit – see the installation section above. Oskar, this may also be a solution to your problem. In general most themes are compatible with HS, and the ones that are simple to change.

  10. THX John…

    problem is.. my provider hav litited PHP-Memory to max of 16 M ..
    Is there no way..? HS was running well under 2.5 …
    I dont wanna miss this awesome tool..


  11. My Headspace plugin disappeared without explanation….???

    Here’s the story: Deactivated and then deleted my older Headspace plugin, from the server. Then uploaded the latest version. But though it can be seen in the FTP screen, it is missing in the WordPress plugin list page.

    ?? Very odd….Any reasons, and how do I make it appear again, so that I may activate it? My meta tags are gonna be screwed now.

  12. The HTML code on this page in the section “Why is my title not changing or displaying other text?” is wrong. The title tag is not closed. I initially blindly cut and paste the code into my template and my site stopped rendering in some versions of IE. I would suggest updating the docs, and if anyone cut and paste the code, make sure you pop a ‘/’ in front of the closing title tag in your template.

  13. Tester? Actually, that’s kinda funny. In my “other life” I’m a software developer (not WordPress, not PHP), so yeah, I’ve done my share of testing over the years. Guess it just comes natural 🙂

    I have since abandoned the Sharethis plugin, but the issue with the partial duplication of the titles is still there.

    (By the way, did you see my request for adding category to the Manage >> Meta-data? I think category is SEO related, especially if you are using the top-level category plugin).

  14. Hi John,

    I was trying to import data from Jerome’s Keywords using your plugin but nothing happened. When I looked at the module (jerome.php) I see that it specifies meta_key as ‘keywords’ – this is how it was setup for the original 1.9 version of JK. I’m using the 2.0-beta3 version (last release) and he had changed the configuration. It looks like in this version ‘jkeywords’ is the table where data is stored not ‘keywords’. Would it import correctly if I modified that part? I’m not a programmer so I am really not sure if that’s all that would be necessary to make it work. The 2.0 version looks to be a lot different than 1.9. Thanks for your help!


  15. I’ve updated the plugin to support the new version of Jerome’s plugin

    Needles, the only reason the plugin would not appear in the plugins list is if you uploaded it incorrectly (there should be a headspace directory with headspace.php and other files immediatley below it)

    I have seen your suggestion for a mass-category tool Wally, but it’s quite involved and I don’t have time to implement it just yet

  16. There is no reason why HeadSpace won’t work with Platinum SEO, but there shouldn’t really be any reason to use them together as HeadSpace provides most things that Platinum/All-In-One SEO does.

  17. The meta keywords also do not appear on my web pages but the page title and meta description does. I can’t seem to know why. But I have noticed that when I insert the keywords either in IE and Firefox, the details don’t appear to be saved. I hit save, come back to the settings page and the details have disappeared.

  18. Headspace 2 is not redefining the titles of the pages in the URL bart, the blog title is staying on all posts/pages, how do I change this?

  19. Timothy, see the section titled ‘Why is my title not changing or displaying other text?’

    Irene, do you have the keywords module enabled?

  20. I’m using headspace2. It’s giving me headaches. The tags don’t work.. The tag button and the field on the pages says “undefined”.

    What is it and how can I fix it?

  21. The tags are really not working and the button and input field both says “undefined”. The keyword module on the pages don’t work either. I enter a keyword, save the page and when the page loads bakc, the keyword field is clear.

  22. On the pages, there is another bug. When I click on “Description” link. The textarea comes up with the following text:

    Fatal error: Call to undefined function mb_strpos() in /home/waynebri/public_html/wp-content/plugins/headspace2/ajax.php on line 276

    I forgot to tell my wordpress version, it’s 2.6.2

  23. None of the meta-data is being added to the site description.
    Yes, I have wp_head(); in the header template. There seems to be a problem with the plugin which is giving me headaches. Are you going to fix it anytime soon?

    Still talking about pages.

  24. Hello I’ve tried to install your amazing plugin on a new WordPress installation at Dreamhost and the following error came up when trying to activate the plugin.

    Plugin could not be activated because it triggered a fatal error.
    Fatal error: Class ‘HSM_Module’ not found in /make247money.com/viral_marketing/wp-content/plugins/headspace2/plugin.php on line 24

    I’ve tried googling for this module but I’ve not found anything useful. Can you let me know the name of the module and where it can be obtained from. Dreamhost are pretty good at installing modules and may very likely consider adding your very popular and excellent plugin to their default WordPress set. I certainly hope so.



  25. The module is included in HeadSpace. By the sounds of the error message you haven’t uploaded the plugin directory correctly. When you have unzipped the plugin the entire headspace2 directory needs to be uploaded into wp-content/plugins. You should have a directory containing files such as:



    Muhammad, this is a free plugin so updates are released as and when time allows.

  26. I’m using linux and just unpacked the files and ftp’d them to the plugins folder. The file count appears to be complete. Perhaps I need to change the file permissions on some files? Currently they’ll all set to 755


  27. Just like to say the Headspace2 plugin is just great! I’m new to WordPress, only just installed it yesterday. The vanilla instal’ is a little lacking but with this plugin you can SEO your blog to your hearts content. The features are pretty damn amazing.

    I’ll have to head back to the WordPress website to give it 5 stars!


  28. Hi,
    Thanks for solving keywor position issue, now all the “spaces” after the “comma” symbol has been truncated, if it was like what the webmaster types then it will be very useful as i still believe that relevant keywords plays a minor role for SEs.

  29. Hi, the HS2 plugin is pure awesomeness! Is there any news on the incomparability issue with the Share This plugin? ie; ‘SHARETHIS.addEntry({ title: “”, url: “” });’ being placed into the description areas. I’m quite sure the issue is with the Share This plugin and not the fault of HeadSpace. But I also noticed the plugin is being used on this site so I was hoping there is a workaround or fix on the HS2 side. I assume HS2 is being used here as well, so I thought I’d ask 😉

  30. Hi John,

    I was using headspace2 plugin version 3.4.3, everything was working fine except the keywords in tag field was sorted alphabatecial. But when i upgrade to the latest version of 3.5.5 the meta tag “keyword” and values are not displayed in home page, but i am still able to get “title” and “description”. Can you resolve this? I am ready to show my site and give further details.


  31. Hello John, I have the same error as Tatyana already mentioned. Happening since I did the upgrade to 3.5.5. Previous version worked fine. Now I can’t even downgrade without getting rid of the php error messages. Any suggestions?

  32. Lika, I am using the Gregarious plugin on this site. I am unaware of any problem with the Share This plugin – exactly what is happening?

  33. HeadSpace Debug

    Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at /home/amoren5/public_html/brendajarvis/wp-content/plugins/headspace2/models/headspace.php:310) in /home/amoren5/public_html/brendajarvis/wp-content/plugins/wordpress-automatic-upgrade/wordpress-automatic-upgrade.php on line 119

    i have both the ShareThis and the wordpress-automatic-upgrades, when i deactivate them the error msg is gone but i still get that HeadSpace Debug text on top of my site.

    Any suggestions?

  34. […] 但是根本问题还是没有改变,因为我之前用的一个永久链接翻译软件的问题,将中文翻译英文的效果不是很好,且有些是用拼音来代替了而且大量的连接是没有“-”波折号的。一大早上班的第一件事情就是解决这个问题,google了一下,先是找到一个“headspace2”插件,功能很强大,但也很费事,多次google后找到了小墨同学的一篇文章终于在下载江东的批量翻译插件后,花了20多分钟,终于完成了窝棚的永久链接的工作。辛苦了~~ […]

  35. Hi John,

    I apologize, I thought you had looked into the problem with the ShareThis plugin. I’ll copy/paste below a couple of the previous comments from August. Basically I’m experiencing the same issue as Wally mentioned but I think he ended up canning the plugin.

    ******************** Previous Comments *********************

    Aug 18, 2008 4:13 am – Wally said:

    First, when the ShareThis plugin is installed, for whatever reason Headspace automatically puts

    SHARETHIS.addEntry({ title: “”, url: “” });

    into the description area of all Page Setting except the Global Settings. You have to actually type something over it before it will go away (or disable the ShareThis plugin).

    Aug 18, 2008 1:47 pm – John (author) said:

    The ShareThis thing looks like the ShareThis plugin is inserting something into the HS settings page. It could also be related to the page title mystery (i.e. the insertion of | | domain.com). I’ll try and take a look at the ShareThis plugin and see if there is anything I can do to disable whatever it is doing.

  36. I have added tags to every page, but when I go to source, title and decription is there but no keywords. Oh and it show only part od description. In admin it’s full but in source page it shows only part of it. Any help?

  37. […] WordPressではSEO用のプラグインを利用すればtitleã‚„description、keywordの設定やアレンジができます。ただし大人気のAll in One SEO Packではタイトルのページ表示ができても概要にはページ表示が反映されなかったのでHeadSpace2を利用することにしました。ページセッティングのページでタグを組み合わせるだけなので非常に簡単です。願わくば(2の2)という表示をちょっと・・・、といったところですけどね(汗) […]

  38. Hello,

    I installed your plugin but I cannot seem to activate the keywords module. It says drag and drop and all that does is highlight the copy. I am also getting the “undefined” issue in my tags section?

    Any help would be appreciated!

  39. Hi,
    I can’t see keywords in head section. I enabled tags and keywords separately and then both both nothing happening. I am using the latest version. Please help!

Comments are closed.