<?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>SEO Web Design with Binh Nguyen &#187; Wordpress Plugins</title>
	<atom:link href="http://www.binh.name/wp/plugins/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.binh.name</link>
	<description>Freebies for SEO, Web design, computers, blogging</description>
	<lastBuildDate>Thu, 25 Jun 2009 21:40:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	
	<item>
		<title>Less Filters Plugin for Wordpress</title>
		<link>http://www.binh.name/less-filter-plugin-for-wordpress/</link>
		<comments>http://www.binh.name/less-filter-plugin-for-wordpress/#comments</comments>
		<pubDate>Sat, 04 Apr 2009 23:31:42 +0000</pubDate>
		<dc:creator>Bình</dc:creator>
				<category><![CDATA[Wordpress Plugins]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.binh.name/?p=184</guid>
		<description><![CDATA[I made this plugin a while ago but I didn't have time to upload it. So please forgive me.
Download
Here is the link to download it: less-filters.
Quick instruction:
What you need to do is extract the less-filter.php file to /wp-content/plugins/ folder then activate the plugins. You will then be able to include javascript and other advanced codes [...]]]></description>
			<content:encoded><![CDATA[<p>I made this plugin a while ago but I didn't have time to upload it. So please forgive me.</p>
<h2>Download</h2>
<p>Here is the link to download it: <a href="http://www.binh.name/files/2009/04/less-filters.zip">less-filters</a>.</p>
<h2>Quick instruction:</h2>
<p>What you need to do is extract the<strong> less-filter.php</strong> file to <strong>/wp-content/plugins/</strong> folder then activate the plugins. You will then be able to include javascript and other advanced codes into the wpmu post body and widgets. I will give more instruction soon. If not, please remind me.</p>
<h2>Property right:</h2>
<p>I made this plugin, so please kindly give me some credit if you talk about it or reproduce it. Thanks.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binh.name/less-filter-plugin-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>WP-Super-Cache Does not Allow PHP Conditions</title>
		<link>http://www.binh.name/super-cache-does-not-allow-php-conditions/</link>
		<comments>http://www.binh.name/super-cache-does-not-allow-php-conditions/#comments</comments>
		<pubDate>Sun, 16 Mar 2008 18:44:08 +0000</pubDate>
		<dc:creator>Bình</dc:creator>
				<category><![CDATA[Site]]></category>
		<category><![CDATA[Wordpress Plugins]]></category>
		<category><![CDATA[wordpress-plugin]]></category>
		<category><![CDATA[wp-super-cache]]></category>

		<guid isPermaLink="false">http://www.binh.name/2008/03/17/wp-super-cache-does-not-allow-php-conditions/</guid>
		<description><![CDATA[WP-Super-Cache WordPress plugin does it again. This time, the cache doesn't let me display custom message for user with Internet Explorer, because it only cache the first instant of the page.
Do you notice the different view of my blog's header when it you see on Firefox, and when you see it on Internet Explorer? I [...]]]></description>
			<content:encoded><![CDATA[<p><strong>WP-Super-Cache</strong> <em>WordPress plugin</em> does it again. This time, the cache doesn't let me display custom message for user with Internet Explorer, because it only cache the first instant of the page.</p>
<p>Do you notice the different view of my blog's header when it you see on Firefox, and when you see it on Internet Explorer? I inserted some PHP code to recognize when it's IE to display the Firefox recommendation message. That's because I disabled the <strong>WP-Super-Cache</strong>. When <strong>Super Cache</strong> is enabled, it will make the page display exactly the same on both FireFox, and IE. </p>
<p>I am going to look for some solution. For now, let's bear not having <strong>Super Cache</strong> on my site. So please, don't abuse it and send tons of traffic from Digg and StumbleUpon. <img src='http://www.binh.name/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Thanks.</p>
<p><strong>Previously</strong>, the plugin duplicated my content. It's a long story and I had solution for that and I will write about it later on.</p>
<p>You can find the plugin here: <a href="http://ocaoimh.ie/wp-super-cache/">WP-Super-Cache</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.binh.name/super-cache-does-not-allow-php-conditions/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Fixing Post Teaser Plugin Bug for WP 2.3.1</title>
		<link>http://www.binh.name/fixing-post-teaser-plugin-bug-for-wp-231/</link>
		<comments>http://www.binh.name/fixing-post-teaser-plugin-bug-for-wp-231/#comments</comments>
		<pubDate>Fri, 16 Nov 2007 16:15:03 +0000</pubDate>
		<dc:creator>Bình</dc:creator>
				<category><![CDATA[Debugging]]></category>
		<category><![CDATA[Wordpress Plugins]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Site]]></category>

		<guid isPermaLink="false">http://www.binh.name/?p=39</guid>
		<description><![CDATA[Have you ever had problem with Post Teaser plugin for WordPress? I am using it and I found a bug. So I fixed the bug and now you can download it right from this page. I name it "Post Teaser 2" just so It won't mess up with the original one.
It's now available for download [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever had problem with <strong><a href="http://wordpress.org/extend/plugins/post-teaser/" title="Visit plugin homepage">Post Teaser</a></strong> plugin for WordPress? I am using it and I found a bug. So I fixed the bug and now you can download it right from this page. I name it "Post Teaser 2" just so It won't mess up with the original one.</p>
<p>It's now available for download from this page: <a href="http://www.binh.name/?attachment_id=43" rel="attachment wp-att-43" title="Post Teaser 2 - An Essential WordPress Plugin">Post Teaser 2 - An Essential WordPress Plugin</a>.</p>
<h2>The Bug</h2>
<p>When I click the Update Options button on the Manage Post Teaser page, I got this: "Cannot load post-teaser.php." as shown in the snapshot:</p>
<p align="center"><img src="http://binh.name/files/2007/11/post-teaser-bug.png" alt="Post Teaser Bug" /></p>
<h2>Locating the bug</h2>
<p>It's annoying abit, but it's also easy to fix. I notice the following URL after the button is clicked:</p>
<blockquote><p>http://binh.name/wp/wp-admin/options-general.php?page=post-teaser.php&amp;saved=true</p></blockquote>
<p>And this is the URL before the button is clicked:</p>
<blockquote><p>http://binh.name/wp/wp-admin/options-general.php?page=post-teaser/post-teaser.php</p></blockquote>
<p>The different here is noticable.</p>
<ul>
<li>The failed query is: post-teaser.php&amp;saved=true</li>
<li>The unfailed query is: post-teaser/post-teaser.php</li>
</ul>
<p>So the correct query for saving the options should be: <strong>post-teaser/post-teaser.php&amp;saved=true</strong></p>
<h2>Debugging it</h2>
<p><strong>Open </strong>file "post-teaser/post-teaser.php" in the Plugin Editor (found in the Plugins page in Admin panel).</p>
<p><strong>Search </strong>for the string "post-teaser.php&amp;saved=true" in the file , and found the following lines:</p>
<ul>
<li> 101: header('Location: ' . get_settings('siteurl') . '/wp-admin/options-general.php?page=post-teaser.php&amp;saved=true');</li>
<li>103: 				header('Location: ' . get_settings('siteurl') . '/wp-admin/options-general.php?page=post-teaser.php&amp;saved=true');</li>
</ul>
<p><strong>Replace </strong>"post-teaser.php&amp;saved=true" with "post-teaser/post-teaser.php&amp;saved=true" and we get:</p>
<ul>
<li>101: header('Location: ' . get_settings('siteurl') . '/wp-admin/options-general.php?page=post-teaser/post-teaser.php&amp;saved=true');</li>
<li>103: 				header('Location: ' . get_settings('siteurl') . '/wp-admin/options-general.php?page=post-teaser/post-teaser.php&amp;saved=true');</li>
</ul>
<p><strong>Alternatively</strong> you could edit the plugin file locally then upload it.</p>
<p>A <strong>screenshot</strong> where it is located:</p>
<p><a href="http://www.binh.name/?attachment_id=41" rel="attachment wp-att-41" title="Edit Post Teaser Code File"></a></p>
<p style="text-align: center"><a href="http://www.binh.name/?attachment_id=41" rel="attachment wp-att-41" title="Edit Post Teaser Code File"><img src="http://binh.name/files/2007/11/post-teaser-bug-edit.thumbnail.png" alt="Edit Post Teaser Code File" /></a></p>
<p><strong>Problem Fixed:</strong></p>
<p style="text-align: center"><a href="http://www.binh.name/?attachment_id=42" rel="attachment wp-att-42" title="Post Teaser Bug Fixed"><img src="http://binh.name/files/2007/11/post-teaser-bug-fixed.png" alt="Post Teaser Bug Fixed" /></a></p>
<h2>Conclusion</h2>
<p>The author of this plugin actually wrote it up to version 2.3 of WordPress. Or maybe because he just didn't mean to have the user keep the post-teaser.php file under the post-teaser folder. Either way, I hope when writing the plugin and packaging it the author should consider the end user first.</p>
<p>I, a web developer still didn't realise I had to extract the php file into the plugins folder instead of the whole folder which contains the php file? Most of the plugins come packaged with readme.txt, plugin-name.pot, etc. How does the user know what to do without reading pages of documentation? We should make it simple for the end users. KISS principle is appreciated.</p>
<p>Since this wonderful plugin has a public license I would like to continue supporting it. If you have any problem please feel free to leave a comment on this page.  And... sorry I couldn't fix the translation files. So if you are using another language, please bear not having it, or modify the original file as directed by this debugging tutorial.</p>
<p>You can directly <a href="http://binh.name/files/2007/11/post-teaser-2.zip">download Post Teaser 2 now</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binh.name/fixing-post-teaser-plugin-bug-for-wp-231/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing Dangerous Permalink Redirect Bugs</title>
		<link>http://www.binh.name/fixing-dangerous-permalink-redirect-bugs/</link>
		<comments>http://www.binh.name/fixing-dangerous-permalink-redirect-bugs/#comments</comments>
		<pubDate>Thu, 15 Nov 2007 19:37:32 +0000</pubDate>
		<dc:creator>Bình</dc:creator>
				<category><![CDATA[Debugging]]></category>
		<category><![CDATA[Wordpress Plugins]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[url]]></category>

		<guid isPermaLink="false">http://www.binh.name/?p=35</guid>
		<description><![CDATA[Since I have more than one occasion encounter bug with Permalink Redirect, I recommend people wait for new version of this plug-in.
The Bugs
The following are the bugs:

Redirect "/feed" URI to "/feed/" using 302 redirect. Ignoring the "/%postname%" rule having no trailing slash.
Redirect "/?paged=x" to "/page/x/" (where x is paging number) ingoring the fact ugly default [...]]]></description>
			<content:encoded><![CDATA[<p>Since I have more than one occasion encounter bug with <strong><a href="http://fucoder.com/code/permalink-redirect/" title="Permalink Redirect WordPress Plugin">Permalink Redirect</a></strong>, I recommend people wait for new version of this plug-in.</p>
<h2>The Bugs</h2>
<p>The following are the bugs:</p>
<ol>
<li>Redirect "/feed" URI to "/feed/" using 302 redirect. Ignoring the "/%postname%" rule having no trailing slash.</li>
<li>Redirect "/?paged=x" to "/page/x/" (where x is paging number) ingoring the fact ugly default URL is used, causing 404 message when paging.</li>
</ol>
<p>There is no doubt about these bugs, because I test it by enabling and disabling Permalink Redirect plugin.</p>
<h2>Fixing the bugs</h2>
<p>Indeed being a programmer gives me some advantages, I could fix the bugs on the fly.</p>
<h3>Feed redirect trailing slash</h3>
<p>For the /feed to /feed/ redirect problem, I found these lines:</p>
<blockquote><p>208        if (is_feed()) {<br />
209            $link = trailingslashit($link) . 'feed/';<br />
210        }</p></blockquote>
<p>Solution:</p>
<ol>
<li>If want no trailing slash, remove the "/" on line 209.</li>
<li>If it's WordPress 2.3.1+ simply remove the 3 lines because it's built-in.</li>
<li>If you don't want to touch code, include the  following in the Options &gt; Permalink Redirect &gt; Paths to be skipped: "<strong>.+/feed</strong>.*" (without the quotes)</li>
</ol>
<h3>Page redirect ignoring permalink rule</h3>
<p>For the /?page=x to /paged/x/ problem, I found this line:</p>
<blockquote><p>204    if ($paged)<br />
205        $link = trailingslashit($link) . "page/$paged/";</p></blockquote>
<p>Solution:</p>
<ol>
<li>If  WordPress 2.3.1+, remove the lines because it's done better.</li>
<li>If you don't want to touch code, include the  following in the Options &gt; Permalink Redirect &gt; Paths to be skipped: "<strong>.+/?paged=.*</strong>" (without the quotes)</li>
</ol>
<h2>Conclusion</h2>
<p>Even being buggy, and not recommended by WordPress 2.3.1 which claim having internal redirect, Permalink Redirect still provide some benefit that built-in redirect doesn't offer, such as:</p>
<ol>
<li>Redirect permalink from old structure to new structure</li>
<li>Redirect broken, or wrong URL, providing the post id is correct, or enough matching words in post slug.</li>
<li>Redirect feed url from "/?feed=rss" to "/feed" or "/feed/" depending your customization.</li>
</ol>
<p>This plug-in is indeed getting a lot of my attention. I have more liking for it than the bult-in redirect. So, whenever I have time I will investigate deeper into the code and optimize it for better usage.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.binh.name/fixing-dangerous-permalink-redirect-bugs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	
</channel>
</rss>
