A year ago, I created a Greasemonkey user script that displays the most recent 5 tweets for the query that you are searching for at the top of Google search results.

Today I have created an Extension for Google Chrome that does the same:

Get realtime Twitter results on your Google searches using Google Chrome:

  1. Install the Google Chrome Extension from the Extensions Gallery: Twitter Search Results on Google Chrome Extension.
  2. Click the "Install" button on the above page.

If you like this, please tweet it by clicking here! (short url for this page is https://mt-hacks.com/bkAB)

Feedback and suggestions are welcome, via comments on this entry, or via Twitter reply, Google Buzz, etc.

What about a Google Wave plugin for Movable Type, as a way to engage in real-time conversations about blog entries. What do think? Below is just a test, you should see an embedded Wave. If you have a Google Wave account, please join the wave and share your thoughts. (I don't have any Google Wave invites, sorry). One of the interesting things about using a Wave for blog comments is that after you join a wave on a blog site, that Wave will show up in your Google Wave inbox going forward. This enables you rejoin the conversation later directly from within Wave. Some bloggers may worry that this may mean less return traffic to their sites, which could be true, but it certainly could boost the amount of discussion around blog entries.

Twitter Commenters is a plugin for Movable Type that enables commenters to sign-in and comment on your blog using their Twitter account. Versions 2+ includes support for Twitter's OAuth authorization system and enables commenters to automatically share their comments to their Twitter stream.

Note: Version 2.1 fixes a serious bug when using OAuth, users would get a Comment Submission Error, saying that Name and Email are required. All sites running v2.0 should upgrade to v2.1 using the download link below. Simply upload the new files, no need to adjust settings or templates

Basic Auth (default):

OAuth:

Twitter comment authentication works like other auth methods in MT -- once you have installed the plugin you can enable Twitter as one of the auth options, as shown in the image above.

How It Works - Basic Auth

When the user enters their Twitter username and password in the form (shown above), the plugin submits those to the Twitter API to verfiy the credentials. If verified, the user can then post comments using their Twitter account. Their Twitter 'display name' will be shown beside their comments, and their Twitter avatar (profile photo) will be imported and shown beside their comments (if userpics are enabled in your templates).

Note that users' Twitter passwords are not stored in the MT database. An upcoming version of this plugin will enable Twitter's new OAuth support, in which case passwords would never be sent to MT at all. That version will like have an option for commenters to cc. their comments to their Twitter account. Stay tuned.

How It Works - OAuth

New in Version 2.0, you can optionally enable Twitter's new OAuth authorization system. With OAuth, user never have to submit their password info to your server. Instead, they click a "sign in with Twitter" button and they are taken to a page on Twitter.com asking them to authorize the application (see image above). One they click "Allow" they are returned to your site and they then post comments using their Twitter account. As with basic auth, their Twitter 'display name ' will be used as well as their Twitter avatar (profile photo).

Share Comments on Twitter

A new feature in version 2.0, only supported via OAuth, enables commenters to optionally share their comment to their Twitter stream. All they have to do is click a checkbox, no need to re-authorize or enter Twitter account info.

Try it Now

MT Hacks has the new OAuth method enabled. Try it now:

Click here to login with your Twitter account. After logging in, you will be returned to this entry, and you can leave a comment below.

Requirements

  • Net::Twitter 2.07 perl module (included with plugin) (note: do not upgrade to version 2.9+ of this module)
  • Net::Twitter::OAuth perl module (included with plugin)
  • Net::OAuth perl module (included with plugin)
  • Net::OAuth::Simple perl module (included with plugin)
  • JSON::Any perl (included with plugin)

Note: Net::Twitter requires newer versions of the libwww-perl collection of Perl modules. I am not sure what the minimum version required is, but on my server, I had to upgrade in order to get Net::Twitter to work. So if you get strange errors, try installing the latest version in your 'extlib' directory of your MT. Update: A common error message is: "Can't locate object method "default_header" via package "LWP::UserAgent" -- if you see this error, this the problem.

Download Twitter Commenters

,<$MTAjaxRatingVoteCount type="twittercommentersdownloads" id="1"$>,0);">Download Now
Downloads: <$MTAjaxRatingVoteCount id="1" type="twittercommentersdownloads"$>

Installation

  1. Upload the contents of the 'plugins' folder to the 'plugins' directory for your MT install.
  2. Upload the contents of the 'mt-static' folder to your 'mt-static' directory.
  3. For each blog you want to enable, go to Preferences > Registration and check the box for 'Twitter'.

Enabling Twitter OAuth

Unfortunately, this is not as easy as it could be, maybe Twitter will make it easier in future. To set this up you need to create an Application on Twitter:

  1. While logged in to your Twitter account, go to http://twitter.com/oauth_clients/new.
  2. Fill out the form on that page:
    • Give it a unique name and description.
    • For 'Application Website', enter https://mt-hacks.com/twittercommenters.html. For 'Organization', enter MT Hacks.
    • For 'Website' enter https://mt-hacks.com.
    • For 'Application Type' choose 'Browser'.
    • For 'Callback URL' enter the full URL to your comments script followed by '?__mode=login_external&key=Twitter'. Example: http://www.domain.com/cgi-bin/mt/mt-comments.cgi?__mode=login_external&key=Twitter
    • For 'Default Access type' choose 'Read & Write'.
    • Check the box for 'Yes, use Twitter for login'
    • Hit the 'Save' button.
  3. After saving the application, you should now see a screen with a 'Consumer key' and 'Consumer secret'. Copy those to the system plugin Settings (System Overview > Plugins > Twitter Commenters > Settings). and save the plugin settings.
  4. To enable the share comment on Twitter option, add the <mt:TwitterShareCommentOption> tag below the comment text part of your comment form. This will display a checkbox option to people logged in via Twitter OAuth.
  5. Rebuild your entry pages and test it out

As always, feedback is appreciated.

Follow @mthacks on Twitter for updates and other MT and Twitter hacks.

A new Open Source project has been launched today called Open Melody, which is a fork of Movable Type Open Source. Open Melody has been created by the MT developer community in order to take the product to the next level.

Why fork Movable Type? The Open Melody FAQs explain, "The community created Melody out a shared passion for Movable Type and a shared desire to see it flourish as a platform. We felt that the best and quickest way to achieve that goal was to create a product in which the community was inherently entrusted with a greater degree of control over its direction, communication channels and roadmap, and rewarded with more transparency and a greater sense of belonging."

In the spirit of being driven by the community, the current state of Open Melody is very similar to the latest version of MT. Going forward, features will be added and changes will be made in accordance with the community collaboration. So its too early to say what Melody will look like, and how it will be different from MT. Time will tell.

Why This is a Good Thing

Over two years ago, Six Apart, the creator of Movable Type open sourced the code for the core Movable Type application. While its was an exciting and bold move, the announcement and product naming choices were confusing to many -- the differences between Movable Type Open Source and the Movable Type Commercial product and closed source add-ons sold by Six Apart weren't easy to grasp, and some even disputed the newly open source nature of core application.

Bottom line is that the core of MT has been open source for 2 years, so what are the reasons and potential benefits of a separate branch of the application, why do we need Melody? In my opinion, the key benefit is that Melody will be developed completely by the community, with no direct ties to a commercial for-profit enterprise. While core MT has been open source licensed, the product planning process and much (but not all) of the discussion, prioritization, and release planning and scheduling were closed to those outside of Six Apart. Six Apart also acted as a gatekeeper to code contributions, with final say over what made into the final product. Both of these may be common for open source projects lead by commercial entities, and are fair enough -- Six Apart is a business and like any business they can and should make decisions based on the commercial interests of the company. But for the community of developers, consultants, and users, this didn't feel very open, at least in my opinion. The feature roadmap was being driven internally at Six Apart, not in a collaborative way with the community at large. [This is not to say that Six Apart did not listen to feature suggestions of the community -- many of the features added to the product were in response to community requests] The reality, I think, is that the internal business objectives that informed the development and product planning process are not fully aligned with the objectives of the broader community. This is an unavoidable reality, there is no right or wrong here, only different contexts and thus different perspectives and goals. For these reasons, I think many developers and end-users shied away from Movable Type -- despite the open source license, the product was controlled by a single for-profit company, and the ability of the external community to contribute and collaborate was limited.

Open Melody changes that dynamic. The core code becomes freed from the business concerns and objectives, thus enabling it to evolve in a way that is fully aligned with objectives and desires of the community. This means that roadmap planning, feature discussions, and development will all be completely open and collaborative. I hope that this will help attract more developers to the project and lead to faster release cycles and richer features that users want to see. With Open Melody, everyone wins: users, developers, community, the product, and even Movable Type and Six Apart. Its going to exciting to see how Melody evolves.

Current User of Movable Type?

If you are a current user of MT, you may be wondering what this means for you, should you switch when the time comes, or stay with MT? Today, there is a single, easy answer: wait and see. Melody is just getting started and it will probably be at least 6 months before a stable release is ready. So sit back and wtach how it evolves -- or better yet, contribute! Even if you are not a programmer, you can contribute by offering feature suggestions, etc. Another important thing to keep in mind is that a goal of Melody is to maintain compatibility with MT, so you should be able to switch back and forth, and use the same plugins and themes with either.

Melody and MT Hacks

I believe in the goals behind Melody and I hope it will be successful. I plan to contribute however I can, while at the same continuing to support the Movable Type platform. My goal is that plugins from MT Hacks will be supported on both platforms, which is aligned with Melody's objective of compatibility with MT. So if you use plugins by MT Hacks and you decide to move to Melody in future, you can continue to use the same plugins, and if you continue with MT, you can also keep using the same plugins. Of course, like any core MT upgrade, sometimes plugin updates are required, but those should work on both platforms.

Twitter Commenters is a plugin for Movable Type that enables commenters to sign-in and comment on your blog using their Twitter account. Versions 2 includes support for Twitter's OAuth authorization system and enables commenters to automatically share their comments to their Twitter stream.

Basic Auth (default):

OAuth:

Twitter comment authentication works like other auth methods in MT -- once you have installed the plugin you can enable Twitter as one of the auth options, as shown in the image above.

How It Works - Basic Auth

When the user enters their Twitter username and password in the form (shown above), the plugin submits those to the Twitter API to verfiy the credentials. If verified, the user can then post comments using their Twitter account. Their Twitter 'display name' will be shown beside their comments, and their Twitter avatar (profile photo) will be imported and shown beside their comments (if userpics are enabled in your templates).

Note that users' Twitter passwords are not stored in the MT database. An upcoming version of this plugin will enable Twitter's new OAuth support, in which case passwords would never be sent to MT at all. That version will like have an option for commenters to cc. their comments to their Twitter account. Stay tuned.

How It Works - OAuth

New in Version 2.0, you can optionally enable Twitter's new OAuth authorization system. With OAuth, user never have to submit their password info to your server. Instead, they click a "sign in with Twitter" button and they are taken to a page on Twitter.com asking them to authorize the application (see image above). One they click "Allow" they are returned to your site and they then post comments using their Twitter account. As with basic auth, their Twitter 'display name ' will be used as well as their Twitter avatar (profile photo).

Share Comments on Twitter

A new feature in version 2.0, only supported via OAuth, enables commenters to optionally share their comment to their Twitter stream. All they have to do is click a checkbox, no need to re-authorize or enter Twitter account info.

Try it Now

MT Hacks has the new OAuth method enabled. Try it now:

Click here to login with your Twitter account. After logging in, you will be returned to this entry, and you can leave a comment below.

Requirements

  • Net::Twitter 2.07 perl module (included with plugin) (note: do not upgrade to version 2.9+ of this module)
  • Net::Twitter::OAuth perl module (included with plugin)
  • Net::OAuth perl module (included with plugin)
  • Net::OAuth::Simple perl module (included with plugin)
  • JSON::Any perl (included with plugin)

Note: Net::Twitter requires newer versions of the libwww-perl collection of Perl modules. I am not sure what the minimum version required is, but on my server, I had to upgrade in order to get Net::Twitter to work. So if you get strange errors, try installing the latest version in your 'extlib' directory of your MT. Update: A common error message is: "Can't locate object method "default_header" via package "LWP::UserAgent" -- if you see this error, this the problem.

Download Twitter Commenters

,<$MTAjaxRatingVoteCount type="twittercommentersdownloads" id="1"$>,0);">Download Now
Downloads: <$MTAjaxRatingVoteCount id="1" type="twittercommentersdownloads"$>

