HeadSpace 2

download

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.

Installation

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.

Concepts

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.

Nesting

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)

Configuration

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.

Mass-Editing

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:

Tags

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 comments

  1. Can you explain this part a lil bit more please? What exactly should be put in the header? I’m still a wp newbie 🙂

    Ensure your theme calls wp_head in header

  2. Most themes will have the required code, but if not, all you need to insert is:

    <?php wp_head(); ?>

    That’s it!

  3. I have a question, but first of all thank you for all the plugins. I am a newbie to wordpress; I didn’t want to start making anything until I know I can do what I wanted to do. I have been looking for a solution to adding meta description and meta keywords that wordpress somehow lacks. I found many plugins that allows adding meta data on a per-post basis, but most doesnt seem to handle well with categories and the main page.

    My question is that, with Headspace, can I define meta data for the main page that is specific only to the main index page; and can I define meta data for individual categories.

    The main index and the categories links to multiple posts and have short excripts or descriptions for each post indexed. Plugins like xfish combines keywords and descriptions from all of the indexed posts. But I don’t want that at all. Can Headspace define custom meta data for categories and main index?

    If not, can Inscript do this? Or is it too complex for something as simple as adding custom meta data?

    Thanks.

  4. You can for the main index. I have been working on supporting category-specific data for another website, so expect that to filter through here soon.

  5. Doug: Very strange. I downloaded the HeadSpace plugin to test it with my form mailer.

    With HeadSpace enabled, my plugin says ‘invalid verification code’ no matter what code you enter. The strange thing is that it sends the message anyway. Which makes absolutely no sense because if it fails a check (even by mistake) it should not send the message.

    At first I thought it was sending multiple copies as well, since I only checked my mail after I disabled the plugin and it said my message was finally sent. But no, it was sending all of them just once.

    I looked through the HeadSpace plugin but do not see anything which would cause this. It sounds like the session my plugin uses is getting corrupt, but I find nothing to account for it. Maybe the HeadSpace author has an idea 🙂

  6. Doug, that problem is now fixed. It seems the WordPress function ‘get_the_excerpt’ causes the plugin to restart, and this has a knock-on effect of making a general mess of things. Use of that function has now been disabled.

    Hopefully that has also caught the ‘invalid verification code’ too.

    Wilson, category meta-data is now included – whatever you put in the category description will get included in the category page.

  7. I got this error message
    Warning: implode(): Bad arguments. in /usr/www/users/seoadvan/www_livestock-directory_com/livestock-blog/wp-content/plugins/headspace.php on line 286

    Warning: implode(): Bad arguments. in /usr/www/users/seoadvan/www_livestock-directory_com/livestock-blog/wp-content/plugins/headspace.php on line 290

    What do I have to do

  8. AWESOME. GREAT JOB! exactly what i have been looking for. easy to set up and run. thank you so much.

  9. Hey John,

    thanks for this great plugin.

    One suggestion: META KEYWORDS may be case sensitive (varies from SE to SE), but most surfers search for lower case search terms.

    So I changed in headspace.php (line 317) the code to:
    echo ”.”\r\n”;

    Maybe you can add a check box in the Options/HeadSpace menu to choose the META KEYWORDS always written lowercase.

    Just my two cents 🙂

  10. It’s me again 😉

    Since there is no code allowed here:

    I’ve changed in line 317
    ($keywords)
    to
    (strtolower($keywords))

    HTH

  11. Great plugin!

    One issue. When I use the %%excerpt%% tag under global description > single it inserts the ENTIRE body of the post, cuts off the first few characters and uses odd characters. Here is an example:

    r=”2″ />I am obsessed with Flogging Molly. I was not yesterday. I had heard of the traditionally Irish-influenced punk rockers prior to watching the film,…

    Any ideas?

  12. Fixed in version 2.5. Bear in mind that unless you explicitly give a post an excerpt the plugin will take the first 250 characters (HTML is stripped out), so text is likely to be cut mid-word.

  13. That makes a big difference! This is turning into a very versatile and robust plugin. I’m now able to use it on all my pages w/o any major issues. There are still issues with some some characters though. For example it displays:

    “[PBS CEO Paula Kerger]: “My point to them is

    when it should read:

    [PBS CEO Paula Kerger]: “My point to them is

    In regards to description length, Google cuts description length at about 150 characters. In my experience most SE don’t look beyond 200 characters. Is there any way to limit description length with %%excerpt%% to 200 characters?

  14. Hello,
    i get lithuanian letters corrupted, when entering them as description and keywords. Try those: ąčęėįšųūž, ĄČĘĖĮŠŲŪŽ. Smth is wrong with writing to database, maybe you can help me? 😉

    Regards

  15. Hi!
    Although I has been using headspace2 for wordpress 2.04 ME(Japanese version), it doesn’t work.
    In addition, Japanese character make strange when I finish to write meta tag. What should I do to fix this problem? Anyway, I would like to know whether headspace2.5 works for wordpress2.04 or not.

    Hedspace1.4 is being still good to use Japanese on wordpress2.02(original), but it doesn’t work wordpress2.04 ME.

  16. Are these meta keywords the same as “tag cloud” keywords? Technorati keywords and the like?

    Will blog search engines and blog portals pick up these meta keywords as such tags?

  17. Hi,
    its a verry good plugin. but i have the same problem like Andrius/Regards. I use the german language with ö, ä, ü or ß and the headspace2 makes other keys.

    can you help me?

    Thomas

  18. Y.O: The plugin should work on WordPress 2.0.4 (I’m using it here). I don’t know what WordPress ME is but if it uses the core WordPress code then there should be no reason why it won’t work.

    Tommy: Meta keywords are what existed before all the current tagging systems and use special HTML code. While meta descriptions are used by search engines it is debatable whether keywords have any effect.

    Version 2.6 uses a different PHP function that hopefully doesn’t mess up extended characters

  19. Hey,

    I just downloaded your plugin.However,i didnt quite understand the %%title%% optionin the meta field.I want to have custom titles to my posts,different from the post’s name.How can i do that?

  20. This is a great plugin, thanks for offering it! However, I tried to use the png fix for IE in the Global Raw Data field and it didn’t work. It works when placed directly into header.php, though.

    <!–[if lt IE 7.]&gt;–>
    /pngfix.js"&gt;

    PNG Fix can be found at http://homepage.ntlworld.com/bobosola/pnghowto.htm

    Again, thanks for the plugin, it’s very helpful.

  21. Byron, I inserted that PNG code into the HeadSpace raw field and it worked fine. I can’t think what the problem may be with it on yours.

    Vexx, the title option is for the HTML tag <title> (i.e. the text that appears in the title bar of your browser), not for the title that appears in your post. If you want to change the title then you could use my InScript plugin and hook into the_title filter.

  22. Tnx John for your reply,

    I have also sent you an email and i will write here 2.I simply want the title option to appear in my HTML source,not the post title.I want to use this especially for the crawlers to see a different title than the post,while visual,the post title remains the same.

  23. Hi John,

    Is it possible to specify custom stylesheets for category pages? What I’m trying to do is customize how posts are laid out in different categories. I’m thinking about doing this by applying different stylesheets for specific categories. I know you can do this for individual posts but how about category pages with multiple posts? Thanks in advance for your time (and for a great plugin!).

  24. wow, if this works as implied, it’ll cure a lot of my headaches. i can’t thank you enough for your efforts!

  25. cool. go it installed. running smoothly.

    just 2 hints though:

    the meta form fields didn’t show up (at least on the pages, didn’t try posts), until i actually put something in one of the general fields under options, although i didn’t need that for my purposes. all still works, now, although i removed this entry right afterwards.

    Usability: the custom fields could be somehow integrated right in the interface, as you do on the options panel.

    anyway, thanks again for your great work!

  26. I am using WordPress 2.0. I installed your plugin and activated it – also updated the options for headspace. When I try to to add a new post or edit previous posts, I can see the new fields ‘Description’ and ‘Keywords’; however, if I add anything in these fields and try to save or post, the application tries to open post.php and generates error – Can not display Page. What may be causing this problem ?

  27. The problem is solved when I entered Description and Keywords for Multiple as well as Single posts in the Headspace options. I am very happy with the way the plugin offers flexibility to change keywords and description for individual posts. Thanks a lot !!

  28. Phillip: You can have different stylesheets for each category, but not with this plugin, and it will require modifications to your theme. See this page in the WordPress codex.

    Lustig: You’ll have to post your problem again, it doesnt seem to be here!

  29. Great plugin, only one issue. If there is a link in the first few words of the post, the description will cut off before the link. So the description only ends up being like 5 words long.

  30. Hello! Nice Feature. But is it a Bug? Everytime, when I update any post the “Auto-Index” “meta_id” of the table “wp_postmeta” increase. Is this normal? Thank you for your answer…

  31. My second problem ist that german letters like “ä,ö,ü” will not display correct.
    The site source shows them as ?. What can i do? Thank you already!

  32. thanks for this plugin. To get a valid xHTML document, I had to put a space before the closing of both metag tags “keywords” and “description”.

    eg. echo ”.”\r\n”;

    michael

  33. Thanks – this is just fantastic! I can now move my static pages into WordPress with their custom meta tags. Awesome!

    One small feature request: can you code the plugin to make the “minus” sign appear on the “write post” window? (so I can hide the meta tag fields by default and only show the fields when I specifically need it).

    Ok, the above explanation is lousy and English is not my first language, but I hope you’ll understand: mostly all sections in the “write post” window have a minus sign to collapse them and get them out of sight. Can the meta fields be hidden too?

  34. […] HeadSpace:网页html头的meta数据管理工具。简而言之,就是可以按照你的意愿为每一篇文章添加keywords、content、样式表连接以及其他内容。 […]

  35. Thanks John,

    I did read the “instructions above” but was not able to understand and process the info and programming instructions. As the result of a car accident 6 years ago and head injuries I sometimes just cannot figure out to things that require more than a few simple steps (drives me nuts) …that’s why I really appreciate the plugins. 🙂

    At any rate, I ended up modifiying index.php through cut & paste of part of the header file into index.php. Seems to work.

  36. Have you thought of moving the editing widget from the edit_form_advanced action to the dbx_post_advanced action, that way the widget shows up with the rest of the optional components below the upload box.

  37. Great plugin. Thanks. I un into one issue that I notice has been mentioned before but I still encounter it.

    I use version 2.6 on WP 2.0.4

    When I use the %%excerpt%% tag under global description > single it inserts the ENTIRE body of the post, cuts off the first few characters and uses odd characters.

    Is this something on my side or is something else bugging it.

    Thanks

  38. I’m getting the same result with the %%excerpt%% tag so it’s not just Gemme. Is there a way to limit the %%excerpt%% tag to a defined number of characters so it can be used in the meta description field?

    Is there any way keywords and phrases could be pre-defined by the user, and then only be added to the meta keyword field if the pre-defined word or phrase is an exact match with a word or phrase in the post? This would allow more relevent keywords and avoid having off topic or irrelevant words in the meta keywords field.

  39. It kicks Ass! I’ve gone through six (6) head meta plug-ins today and yours is the best.

    Couple of suggestions (because I always want more):

    1) add one more field of Global Keywords: ALWAYS. These would be listed in the keywords meta tag of every page, concatenated with the keywords specific to the particular page/post.

    2) make %%excerpt%% a check box in the editing screen. Pre-checked if the global “use excerpt as description” is checked on the Options -> HeadSpace page.

    Can’t think of anything else… unbelievable!

  40. One more improvement needed:

    Today you use category description for the META DEscription tag on the category pages.

    1) If the description is no t there, shouldn’t the “Gloabal Description – Multiple” be used? (right now it’s nothing)

    2) Same scenario – category page: how about some keywords? Global-Keywords – Multiple would be a good start…

    Thx! – It’s too good, I just have to nitpick! 🙂

  41. Hi John,

    a very nice plugin!

    But I have some issues with our german umlauts. If I use them in titles or even in “global raw data” the umlauts are not saved right. So they are messed up inside the admin view and of course inside the meta tags.

    For example the “Gästebuch” on my website. The %%title%% tag will become gästebuch.
    The same effect with text entered in custom fields. “Kontaktmöglichkeit” is saved as Kontaktmöglichkeit and displayed inside the meta tags as Kontaktmöglichkeit

    Tested locally with xampp and on my live website.

  42. Is it just me?

    It seems that Headspace 2 conflicts with widgets – when it is activated I cannot get any response from the widget-specific menus…

  43. […] 9: HeadSpace2 by John Godley: Another SEO must have for WordPress blogs. This allows modification of the info between the tags on each page. Stuff like meta tags, keywords, title, description and so on. You can either have the data pulled manually from the post or insert it manually. I don’t think I’m using this to its full potential as yet but my pages are showing up on the SEs with the proper info and my keyword searches are going up. […]

  44. Hi John,
    great plug-in, but same problems with german umlauts. you spoke about version 2.7 that will fix this, is it already available as beta? thank you! great plugin so far
    knaegele

  45. With this plugin enabled I cannot edit any of the options for my widgets. I have to deactivate this plugin first.

    Any ideas what might be causing this bizarre interaction?

  46. John

    I’ve been looking for something like this for a while now, cheers.

    Will this also ensure that the title tag will be different to the post title, if required?

    Also, I’ve just activated the plug-in in WP. I uploaded the whole folder, not just headspace.php. I can’t see the fields below the post/page area and am wondering if I’ve done something wrong?

    Thanks

    Ray

  47. Hi John, great plugin. But on the single pages I get always this error:

    Warning: implode() [function.implode]: Bad arguments. in /home/content/h/m/o/hmorandell/html/inmyplace.info/wp-content/plugins/headspace2/headspace.php on line 368

    Warning: Invalid argument supplied for foreach() in /home/content/h/m/o/hmorandell/html/inmyplace.info/wp-content/plugins/headspace2/headspace.php on line 412

    Warning: Invalid argument supplied for foreach() in /home/content/h/m/o/hmorandell/html/inmyplace.info/wp-content/plugins/headspace2/headspace.php on line 418

    You can check it here: http://inmyplace.info/2007/01/09/first-commercial-of-nokia-n95/

    Do you know what I’m doing wrong? I’m using wordpress 2.1 beta.

    Thanks
    HM

  48. Sorry … but HeadSpace2 doesn’t work with my WP 2.0.6. In the admin panel I see a transparent box with no fields. I can drag it … put it pulls back to its origin position. Also I can’t enter anything. How can I solve this?

  49. After activating the plugin,
    I can’t see default input boxes for
    Meta Description and Meta Keywords
    in Write Post page. What can be the
    reason?

  50. Hi there, I’ve been using this plugin for a while, but just upgraded to wordpress 2.1 and it doesn’t look like this plugin is going to be compatible. There’s probably not much you’d need to do to get it going again, I just have no idea what I’m doing.

  51. Hey there. To echo what Pickles said, it would appear that HeadSpace 2 is broken in WP 2.1. To clarify, when installed, I get the following warnings on all sub pages (ie not the homepage) of the wordpress blog.
    Warning: implode() [function.implode]: Bad arguments. in /wp-content/plugins/headspace2/headspace.php on line 284
    Warning: Invalid argument supplied for foreach() in /wp-content/plugins/headspace2/headspace.php on line 328
    Warning: Invalid argument supplied for foreach() in /wp-content/plugins/headspace2/headspace.php on line 334

  52. hi,
    same problem here with wordpress 2.1

    Warning: implode(): Bad arguments. in wp-content/plugins/headspace.php on line 285

    regards

    stefan

  53. Warning: implode() [function.implode]: Bad arguments. in /home/girldir/public_html/wp-content/plugins/headspace2/headspace.php on line 285

    Warning: Invalid argument supplied for foreach() in /home/girldir/public_html/wp-content/plugins/headspace2/headspace.php on line 329

    Warning: Invalid argument supplied for foreach() in /home/girldir/public_html/wp-content/plugins/headspace2/headspace.php on line 335

    Testing the plugin with wp 2.1

  54. The WordPress 2.1 issue has now been resolved, and I’ve add a bunch of new features too. If you’re upgrading from an earlier version I’d suggest re-reading this page to familiarise yourself with the changes.

  55. the recent version gives me a
    Rendering of admin template /home/www/doc/*****/*****.com/www/wp-content/plugins/headspace2/view/admin/submenu.php failed

    Rendering of admin template /home/www/doc/*****/*****.com/www/wp-content/plugins/headspace2/view/admin/options.php failed

    in the options area, and the plugins-page still tells me, its v 2.6. Could it be that you’ve forgotten to upload the recent version or link to it?

  56. I hadn’t recursively zipped the directory, so most of the new files were missing. Fixed and the real new version is in place.

  57. I have discovered another issue. I am trying to add head_keywords to every post, but since I installed the newest version, the head_keywords is always reset to “options” when I publish a post. Please look into that John, thanks!

  58. John, superb plugin.

    Are your upload instructions wrong?

    Don’t you mean, ‘Upload the folder Headspace2 to your /wp-content/plugins directory’ ?

  59. Hi John,
    are you planning to release an Inscript Update because of WP 2.1 like you did for HeadSpace? I decribe the inscript/Wp 2.1 problem I have at your Inscript page.

Comments are closed.