About Technorati:

Technorati is a real-time search engine that keeps track of what is going on in the blogosphere the world of weblogs... Technorati displays what's important in the blogosphere which bloggers are commanding attention, what ideas are rising in prominence, and the speed at which these conversations are taking place. Technorati makes it possible for you to find out what people on the Internet are saying about you, your company, your products, your competitors, your politics, or other areas of interest all in real-time. All this activity is monitored and indexed within minutes of posting. Technorati provides a live view of the global conversation of the web.


With a few code changes, BlogCFC can integrate with Technorati so that new blog posts automatically notify or ping Technorati to add your blog to its high-priority queue to be indexed, and so that your blog categories double as Technorati tags which adds semantic meaning to be used as metadata in Technorati searching and ranking.

Here's how to integrate your BlogCFC with Technorati:




  1. Get a free membership with Technorati
    Join Technorati today to get powerful watchlists, a custom profile, claim your blog, and free search tools. As a member, you can:
    • Add a photo to your profile and it will appear next to every search for your blog.
    • Help people find your weblog and learn more about you and your blog.
    • Create free RSS Watchlists, stay informed, track conversations.
    • Enable your readers to search your blog with the Technorati Searchlet.
    Become a member


  2. Claim your blog
    Claiming your blog is like registering the blog with Technorati and associating it with your membership. You'll be required to place a small piece of javascript somewhere on the blog as proof that you control the blog. Once added to the blog, go back to Technorati.com to finish the claim form where they'll scrape your blog to confirm the code has been added.

    TalkingTree.com uses the Aura skin, and I found that when adding the Technorati javascript to the sidebar that the visual display of the sidebar was noticibly delayed while the javascript rendered its HTML. Since the Technorati script should be present in the blog but doesn't need to be displayed, I moved it to the bottom of the blog right before the closing body and closing html tags, and wrapped it in a div tag with display set to none. This lets Technorati scrape my blog and find my id while also letting me prevent it from interrupting the display.

    "display:none;">

    [/cfoutput>


    When submitting new blog entries, pingTechnorati() will notify Technorati via XML RPC that your blog has been updated, and if you'll get a Javascript popup alert with a yes/no success notification. The popup text could be localized I suppose by using one of the properties in the includes/main_{locale}.properties, or by adding a new entry to the locale properties file and referring to it in the Javascript alert text.

    This popup is not required, but I like it as a visual confirmation that the Technorati ping has succeeded, or not.


  3. Add Technorati tags
    "Tags are a new way to explore the real-time web. Think of a tag as a category or subject. People are tagging their posts, photos, and more."
    Take advantage of Technorati tags, a form of semantic metadata, by simplying adding rel="tag" to the blog entry byline links for the category.

    Update: The confusion I express about using Technorati Tags in this post appears to have been unncessary. Technorati had a known issue with them, as I discovered on Jeremy's Linux Questions blog. Using rel="tag" seems to be working for me now.

    Near lines 120 - 130 in index.cfm you'll find the code that builds the category links for the blog footer. Just add the rel attribute to the anchor tag like this:

    [cfloop index="x" from=1 to="#listLen(categoryNames)#">
    "#cgi.script_name#?mode=cat&catid=#listGetAt(categoryIDs,x)#" rel="tag">
    #listGetAt(categoryNames,x)#

    [cfif x is not listLen(categoryNames)>,[/cfif>
    [/cfloop>


    Since blog entry text is cached, reinitialize the blog by using the ?reinit url switch.

    I'm not entirely sure that this is proper usage of Technorati tags. The RSS feeds contain a dc:subject but not category element, so that may or may not be sufficient. The Tags description sounds like either one by itself is ok, but the code block example shows both together.

    Using the category link for rel="tag" might not be good enough by itself since the "tag standard" isn't well defined on the Tags help page. It might be more appropriate to add optional links for your category to http://technorati.com/tags/YOURCATEGORYHERE in the blog byline, too.

    For example, you could copy the Technorati bubble icon to your system, and use it for an anchor tag which links to Technorati Tags for your blog category, like this code snippet that after the Category byline:



  4. Add a Technorati search pod
    Add a Technorati Searchlet as a BlogCFC pod to the side bar by copying includes/pods/search.cfm and saving the copy as includes/pods/technorati.cfm. Edit the technorati.cfm content of the module to add the code generated by the Searchlet wizard when logged into Technorati, or just copy it from here. The wizard adds a search button, button but I replaced it with an OnSubmit() function instead.

    [cfmodule template="/#application.root#/tags/podlayout.cfm" title="Technorati">
    [cfoutput>
    "get" action="http://technorati.com/cosmos/search.html"
    style="width:13em;text-align:left"
    onSubmit="return(this.search.value.length != 0)">

    "padding:4px">
    "http://technorati.com/">Technorati search
    "hidden" name="sub" value="searchlet" />
    "width:12em" type="text" name="url" maxlength="255" value="" />
    for="ts_yb" title="">
    "radio" checked="checked" name="from" id="ts_yb" value="" />
    this blog
    for="ts_www">
    "radio" name="from" id="ts_www" value="" /> all blogs



    "http://www.technorati.com/profile/{your_profile_id_here}">
    Technorati Profile

    [/cfoutput>
    [/cfmodule>


    Then to get the new pod to show up in the sidebar, edit includes/layout.cfm to add the searchlet pod under the search pod, like so:

    [cfinclude template="/#application.root#/includes/pods/search.cfm">
    [cfinclude template="/#application.root#/includes/pods/technorati.cfm">




On a related note, check out Jeremy Zawodny's blog entry on "What if Intelliseek Bought Technorati".