Installation

  1. Upload the contents of the 'plugins' folder to the 'plugins' directory for your MT install.
  2. Upload the contents of the 'mt-static' folder to your 'mt-static' directory.
  3. For each blog you want to enable, go to Preferences > Registration and check the box for 'Twitter'.

Enabling Twitter OAuth

Unfortunately, this is not as easy as it could be, maybe Twitter will make it easier in future. To set this up you need to create an Application on Twitter:

  1. While logged in to your Twitter account, go to http://twitter.com/oauth_clients/new.
  2. Fill out the form on that page:
    • Give it a unique name and description.
    • For 'Application Website', enter https://mt-hacks.com/twittercommenters.html. For 'Organization', enter MT Hacks.
    • For 'Website' enter https://mt-hacks.com.
    • For 'Application Type' choose 'Browser'.
    • For 'Callback URL' enter the full URL to your comments script followed by '?__mode=login_external&key=Twitter'. Example: http://www.domain.com/cgi-bin/mt/mt-comments.cgi?__mode=login_external&key=Twitter
    • For 'Default Access type' choose 'Read & Write'.
    • Check the box for 'Yes, use Twitter for login'
    • Hit the 'Save' button.
  3. After saving the application, you should now see a screen with a 'Consumer key' and 'Consumer secret'. Copy those to the system plugin Settings (System Overview > Plugins > Twitter Commenters > Settings). and save the plugin settings.
  4. To enable the share comment on Twitter option, add the <mt:TwitterShareCommentOption> tag below the comment text part of your comment form. This will display a checkbox option to people logged in via Twitter OAuth.
  5. Rebuild your entry pages and test it out

