<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MaisonBisson.com &#187; plugins</title>
	<atom:link href="http://maisonbisson.com/blog/post/tag/plugins/feed/" rel="self" type="application/rss+xml" />
	<link>http://maisonbisson.com</link>
	<description>A bunch of stuff I would have emailed you about.</description>
	<lastBuildDate>Sat, 14 Nov 2009 20:14:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Plugin Options Pages in WordPress 2.7</title>
		<link>http://maisonbisson.com/blog/post/13208/making-plugin-options-pages-compatible-with-wordpress-27/</link>
		<comments>http://maisonbisson.com/blog/post/13208/making-plugin-options-pages-compatible-with-wordpress-27/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 15:45:07 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[compatibility]]></category>
		<category><![CDATA[form validation]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[WordPress 2.7]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/?p=13208</guid>
		<description><![CDATA[
WordPress 2.7 requires that plugins explicitly white list their options using a couple new functions. WordPress MU has required this security measure for a while, and it&#8217;s nice to see an evolved form of it brought to the core code. Migrating Plugins and Themes to 2.7 article in the codex offers some guidance, but here&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-13208"><!-- &nbsp; --></abbr>
<p>WordPress 2.7 requires that plugins explicitly white list their options using a couple new functions. WordPress MU has required this security measure for a while, and it&#8217;s nice to see an evolved form of it brought to the core code. <a href="http://codex.wordpress.org/Migrating_Plugins_and_Themes_to_2.7#Plugins" title="Migrating Plugins and Themes to 2.7 « WordPress Codex">Migrating Plugins and Themes to 2.7</a> article in the codex offers some guidance, but here&#8217;s how it works:</p>
<p>First, register each option for your plugin during the admin_init action:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> myplugin_admin_init<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	register_setting<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'my-options-group'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'my-option-name-1'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'absint'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	register_setting<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'my-options-group'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'my-option-name-2'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'wp_filter_nohtml_kses'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
add_action<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'admin_init'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'myplugin_admin_init'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>In the example above, the value for <code>my-option-name-1</code> will be filtered by <code>absint</code> before being saved to the options table. <code>my-option-name-2</code> will be stripped of any HTML by  <code>wp_filter_nohtml_kses</code>.</p>
<p>Then build a form like this prototype:</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;form method=&quot;post&quot; action=&quot;options.php&quot;&gt;
&nbsp;
&lt;?php settings_fields('my-options-group'); ?&gt;
&nbsp;
&lt;input name=&quot;my-option-name-1&quot; id=&quot;my-option-name-1&quot; type=&quot;checkbox&quot; value=&quot;1&quot; &lt;?php checked('1', get_option('bsuite_insert_related')); ?&gt; /&gt;
&nbsp;
&lt;input name=&quot;my-option-name-2&quot; id=&quot;my-option-name-2&quot; type=&quot;text&quot; value=&quot;&lt;?php format_to_edit( get_option( 'bsuite_insert_related' )) ?&gt;&quot; /&gt;
&nbsp;
&lt;input type=&quot;submit&quot; name=&quot;Submit&quot; value=&quot;&lt;?php _e('Save Changes') ?&gt;&quot; class=&quot;button&quot; /&gt;
&nbsp;
&lt;/form&gt;</pre></div></div>

<p>Easy.</p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/13208/making-plugin-options-pages-compatible-with-wordpress-27/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>WordPress Event Calendaring Plugins</title>
		<link>http://maisonbisson.com/blog/post/12723/wordpress-event-calendaring-plugins/</link>
		<comments>http://maisonbisson.com/blog/post/12723/wordpress-event-calendaring-plugins/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 16:31:32 +0000</pubDate>
		<dc:creator>Casey</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[calendering]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[events calendar]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/?p=12723</guid>
		<description><![CDATA[
I actually use Event Calendar, which has been abandoned for some time. Looking at the alternatives listed in the Plugin Directory, Calendar, Events Calendar, and Gigs Calendar add full calendar management features to WordPress. While ICS Calendar, iCal Events, and Upcoming Events, simply offer the ability to display calendar data from elsewhere.
What I liked about [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-12723"><!-- &nbsp; --></abbr>
<p>I actually use <a title="Event Calendar" href="http://wpcal.firetree.net/">Event Calendar</a>, which has been abandoned for some time. Looking at the alternatives listed in the Plugin Directory, <a title="WordPress › Calendar « WordPress Plugins" href="http://wordpress.org/extend/plugins/calendar/">Calendar</a>, <a title="WordPress › Events Calendar « WordPress Plugins" href="http://wordpress.org/extend/plugins/events-calendar/">Events Calendar</a>, and <a title="WordPress › Gigs Calendar « WordPress Plugins" href="http://wordpress.org/extend/plugins/gigs-calendar/">Gigs Calendar</a> add full calendar management features to WordPress. While <a title="WordPress › ICS Calendar « WordPress Plugins" href="http://wordpress.org/extend/plugins/wordpress-ics-importer/">ICS Calendar</a>, <a title="WordPress › iCal Events « WordPress Plugins" href="http://wordpress.org/extend/plugins/ical-events/">iCal Events</a>, and <a title="WordPress › Upcoming Events « WordPress Plugins" href="http://wordpress.org/extend/plugins/upcoming-events/">Upcoming Events</a>, simply offer the ability to display calendar data from elsewhere.</p>
<p>What I liked about the old Event Calendar plugin is how events were posts. Creating an event started with creating a new post. Searching and browsing events was the same as for posts. I haven&#8217;t yet tried any of the alternatives, but if none of them treat events as posts, I may find myself re-working the old plugin for better compatibility with current WordPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/12723/wordpress-event-calendaring-plugins/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>WordPress 2.6 Plugin and wp-config.php Path Changes</title>
		<link>http://maisonbisson.com/blog/post/12172/wordpress-26-plugin-and-wp-configphp-path-changes/</link>
		<comments>http://maisonbisson.com/blog/post/12172/wordpress-26-plugin-and-wp-configphp-path-changes/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 14:29:11 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Dispatches]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[paths]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[WordPress 2.6]]></category>
		<category><![CDATA[wp-content]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=12172</guid>
		<description><![CDATA[
Ozh&#8217;s tutorial explains the details, but the short story is that we&#8217;ll soon get WP_CONTENT_URL and WP_CONTENT_DIR constants. And this is more than just convenience, 2.6 allows site admins to put those directories anywhere they want, so the constants will be the only reliable way of finding that info.
]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-12172"><!-- &nbsp; --></abbr>
<p><a href="http://planetozh.com/blog/2008/07/what-plugin-coders-must-know-about-wordpress-26/" title="What Plugin Coders Must Know About WordPress 2.6 « planetOzh">Ozh&#8217;s tutorial explains the details</a>, but the short story is that we&#8217;ll soon get <code>WP_CONTENT_URL</code> and <code>WP_CONTENT_DIR</code> constants. And this is more than just convenience, 2.6 allows site admins to put those directories anywhere they want, so the constants will be the only reliable way of finding that info.</p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/12172/wordpress-26-plugin-and-wp-configphp-path-changes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress Survey Tools</title>
		<link>http://maisonbisson.com/blog/post/12156/wordpress-survey-tools/</link>
		<comments>http://maisonbisson.com/blog/post/12156/wordpress-survey-tools/#comments</comments>
		<pubDate>Thu, 03 Jul 2008 17:27:04 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Dispatches]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[surveys]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=12156</guid>
		<description><![CDATA[
Lorelle and Samir both point to a number of plugins to do surveys within WordPress, but neither of them say any of them are that good. And Samir is pretty disapointed: “at the end of it all, I never did find my ideal online survey tool.”
Survey Fly is the best recommendation from both of Lorelle [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-12156"><!-- &nbsp; --></abbr>
<p><a href="http://lorelle.wordpress.com/2007/02/15/testing-readers-survey-polling-rating-testing-and-reviewing-wordpress-plugins/" title="Testing Readers: Survey, Polling, Rating, Testing, and Reviewing WordPress Plugins « Lorelle on WordPress">Lorelle</a> and <a href="http://samirbharadwaj.com/blog/free-online-survey-tools-for-wordpress/" title="Free Online Survey Tools for WordPress | Samir Bharadwaj dot Com">Samir</a> both point to a number of plugins to do surveys within WordPress, but neither of them say any of them are that good. And Samir is pretty disapointed: “at the end of it all, I never did find my ideal online survey tool.”</p>
<p><a href="http://plugins.starkware.net/" title="Starkware Plugins">Survey Fly</a> is the best recommendation from both of Lorelle and Samir, but it isn&#8217;t WP2.5 compatible and was las updated in summer 2006. It&#8217;s also limited to tracking only one survey at a time. Ugh.</p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/12156/wordpress-survey-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>bSuite 4 beta 2</title>
		<link>http://maisonbisson.com/blog/post/12149/bsuite-4-beta-2/</link>
		<comments>http://maisonbisson.com/blog/post/12149/bsuite-4-beta-2/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 19:19:40 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bsuite bstat]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=12149</guid>
		<description><![CDATA[
I announced the bSuite 4 public beta not long ago, now I&#8217;ve just posted a new version to SVN that addresses some of the bugs and fleshes out some of the features. I have yet to update the bSuite page, but here&#8217;s a preview of what&#8217;s new or changed:

Additional stats reports
WP2.5-style tag input tools on [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-12149"><!-- &nbsp; --></abbr>
<p>I announced the <a href="http://maisonbisson.com/blog/post/12142/bsuite-4-public-beta" title="» bSuite 4 Public Beta">bSuite 4 public beta</a> not long ago, now I&#8217;ve just posted a <a href="http://svn.wp-plugins.org/bsuite/tags/4beta2/">new version to SVN</a> that addresses some of the bugs and fleshes out some of the features. I have yet to update the <a href="http://maisonbisson.com/blog/bsuite" title="» bSuite 4">bSuite page</a>, but here&#8217;s a preview of what&#8217;s new or changed:</p>
<ul>
<li>Additional stats reports</li>
<li>WP2.5-style tag input tools on the Page edit screen*</li>
<li>WP2.5-style category selector on the Page edit screen*</li>
<li>WP2.5-style excerpt input on the Page edit screen*</li>
<li>For multi-author sites: ability to grant edit permissions by role for each page (with a configurable default)</li>
<li>An “include” shortcode that makes it easy to show content from one post or page on another.</li>
</ul>
<p>About the new shortcode, use it like this:<br />
<code>[inclu</code><code>de post_id=“1234” url=“a url to a post or page in your blog” field=“post_excerpt”]</code></p>
<p>One of <code>post_id</code> or <code>url</code> is required; <code>field</code> is optional and defaults to <code>post_excerpt</code> first, then to <code>post_content</code> if there is no excerpt.</p>
<p>*Why would you want to input tags, set categories, or add an excerpt to a Page? They help readers find and explore our content. What&#8217;s so wrong with that?</p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/12149/bsuite-4-beta-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>bSuite 4 Public Beta</title>
		<link>http://maisonbisson.com/blog/post/12142/bsuite-4-public-beta/</link>
		<comments>http://maisonbisson.com/blog/post/12142/bsuite-4-public-beta/#comments</comments>
		<pubDate>Sun, 01 Jun 2008 22:00:00 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bsuite bstat]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=12142</guid>
		<description><![CDATA[
I&#8217;ve had a lot of features on the table for bSuite for a while, but this recently discovered comment from John Pratt (whose Smorgasboard.net is a lot of fun), kicked me into gear to actually get working on it again. The result is bSuite 4, which is probably what bSuite 3 should have been all [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-12142"><!-- &nbsp; --></abbr>
<p>I&#8217;ve had a lot of features on the table for bSuite for a while, but this <a href="http://wordpress.org/support/topic/143666#post-659957">recently discovered comment</a> from John Pratt (whose <a href="http://www.smorgasbord.net/">Smorgasboard.net</a> is a lot of fun), kicked me into gear to actually get working on it again. The result is <a href="http://maisonbisson.com/blog/bsuite/">bSuite 4</a>, which is probably what bSuite 3 should have been all along.</p>
<p><a href="http://www.flickr.com/photos/maisonbisson/2513646929/" title="bSuite4 vs. caching by misterbisson, on Flickr"><img src="http://farm3.static.flickr.com/2382/2513646929_0a0053b3a7_m.jpg" width="229" height="240" alt="bSuite4 vs. caching" style="float: right; border: 1px solid light-gray; margin: 0 0 6px 6px;" /></a>The big news is that I&#8217;ve finally revamped stats tracking to work with caching mechanisms like WP Cache, <a href="http://wordpress.org/extend/plugins/wp-super-cache/">WP Super Cache</a>, Varnish, or whatever else. I&#8217;ve also got the search word highlighting working again, and that&#8217;s cache-friendly too. Yay for javascript, I say.</p>
<p>And in addition to making the stats cache-friendly, I&#8217;ve made them a little smarter, faster, and more useful. bSuite now tracks sessions, and reports both the number of page loads and the number of visitors to your site. To improve performance, stats are first recorded to a small table for incoming hits, then periodically processed (“migrated”) into the tables used to report stats. This reduces contention and improves write speeds for incoming stats hits.</p>
<p>The stats report now gets graphs for both the previous 24 hours and 30 days of activity. And because unlike external stats solutions, bSuite is integrated into your site, it can also report on your most popular tags and categories based on traffic.</p>
<p>I&#8217;ve also implemented a large number of improvements, bug fixes from the previous versions. Big thanks go to <a href="http://borkweb.com/">Matthew Batchelder</a> (who helped with the javascript code), <a href="http://taisteal.atomiclemur.com/">Jon Link</a> (who both pointed out a lot of bugs in bSuite 3 and helped answer questions in the forums), <a href="http://nosheep.net/">Zach Tirrell</a> (who helped develop migration strategy ages ago), and to everybody who&#8217;s posted a comment or review related to bSuite.</p>
<p>This is beta software, and some things definitely don&#8217;t work. The stats are working solidly, the other features appear free of catastrophic bugs, and I&#8217;ve had it running (in various stages of development) here at MaisonBisson for a month now. Still, read <a href="http://maisonbisson.com/blog/bsuite#12138_license-warranty_1">the warranty</a> (there is none) and don&#8217;t blame me if Boba Fett jumps out of your server after installing it.</p>
<p>Get the details at the <a href="http://maisonbisson.com/blog/bsuite/">bSuite page</a>, download bSuite <a href="http://wordpress.org/extend/plugins/bsuite/download/">4beta1 here</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/12142/bsuite-4-public-beta/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Interesting WordPress Plugins</title>
		<link>http://maisonbisson.com/blog/post/12110/interesting-wordpress-plugins/</link>
		<comments>http://maisonbisson.com/blog/post/12110/interesting-wordpress-plugins/#comments</comments>
		<pubDate>Thu, 27 Mar 2008 11:45:45 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Dispatches]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[contact manager]]></category>
		<category><![CDATA[forms]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[TDO Mini Forms]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[WP Contact Manager]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/post/12110/interesting-wordpress-plugins</guid>
		<description><![CDATA[
WP Contact Manager turns WordPress into a contact manager. It&#8217;s a combination of theme and plugins (including Custom Write Panel) that allows you to enter and manage contacts as blog posts (familiar, eh?). Use Members Only  to secure access.
TDO Mini Forms “allows you to add highly customisable forms to your website that allows non-registered [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-12110"><!-- &nbsp; --></abbr>
<p><a href="http://designintellection.com/downloads/wp-contact-manager/" title="» WP Contact Manager | Design Intellection">WP Contact Manager</a> turns WordPress into a contact manager. It&#8217;s a combination of <a href="http://people.thedesigncanopy.com/">theme</a> and plugins (including <a href="http://wordpress.org/extend/plugins/custom-write-panel/">Custom Write Panel</a>) that allows you to enter and manage contacts as blog posts (familiar, eh?). Use <a href="http://wordpress.org/extend/plugins/members-only/" title="WordPress › Members Only « WordPress Plugins">Members Only</a>  to secure access.</p>
<p><a href="http://wordpress.org/extend/plugins/tdo-mini-forms/" title="WordPress › TDO Mini Forms « WordPress Plugins">TDO Mini Forms</a> “allows you to add highly customisable forms to your website that allows non-registered users and/or subscribers (also configurable) to submit posts. The posts are kept in ”draft“ until an admin can publish them (also configurable).”</p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/12110/interesting-wordpress-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>bsuite_geocode Plugin For WordPress</title>
		<link>http://maisonbisson.com/blog/post/10846/bsuite_geocode-plugin-for-wordpress/</link>
		<comments>http://maisonbisson.com/blog/post/10846/bsuite_geocode-plugin-for-wordpress/#comments</comments>
		<pubDate>Mon, 26 Sep 2005 21:57:21 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[blog gis]]></category>
		<category><![CDATA[blogmap]]></category>
		<category><![CDATA[blogmaps]]></category>
		<category><![CDATA[geo]]></category>
		<category><![CDATA[geocoding]]></category>
		<category><![CDATA[geolocation]]></category>
		<category><![CDATA[geotagging]]></category>
		<category><![CDATA[gis]]></category>
		<category><![CDATA[google maps]]></category>
		<category><![CDATA[lat]]></category>
		<category><![CDATA[latitude and longitude]]></category>
		<category><![CDATA[lon]]></category>
		<category><![CDATA[map]]></category>
		<category><![CDATA[mapping]]></category>
		<category><![CDATA[maps]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[multimap]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>
		<category><![CDATA[wp plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=10846</guid>
		<description><![CDATA[
I&#8217;m a big fan of the WP Geo plugin, but I want more.
My biggest complaint is that I want to insert coordinates using Google Maps or MultiMap URLs, rather than insert them in the modified story editor. So I wrote a bit of code that reads through the URLs in a post, finds the “maps.google” [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10846"><!-- &nbsp; --></abbr>
<p>I&#8217;m a big fan of the <a href="http://dev.wp-plugins.org/wiki/GeoPlugin">WP Geo plugin</a>, but I want more.</p>
<p>My biggest complaint is that I want to insert coordinates using <a href="http://maisonbisson.com/blog/post/10682/">Google Maps</a> or <a href="http://maisonbisson.com/blog/post/10682/">MultiMap</a> URLs, rather than insert them in the modified story editor. So I wrote a bit of code that reads through the URLs in a post, finds the “maps.google” or “multimap.com” URLs, fishes the latitude and longitude out of them, and adds some geocoding tags to the body of the post.</p>
<p>Take a look at how it works with <a href="http://maisonbisson.com/blog/search/maps.google">these posts</a> in my archive&#8230;</p>
<p>You should see one or more blocks of links like the following (from my <a href="http://maisonbisson.com/blog/post/10804/">Osceola Weekend</a> post):</p>
<p style="text-align:right;font-size:10px;">geolocation: <a href="http://technorati.com/tags/geo:lat=44.006336">geo:lat=44.006336</a>, <a href="http://technorati.com/tags/geo:lon=-71.547260">geo:lon=-71.547260</a>, <a href="http://technorati.com/tags/geotagged">geotagged</a>, <a href="http://technorati.com/tags/geolocation:44.006336,-71.547260">geolocation:44.006336,-71.547260</a> <a href="http://www.geobloggers.com/index.cfm?action=search&#038;cutoff=100&#038;fLat=44.006336&#038;fLon=-71.547260&#038;iStartRecord=1&#038;iMaxRecords=25&#038;iZL=6&#038;sMapMode=hybrid&#038;sSearchType=newest&#038;lstItemType=flickr,note,audio,video,link">geobloggers</a></p>
<p>Go ahead and click the “<a href="http://www.geobloggers.com/index.cfm?action=search&#038;cutoff=100&#038;fLat=44.006336&#038;fLon=-71.547260&#038;iStartRecord=1&#038;iMaxRecords=25&#038;iZL=6&#038;sMapMode=hybrid&#038;sSearchType=newest&#038;lstItemType=flickr,note,audio,video,link">geobloggers</a>” link. I could have added these links using the old Geo plugin, but I still would have had to insert the coordinates separately. Actually, that brings up a good point: my code also inserts post metadata in the same format the Geo plugin uses, so I can take advantage of all the good functions it has, like the one that inserts the “&lt;meta name=“ICBM” content=“44.006336, -71.547260” /&gt;” tag in the header of this post (caveat: I had to disable the add_action code in Geo that feeds the postmeta table, as it was conflicting my code).</p>
<p>I&#8217;m releasing this now, to start some public discussion, but please recognize that it&#8217;s a very early beta.</p>
<p><strong>Download:</strong> <a href="http://homepage.mac.com/misterbisson/projects/bsuite_geocode.zip">bsuite_geocode.zip</a><br />
<strong>Install:</strong> place unzipped “bsuite_geocode.php” file in your wp-content/plugins folder and activate it via the WP control panel. See the <a href="http://codex.wordpress.org/Managing_Plugins">WordPress Codex</a> for more detail.<br />
<strong>Use:</strong> write posts as usual, adding links to Google Maps or MultiMap as appropriate. Links to those sites that have latitude and longitude components will be used to geocode the post.</p>
<p>Example of a working URL:</p>
<blockquote><p>http://maps.google.com/maps?<strong>ll=19.355507,-155.072365</strong>&#38;spn=.191780,.318003&#38;t=k&#38;hl=en</p></blockquote>
<p>Example of a URL that won&#8217;t work (note how there&#8217;s no “<strong>ll=</strong>”):</p>
<blockquote><p>http://maps.google.com/maps?q=decker+canyon+rd,+malibu+california&#38;spn=0.019857,0.039750&#38;hl=en</p></blockquote>
<p>I&#8217;ve got a lot of features and uses in mind, so consider this only a start. Please post bugs and suggestions in the comments.</p>
<p>Also, see these previous posts on <a href="http://maisonbisson.com/blog/post/10625/">geolocating the news</a> or <a href="hthttp://maisonbisson.com/blog/post/10586/">geolocating everything</a> or just <a href="http://maisonbisson.com/blog/search/geolocat">search the archives</a> to understand why I&#8217;m so excited about things like this.</p>
<p><!-- technorati tags start -->
<p style="text-align:right;font-size:10px;">tags: <a href="http://www.technorati.com/tag/beta" rel="tag">beta</a>, <a href="http://www.technorati.com/tag/blog" rel="tag">blog</a>, <a href="http://www.technorati.com/tag/blogmap" rel="tag">blogmap</a>, <a href="http://www.technorati.com/tag/blogmaps" rel="tag">blogmaps</a>, <a href="http://www.technorati.com/tag/blog gis" rel="tag">blog gis</a>, <a href="http://www.technorati.com/tag/geo" rel="tag">geo</a>, <a href="http://www.technorati.com/tag/geocoding" rel="tag">geocoding</a>, <a href="http://www.technorati.com/tag/geolocation" rel="tag">geolocation</a>, <a href="http://www.technorati.com/tag/geotagging" rel="tag">geotagging</a>, <a href="http://www.technorati.com/tag/gis" rel="tag">gis</a>, <a href="http://www.technorati.com/tag/google maps" rel="tag">google maps</a>, <a href="http://www.technorati.com/tag/lat" rel="tag">lat</a>, <a href="http://www.technorati.com/tag/latitude and longitude" rel="tag">latitude and longitude</a>, <a href="http://www.technorati.com/tag/lon" rel="tag">lon</a>, <a href="http://www.technorati.com/tag/map" rel="tag">map</a>, <a href="http://www.technorati.com/tag/maps" rel="tag">maps</a>, <a href="http://www.technorati.com/tag/mapping" rel="tag">mapping</a>, <a href="http://www.technorati.com/tag/metadata" rel="tag">metadata</a>, <a href="http://www.technorati.com/tag/multimap" rel="tag">multimap</a>, <a href="http://www.technorati.com/tag/plugin" rel="tag">plugin</a>, <a href="http://www.technorati.com/tag/plugins" rel="tag">plugins</a>, <a href="http://www.technorati.com/tag/wordpress" rel="tag">wordpress</a>, <a href="http://www.technorati.com/tag/wordpress plugin" rel="tag">wordpress plugin</a>, <a href="http://www.technorati.com/tag/wp plugin" rel="tag">wp plugin</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10846/bsuite_geocode-plugin-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>