<?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>Flav36rs &#187; Plugins</title>
	<atom:link href="http://flav36rs.com/category/wordpress/plugins/feed/" rel="self" type="application/rss+xml" />
	<link>http://flav36rs.com</link>
	<description>Just another technical blog</description>
	<lastBuildDate>Mon, 12 Sep 2011 16:56:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Using front-end AJAX requests in your WordPress plugins</title>
		<link>http://flav36rs.com/2011/09/12/using-front-end-ajax-requests-in-your-wordpress-plugins/</link>
		<comments>http://flav36rs.com/2011/09/12/using-front-end-ajax-requests-in-your-wordpress-plugins/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 16:55:37 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[plugin]]></category>

		<guid isPermaLink="false">http://flav36rs.com/?p=843</guid>
		<description><![CDATA[Although it is fairly uncommon to be adding AJAX functionality to your WordPress plugins, it can be necessary for it to be added. Luckily it is quite easy and straight forward to integrate the required components as and when they &#8230; <a href="http://flav36rs.com/2011/09/12/using-front-end-ajax-requests-in-your-wordpress-plugins/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Although it is fairly uncommon to be adding AJAX functionality to your WordPress plugins, it can be necessary for it to be added. Luckily it is quite easy and straight forward to integrate the required components as and when they are required.</p>
<p>To help explain how this can be achieved, we will be creating a plugin called &#8220;<strong>Ajax Example</strong>&#8220;, stored in the folder &#8220;<strong>ajax-example</strong>&#8221; inside the plugin directory of your WordPress install.</p>
<p><span id="more-843"></span>Further information on <a title="Writing a Plugin" href="http://codex.wordpress.org/Writing_a_Plugin" target="_blank">creating a WordPress plugin</a> can be found on <a title="WordPress.org" href="http://wordpress.org/" target="_blank">WordPress.org</a> and other resources, so won&#8217;t go into too much detail here.</p>
<p>First we need to create a file called &#8220;<strong>index.html</strong>&#8221; and copy the following into this file:</p>
<pre>&lt;?php
/*
Plugin Name: Ajax Example
Plugin URI: http://wp.me/pWbfz-dB
Description: Simple example of how to integrate front-end ajax requests via your plugin.
Version: 0.1
Date: 2011-09-01
Author: Steve Whiteley
Author URI: http://flav36rs.com
*/

class Ajax_Example
{
	public function __construct()
	{
		// ...
 	}
}

$ajaxExample = new Ajax_Example();

?&gt;</pre>
<p>We will be using the OOP structure for this plugin instead of the prefixed function format, however could be converted with ease. This class provides the skeleton structure of our plugin, you should save this file to our &#8220;<strong>ajax-example</strong>&#8221; folder before we start to add more functionality.</p>
<p>The next step is to include the <strong>JavaScript</strong> file that performs the AJAX request, which is called by the &#8220;<a title="Init Action Hook" href="http://codex.wordpress.org/Plugin_API/Action_Reference/init" target="_blank">init</a>&#8221; action hook added to the class constructor method:</p>
<pre>add_action( 'init', array( &amp;$this, 'init' ) );</pre>
<p>Then we add the init function to the plugin, which includes calls to insert the JavaScript file <em>(wp_enqueue_script)</em> and set the parameters required by the external file <em>(wp_localize_script)</em>.</p>
<pre>public function init()
{
	wp_enqueue_script( 'ajax-example', plugin_dir_url( __FILE__ ) . 'ajax.js', array( 'jquery' ) );
	wp_localize_script( 'ajax-example', 'AjaxExample', array(
		'ajaxurl' =&gt; admin_url( 'admin-ajax.php' ),
		'nonce' =&gt; wp_create_nonce( 'ajax-example-nonce' )
	) );
}</pre>
<p>Additional parameters can be added to array if they are required, the two mentioned should be the minimum that are required.</p>
<p>While we&#8217;re here, we should add the function that handles the response generated by the AJAX request. Notice here that we check the nonce value that is defined in the function above and set the content type before returning the encoded JSON array.</p>
<pre>public function ajax_call()
{
	if ( ! isset( $_REQUEST['nonce'] ) || ! wp_verify_nonce( $_REQUEST['nonce'], 'ajax-example-nonce' ) )
		die ( 'Invalid Nonce' );
	header( "Content-Type: application/json" );
	echo json_encode( array(
		'success' =&gt; true,
		'time' =&gt; time()
	) );
	exit;
}</pre>
<p>Create &#8220;<strong>ajax-example/ajax.js</strong>&#8221; and copy the following snippet into this file. In order to perform the AJAX request, we use the jQuery .getJSON() method. <a title="jQuery AJAX methods" href="http://api.jquery.com/category/ajax/" target="_blank">Alternative methods</a> could be used depending on the type of request you are performing.</p>
<pre>jQuery.getJSON(
    AjaxExample.ajaxurl,
    {
        action: 'ajax-example',
        nonce: AjaxExample.nonce
    },
    function( response ) {
    	alert( response.success );
    }
);</pre>
<p>Unfortunately this won&#8217;t actually do anything until we add two hooks to extend the built in AJAX functionality. These are added to the class constructor, the first <em>(wp_ajax_nopriv_ajax-example)</em> provides access for logged in users, the second <em>(wp_ajax_ajax-example)</em> for anonymous / non-logged in visitors.</p>
<pre>if ( is_admin() ) {
	add_action( 'wp_ajax_nopriv_ajax-example', array( &amp;$this, 'ajax_call' ) );
	add_action( 'wp_ajax_ajax-example', array( &amp;$this, 'ajax_call' ) );
}</pre>
<p>Please be aware that when using these hooks, they are called from within <strong>is_admin()</strong>, otherwise they are not correctly set.</p>
<p>The full contents of the plugin file &#8220;<strong>ajax-example/index.php</strong>&#8221; should be as follows:</p>
<pre>&lt;?php
/*
Plugin Name: Ajax Example
Plugin URI: http://wp.me/pWbfz-dB
Description: Simple example of how to integrate front-end ajax requests via your plugin.
Version: 0.1
Date: 2011-09-01
Author: Steve Whiteley
Author URI: http://flav36rs.com
*/

class Ajax_Example
{
	public function __construct()
	{
		if ( is_admin() ) {
			add_action( 'wp_ajax_nopriv_ajax-example', array( &amp;$this, 'ajax_call' ) );
			add_action( 'wp_ajax_ajax-example', array( &amp;$this, 'ajax_call' ) );
		}
		add_action( 'init', array( &amp;$this, 'init' ) );
	}

	public function init()
	{
		wp_enqueue_script( 'ajax-example', plugin_dir_url( __FILE__ ) . 'ajax.js', array( 'jquery' ) );
		wp_localize_script( 'ajax-example', 'AjaxExample', array(
		    'ajaxurl' =&gt; admin_url( 'admin-ajax.php' ),
		    'nonce' =&gt; wp_create_nonce( 'ajax-example-nonce' )
		) );
	}

	public function ajax_call()
	{
		if ( ! isset( $_REQUEST['nonce'] ) || ! wp_verify_nonce( $_REQUEST['nonce'], 'ajax-example-nonce' ) )
			die ( 'Invalid Nonce' );
		header( "Content-Type: application/json" );
		echo json_encode( array(
			'success' =&gt; true,
			'time' =&gt; time()
		) );
		exit;
	}

}

$ajaxExample = new Ajax_Example();

?&gt;</pre>
<p>Other things to consider when using the example code provided above are that you should probably ensure jQuery is loaded and possibly only add the the scripts to the pages that they are required, rather than globally.</p>
<p>This functionality was tested with <strong>WordPress 3.2.1</strong>, it may however change and be simplified in future releases.</p>
]]></content:encoded>
			<wfw:commentRss>http://flav36rs.com/2011/09/12/using-front-end-ajax-requests-in-your-wordpress-plugins/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Forcing a WordPress plugin to be loaded before all other plugins</title>
		<link>http://flav36rs.com/2011/09/03/forcing-a-wordpress-plugin-to-be-loaded-before-all-other-plugins/</link>
		<comments>http://flav36rs.com/2011/09/03/forcing-a-wordpress-plugin-to-be-loaded-before-all-other-plugins/#comments</comments>
		<pubDate>Sat, 03 Sep 2011 14:05:20 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[force]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[order]]></category>

		<guid isPermaLink="false">http://flav36rs.com/?p=829</guid>
		<description><![CDATA[When you activate a plugin via the WordPress admin panel it calls the action hook &#8220;activated_plugin&#8220;, which updates the &#8220;active_plugins&#8221; site option stored in the database to determine which plugins your site should load. The option value is a serialized &#8230; <a href="http://flav36rs.com/2011/09/03/forcing-a-wordpress-plugin-to-be-loaded-before-all-other-plugins/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>When you activate a plugin via the WordPress admin panel it calls the action hook &#8220;<em>activated_plugin</em>&#8220;, which updates the &#8220;<em>active_plugins</em>&#8221; site option stored in the database to determine which plugins your site should load.</p>
<p>The option value is a serialized array of the active plugins saved in alphabetical order according to the plugin directory and file name, for example:</p>
<p><span id="more-829"></span>
<pre>Array
(
	[0] =&gt; akismet/akismet.php
	[1] =&gt; example-plugin/index.php
)</pre>
<p>You can however alter the order of the plugins in the array, which will in turn set the order in which the plugins are loaded by WordPress.</p>
<p>The first step towards adjusting the order is to add the following action to your plugin file, which is most likely to be <em>/my-plugin/index.php</em> or <em>/my-plugin/my-plugin.php</em>.</p>
<pre>add_action( 'activated_plugin', 'my_plugin_load_first' );</pre>
<p>Next you need to include the functionality to perform the actual re-ordering. The following function will fetch the existing list, check that your plugin is in the array and if so remove then append it to the beginning, before finally saving the altered list to the database.</p>
<pre>function my_plugin_load_first()
{
	$path = str_replace( WP_PLUGIN_DIR . '/', '', __FILE__ );
	if ( $plugins = get_option( 'active_plugins' ) ) {
		if ( $key = array_search( $path, $plugins ) ) {
			array_splice( $plugins, $key, 1 );
			array_unshift( $plugins, $path );
			update_option( 'active_plugins', $plugins );
		}
	}
}</pre>
<p>It should not be necessary for you to adjust anything specified here other than modifying the name of the function used to suit the namespace used by your plugin.</p>
<p>One final thing to consider is only adding this action when the dashboard or administration panels are being displayed, by making use of the <a href="http://codex.wordpress.org/Function_Reference/is_admin" target="_blank">is_admin()</a> conditional tag.</p>
<p><strong>Please note that modifying this option is not something I recommend people do unless absolutely necessary, and it my situation it proved to be very useful.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://flav36rs.com/2011/09/03/forcing-a-wordpress-plugin-to-be-loaded-before-all-other-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP SubHeading Plugin (1,000 downloads)</title>
		<link>http://flav36rs.com/2009/11/14/wp-subheading-plugin-1000-downloads/</link>
		<comments>http://flav36rs.com/2009/11/14/wp-subheading-plugin-1000-downloads/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 11:28:16 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[heading]]></category>
		<category><![CDATA[sub]]></category>
		<category><![CDATA[title]]></category>

		<guid isPermaLink="false">http://36flavours.com/?p=574</guid>
		<description><![CDATA[The WordPress SubHeading plugin allows you to add sub titles to both your blog posts and pages. Last night it followed in the footsteps of my Page Meta plugin by reaching the 1,000 downloads mark. Yesterday saw over 100 downloads &#8230; <a href="http://flav36rs.com/2009/11/14/wp-subheading-plugin-1000-downloads/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://wordpress.org/extend/plugins/subheading/" target="_blank">WordPress SubHeading plugin</a> allows you to add sub titles to both your blog posts and pages. Last night it followed in the footsteps of my <a href="http://wordpress.org/extend/plugins/pagemeta/" target="_blank">Page Meta plugin</a> by reaching the <a href="http://wordpress.org/extend/plugins/subheading/stats/" target="_blank">1,000 downloads</a> mark.</p>
<p>Yesterday saw over <strong>100 downloads</strong> as a result of numerous modifications and updates, some of which due to mistakes on my behalf which was mildly irritating. The main reason behind all the updates was to cater for numerous <a href="http://wordpress.org/tags/subheading?forum_id=10" target="_blank">feature requests and bugs</a> reported by users of the plugin.<span id="more-574"></span></p>
<p>This plugin &#8211; as with Page Meta &#8211; was written for a project I have been working on, however there are very few that solve the issue of adding in sub headings / titles and reposition it below the main title (or at least as far as I am aware).</p>
<p>If you have any feedback on this plugin I recommend you post it on the <a href="http://wordpress.org/tags/subheading?forum_id=10" target="_blank">WordPress Plugins forums</a>, otherwise if you&#8217;re looking to install this plugin it can be <a href="http://wordpress.org/extend/plugins/subheading/" target="_blank">downloaded here</a>.</p>
<p style="text-align: center;"><img class="size-full wp-image-579  aligncenter" title="WordPress SubHeading Screenshot" src="http://36flavours.com/wp-content/uploads/2009/11/screenshot-1.png" alt="WordPress SubHeading Screenshot" width="530" height="400" /></p>
]]></content:encoded>
			<wfw:commentRss>http://flav36rs.com/2009/11/14/wp-subheading-plugin-1000-downloads/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WP Page Meta Plugin (1,000 downloads)</title>
		<link>http://flav36rs.com/2009/11/11/wp-page-meta-plugin-1000-downloads/</link>
		<comments>http://flav36rs.com/2009/11/11/wp-page-meta-plugin-1000-downloads/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 18:36:59 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[meta]]></category>
		<category><![CDATA[page]]></category>

		<guid isPermaLink="false">http://36flavours.com/?p=556</guid>
		<description><![CDATA[The WordPress Page Meta plugin was initially written as a simple solution for adding meta descriptions to pages on a site I have been working on, as this is not available by default. Today it broke through the 1,000 downloads &#8230; <a href="http://flav36rs.com/2009/11/11/wp-page-meta-plugin-1000-downloads/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://wordpress.org/extend/plugins/pagemeta/" target="_blank">WordPress Page Meta plugin</a> was initially written as a simple solution for adding meta descriptions to pages on a site I have been working on, as this is not available by default. Today it broke through the <a href="http://wordpress.org/extend/plugins/pagemeta/stats/" target="_blank">1,000 downloads</a> mark.</p>
<p>The plugin quite quickly evolved into a solution that allowed for keywords as well as descriptions to be added, as well as the ability to set a custom page title. If required the page title can even be defined in your page template, allowing for dynamic pages /  templates to have specific titles.<span id="more-556"></span></p>
<p>Although unsure if anyone would actually be interested in using it, I decided to publish it to the Plugin Directory anyway. If anything it would allow me to manage the <a href="http://wordpress.org/extend/plugins/pagemeta/changelog/" target="_blank">versions</a> and easily update the handful of blogs that I have installed it on.</p>
<p>I actually thought that my second plugin, <a href="http://wordpress.org/extend/plugins/subheading/" target="_blank">SubHeading</a> would be more popular as there aren&#8217;t many existing solutions in the Directory for this. It&#8217;s not far behind in downloads, with just over <strong>850</strong> to date.</p>
]]></content:encoded>
			<wfw:commentRss>http://flav36rs.com/2009/11/11/wp-page-meta-plugin-1000-downloads/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress hosted plugins and Tortoise SVN (Windows)</title>
		<link>http://flav36rs.com/2009/10/14/wordpress-hosted-plugins-and-tortoise-svn-windows/</link>
		<comments>http://flav36rs.com/2009/10/14/wordpress-hosted-plugins-and-tortoise-svn-windows/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 22:47:23 +0000</pubDate>
		<dc:creator>Steve</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[tortoise]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://36flavours.com/?p=494</guid>
		<description><![CDATA[Plugins are used to extend the core functionality of WordPress, allowing you to create almost anything you could possibly require. The Plugin Directory contains thousands of community contributed plugins that you can download, rate, and comment on. If you&#8217;re looking &#8230; <a href="http://flav36rs.com/2009/10/14/wordpress-hosted-plugins-and-tortoise-svn-windows/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Plugins are used to extend the core functionality of <a href="http://wordpress.org/" target="_blank">WordPress</a>, allowing you to create almost anything you could possibly require. The <a href="http://wordpress.org/extend/plugins/" target="_blank">Plugin Directory</a> contains thousands of community contributed plugins that you can download, rate, and comment on.</p>
<p>If you&#8217;re looking to create your own plugin and want to get it noticed, it&#8217;s <em>recommended</em> that you publish and host it in the directory. Here&#8217;s a <strong>quick guide</strong> to take you through the steps of publishing a plugin on a Windows based system.<span id="more-494"></span></p>
<ol>
<li><strong>Download</strong> and install <strong><a href="http://tortoisesvn.net/downloads" target="_blank">Tortoise SVN</a></strong></li>
<li>Request an <strong>SVN repository</strong> using the <a href="http://wordpress.org/extend/plugins/add/" target="_blank">Add Your Plugin</a> page <em>(It may take few hours to get your request approved)</em>.</li>
<li>Once you receive the <strong>SVN credentials</strong> you will be able to access the repository from <em>http://svn.wp-plugins.org/plugin_name</em>.</li>
<li><strong>Checkout</strong> the blank repository from your svn account. (This contains three empty folders &#8211; <em>branches, tag, trunk</em>). To do this, right click the folder you want to Checkout to and select <strong>SVN Checkout</strong>.
<p style="text-align: center; margin-top: 20px;"><img class="aligncenter size-full wp-image-520" title="Initial Checkout" src="http://36flavours.com/wp-content/uploads/2009/10/initial_checkout.png" alt="Initial Checkout" width="401" height="359" /></p>
<p><strong>Enter the URL</strong> of your plugin repository and <strong>click OK</strong>.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-522" title="Initial Checkout URL" src="http://36flavours.com/wp-content/uploads/2009/10/initial_checkout_url.png" alt="Initial Checkout URL" width="468" height="361" /></p>
<p>Once the <strong>process is complete</strong> you will see the three folders that have been added.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-521" title="Initial Checkout Done" src="http://36flavours.com/wp-content/uploads/2009/10/initial_checkout_done.png" alt="Initial Checkout Done" width="559" height="219" /></p>
</li>
<li><strong>Copy</strong> the plugin files into the <strong>trunk</strong> folder and create a <a href="http://wordpress.org/extend/plugins/about/readme.txt" target="_blank">readme.txt</a> file if one is not already present.</li>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-519" title="Copy Files" src="http://36flavours.com/wp-content/uploads/2009/10/copy_files.png" alt="Copy Files" width="459" height="101" /></p>
<li>Commit your changes by right clicking the folder and selecting <strong>SVN commit</strong>.<a href="http://36flavours.com/wp-content/uploads/2009/10/commit.png"></a></li>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-517" title="Commit Plugin" src="http://36flavours.com/wp-content/uploads/2009/10/commit.png" alt="Commit Plugin" width="482" height="393" /></p>
<li>You will be prompted for your <strong>authentication details</strong>, enter your WordPress.org/bbPress.org username and password (the same one you use on the forums). <a href="http://36flavours.com/wp-content/uploads/2009/10/commit_auth.png"></a></li>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-518" title="Commit Auth" src="http://36flavours.com/wp-content/uploads/2009/10/commit_auth.png" alt="Commit Auth" width="346" height="241" /></p>
<li>Now create a <strong>tag</strong>. Right click on the trunk folder and in the context menu go to TortoiseSVN and choose <strong>Branch/Tag</strong>. In the dialogue box change the url path from /trunk to <strong>/tags/0.1</strong> (or whatever you have stated as the stable tag  in the readme file.<a href="http://36flavours.com/wp-content/uploads/2009/10/tag.png"></a></li>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-523" title="Create Tag" src="http://36flavours.com/wp-content/uploads/2009/10/tag.png" alt="Create Tag" width="468" height="393" /></p>
<li>Run <strong>SVN update</strong> on the tags folder <em>(Right click the tags folder and select SVN Update)</em>.</li>
</ol>
<h3>Committing a modified plugin / new version</h3>
<ol>
<li>Make modifications to the <strong>trunk</strong> folder.</li>
<li>Change the <strong>stable tag</strong> value in the readme file to the latest stable version, <em>e.g. 0.1.1</em></li>
<li><strong>SVN commit</strong> the latest changes in the trunk.</li>
<li><strong>Tag</strong> the new version <em>(see step 8 above) </em>.</li>
<li><strong>SVN update</strong> the tags folder.</li>
</ol>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;">download the <a onclick="window.open('http://www.digimantra.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://tortoisesvn.net/downloads&amp;wp-toolbar-fromurl=http://www.digimantra.com/tutorials/wordpress/publish-wordpress-plugin-on-windows/&amp;wp-toolbar-fromtitle=Publish wordpress plugin on windows using tortoise svn&amp;wp-toolbar-blogurl=http://www.digimantra.com&amp;wp-toolbar-blogtitle=DigiMantra','wordpress-toolbar');return false;" rel="nofollow" href="http://tortoisesvn.net/downloads" target="_blank">Tortoise SVN</a></div>
]]></content:encoded>
			<wfw:commentRss>http://flav36rs.com/2009/10/14/wordpress-hosted-plugins-and-tortoise-svn-windows/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