As always, feedback is appreciated.

Follow @mthacks on Twitter for updates and other MT and Twitter hacks.

Twitter Commenters is a plugin for Movable Type that enables commenters to sign-in and comment on your blog using their Twitter account.

Twitter comment authentication works like other auth methods in MT -- once you have installed the plugin you can enable Twitter as one of the auth options, as shown in the image above.

How It Works

When the user enters their Twitter username and password in the form (shown above), the plugin submits those to the Twitter API to verfiy the credentials. If verified, the user can then post comments using their Twitter account. Their Twitter 'display name' will be shown beside their comments, and their Twitter avatar (profile photo) will be imported and shown beside their comments (if userpics are enabled in your templates).

Note that users' Twitter passwords are not stored in the MT database. An upcoming version of this plugin will enable Twitter's new OAuth support, in which case passwords would never be sent to MT at all. That version will like have an option for commenters to cc. their comments to their Twitter account. Stay tuned.

Try it Now

Click here to login with your Twitter account. After logging in, you will be returned to this entry, and you can leave a comment below.

Requirements

  • Net::Twitter perl module (included with plugin)
  • JSON::Any perl (included with plugin)

Note: Net::Twitter requires newer versions of the libwww-perl collection of Perl modules. I am not sure what the minimum version required is, but on my server, I had to upgrade in order to get Net::Twitter to work. So if you get strange errors, try installing the latest version in your 'extlib' directory of your MT.

Download Twitter Commenters

,<$MTAjaxRatingVoteCount type="twittercommentersdownloads" id="1"$>,0);">Download Now
Downloads: <$MTAjaxRatingVoteCount id="1" type="twittercommentersdownloads"$>

Installation

  1. Upload the contents of the 'plugins' folder to the 'plugins' directory for your MT install.
  2. Upload the contents of the 'mt-static' folder to your 'mt-static' directory.
  3. For each blog you want to enable, go to Preferences > Registration and check the box for 'Twitter'.

As always, feedback is appreciated.

Follow @mthacks on Twitter for updates and other MT and Twitter hacks.

Over at my Moopz site, I have just released a new Twitter Bookmarklet that make it easy to submit the link of the page you are reading. A pop up appears with a Twitter-like interface, enabling you to quickly tweet the page you are reading. It is designed to be clean and easy to use, a few seconds and you are done. The Twitter Bookmarklet looks like this:

Click here to head over to Moopz to get the Bookmarklet or to try it now.

During the past few weeks, there has been a lot of discussion about whether Twitter's "real time search" could pose a threat to Google.

While I am not sure if Twitter poses a threat to Google, I think it is clear that real-time search is increasingly important. And you can be sure that Google knows it. Will Google try to acquire Twitter, or take some other approach? Time will tell, but rather that wait, I decided to get realtime twitter search results on Google today. I created a Greasemonkey user script that does exactly this. It displays the most recent 5 tweets for the query that you are search for, giving both real-time Twitter search results and Google results on the same page:

I have been using it for a few days now and I think it really adds some freshness to Google search results pages. Not only do you get the web pages that have been indexed by Google, but also relevant twitter conversations that are happening right now. One day I think we may see Google release something like this, but until then there is the Twitter Search Results on Google Greasemonkey script.

Get realtime Twitter results on your Google searches:

  1. If you don't already have it, install the Greasemonkey add-on for Firefox.
  2. Click the "Install" button on the "Twitter Search Results on Google" page on userscripts.org.

If you like this, please tweet it by clicking here! (short url for this page is http://moopz.com/9ZDS)

Update: Also see my new Twitter Bookmarklet and Tweet This Page Link tool.

Feedback and suggestions are welcome, via comments on this entry, or via Twitter reply, FriendFeed, etc.

Selective Cloner is plugin for Movable Type that enables administrators to clone (copy) existing blogs. Unlike the blog cloning tool that comes with MT, Selective Cloner only clones Blog Settings, Permissions, and Templates. This plugin enables you to quickly create new blog with all of the same settings and templates as an existing blog -- in seconds you can have a new blog up and running, with the same look and feel. This is handy for blog networks or organizations who have more than one blog with the same templates.

Installation

Upload the contents of the 'plugins' directory to the 'plugins' directory of your MT install.
Go to "Manage Blogs" at the system level, click the checkbox beside the blog you want to clone, and choose "Clone Blog (Perms,Settings,Templates)".

License: GPL

Download Selective Cloner

,<$MTAjaxRatingVoteCount type="selectiveclonerdownloads" id="1"$>,0);">Download Now
Downloads: <$MTAjaxRatingVoteCount id="1" type="selectiveclonerdownloads"$>

In MT 4.2, the "dirify" function was changed so that dashes/hypens ("-") are no longer dropped. This caused broken for some sites who used the dirify function in their archive URL mappings.

This plugin restores the old dirify function, which will drop dashes during dirification.

Download Now

,<$MTAjaxRatingVoteCount type="dirifyolddownloads" id="1"$>,0);">Download Now
Downloads: <$MTAjaxRatingVoteCount id="1" type="dirifyolddownloads"$>

Ps. An alternative solution to this issue can be found here.