<?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>Guillermo Rauch&#039;s Devthought &#187; php</title>
	<atom:link href="http://www.devthought.com/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devthought.com</link>
	<description></description>
	<lastBuildDate>Mon, 30 Jan 2012 16:38:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>PHP URL Shortening Class released</title>
		<link>http://www.devthought.com/2009/04/24/php-url-shortening-class-released/</link>
		<comments>http://www.devthought.com/2009/04/24/php-url-shortening-class-released/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 16:27:34 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Server side]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=921</guid>
		<description><![CDATA[I&#8217;ve just released PHPShortener, a PHP class that makes it very easy to encode/decode URLs with services such as tr.im, is.gd, and others. Encoding and decoding is a simple as this: $s = new PHPShortener(); // encode a long url &#8230; <a href="http://www.devthought.com/2009/04/24/php-url-shortening-class-released/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just released <a href="/projects/php/phpshortener/">PHPShortener</a>, a PHP class that makes it very easy to encode/decode URLs with services such as tr.im, is.gd, and others.</p>
<p>Encoding and decoding is a simple as this:</p>
<pre class='highlight ' lang="php">
$s = new PHPShortener();
// encode a long url
$shorturl = $s->encode('http://devthought.com/projects/php/phpshortener/', 'is.gd');
// decode a short url (autodetects the service)
$longurl = $s->decode('http://tr.im/jBBp');
</pre>
<p>Head to the <a href="/projects/php/phpshortener/">project page</a> for downloads and documentation. Fork me on <a href="http://github.com/Guille/phpshortener/tree/master">GitHub</a> if you want to contribute!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/04/24/php-url-shortening-class-released/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Writing a PHP command line script that takes options</title>
		<link>http://www.devthought.com/2009/03/22/writing-a-simple-php-command-line-script-that-takes-options/</link>
		<comments>http://www.devthought.com/2009/03/22/writing-a-simple-php-command-line-script-that-takes-options/#comments</comments>
		<pubDate>Sun, 22 Mar 2009 15:41:03 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Tumble]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=570</guid>
		<description><![CDATA[First of all, we make our file start like this. #!/usr/bin/env php This allows us to run the script without prefixing it with the &#8220;php&#8221; command, and instead we can run it like this: chmod +x myscript # This gives &#8230; <a href="http://www.devthought.com/2009/03/22/writing-a-simple-php-command-line-script-that-takes-options/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>First of all, we make our file start like this.</p>
<pre class='highlight ' lang="php">
#!/usr/bin/env php
</pre>
<p>This allows us to run the script without prefixing it with the &#8220;php&#8221; command, and instead we can run it like this:</p>
<pre class='highlight ' lang="bash">
chmod +x myscript  # This gives execution permissions to the script, do it only once
./myscript --first=option --second --third=option
</pre>
<p>If we want our script to take options like in the example above, we can use this snippet:</p>
<pre class='highlight ' lang="php">
$options = array();

foreach ($argv as $arg){
	preg_match('/\-\-(\w*)\=?(.+)?/', $arg, $value);
	if ($value &#038;&#038; isset($value[1]) &#038;&#038; $value[1])
		$options[$value[1]] = isset($value[2]) ? $value[2] : null;
}
</pre>
<p>The $options array will hold the supplied options. You can then use them like this:</p>
<pre class='highlight ' lang="php">
if (!isset($options['somevalue']))
	// show an error

if (isset($options['dosomething']))
	// do something
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/03/22/writing-a-simple-php-command-line-script-that-takes-options/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Prevent caching of modified Javascript &amp; CSS assets</title>
		<link>http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/</link>
		<comments>http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 11:24:16 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Server side]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=510</guid>
		<description><![CDATA[There&#8217;s a very useful PHP function called filemtime, that returns the timestamp of the modification time of the file. This is similar to how the HTTP 1.1 ETag header is generated. The strategy is basically to append the modification date &#8230; <a href="http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a very useful PHP function called <a href="http://ar.php.net/filemtime">filemtime</a>, that returns the timestamp of the modification time of the file. This is similar to how the HTTP 1.1 ETag header is generated. The strategy is basically to append the modification date to the script or CSS URI in order to refresh the user&#8217;s cache when you&#8217;ve modified them.</p>
<p>This is an extract from Devthought header.php WordPress template file:</p>
<pre class='highlight ' lang="html4strict">
<link rel="stylesheet" href="<?php echo get_stylesheet_directory_uri() . '/style.css?' . filemtime(get_stylesheet_directory() . '/style.css'); ?>" type="text/css" media="screen" title="Stylesheet" charset="utf-8" />

<script type="text/javascript" charset="utf-8" src="<?php echo get_template_directory_uri() . '/js/scripts.js?' . filemtime(get_template_directory() . '/js/scripts.js'); ?>" ></script>
</pre>
<p>All you have to do is change the routes to match your files. If you&#8217;re not using wordpress, you&#8217;ll have to remove the <code class="inline">get_stylesheet_directory*</code> and <code class="inline">get_template_directory*</code> function calls and replace with your paths.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Tip: Create temporary files in PHP</title>
		<link>http://www.devthought.com/2009/03/11/tip-create-temporary-files-in-php/</link>
		<comments>http://www.devthought.com/2009/03/11/tip-create-temporary-files-in-php/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 05:28:39 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Tumble]]></category>
		<category><![CDATA[filesystem]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[tip]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=467</guid>
		<description><![CDATA[PHP provides two very useful functions to create temporary files. Instead of creating unnecessary tmp directories in your applications, it&#8217;s better to rely on the global directory assigned for that matter. To create a unique file with the right permissions &#8230; <a href="http://www.devthought.com/2009/03/11/tip-create-temporary-files-in-php/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>PHP provides two very useful functions to create temporary files. Instead of creating unnecessary <em>tmp</em> directories in your applications, it&#8217;s better to rely on the global directory assigned for that matter.</p>
<p>To create a unique file with the right permissions use the <a href="http://php.net/manual/en/function.tempnam.php">tempnam</a> function:</p>
<pre class='highlight ' lang="php">
$filename = tempnam('/tmp_directory', 'filePrefix');
</pre>
<p>You can test this from the command line like this:</p>
<pre class='highlight ' lang="bash">
php -R 'tempnam("/tmp", "hello");'
</pre>
<p>The output file looks something like this:</p>
<pre class='highlight ' lang="bash">
guillermo-rauchs-macbook-pro-15:tmp willy$ ls -la hello*
-rw-------  1 willy  staff  0 Mar 11 03:26 helloyvEzzb
</pre>
<p>Couple this function with <a href="http://php.net/manual/en/function.sys-get-temp-dir.php">sys_get_temp_dir</a> and you&#8217;ve solved the dilemma:</p>
<pre class='highlight ' lang="php">
$filename = tempnam(sys_get_temp_dir(), 'filePrefix');
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/03/11/tip-create-temporary-files-in-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tip: adjust php.ini settings for a single CLI command</title>
		<link>http://www.devthought.com/2009/02/28/php-tip-adjust-phpini-settings-for-a-single-cli-command/</link>
		<comments>http://www.devthought.com/2009/02/28/php-tip-adjust-phpini-settings-for-a-single-cli-command/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 07:29:13 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Tumble]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[tip]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=369</guid>
		<description><![CDATA[The PHP command accepts some interesting parameters which add flexibility to how scripts that you run from your shell or cron jobs are executed. One of them is -d, which alters a php.ini value for the duration of the command. &#8230; <a href="http://www.devthought.com/2009/02/28/php-tip-adjust-phpini-settings-for-a-single-cli-command/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The PHP command accepts some <a href="http://ar.php.net/features.commandline">interesting parameters</a> which add flexibility to how scripts that you run from your shell or cron jobs are executed.</p>
<p>One of them is <strong>-d</strong>, which alters a php.ini value for the duration of the command. An example is as follows:</p>
<pre class='highlight ' lang="bash">
php5 -d memory_limit=128M symfony propel:data-load
</pre>
<p>This was a real time saver considering the server was not setup with a CLI-specific php.ini, like some are.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/02/28/php-tip-adjust-phpini-settings-for-a-single-cli-command/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Custom fields in edit/new admin generator views in Symfony</title>
		<link>http://www.devthought.com/2009/02/13/custom-fields-in-editnew-admin-generator-views-in-symfony/</link>
		<comments>http://www.devthought.com/2009/02/13/custom-fields-in-editnew-admin-generator-views-in-symfony/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 18:19:53 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Server side]]></category>
		<category><![CDATA[forms]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://devthought/?p=239</guid>
		<description><![CDATA[Let&#8217;s say we want to create a field to set the password in plain text from the admin panel, then convert it to sha1 before saving it. Our hypothetical module will be located in backend/modules/admins/, which is a Symfony admin &#8230; <a href="http://www.devthought.com/2009/02/13/custom-fields-in-editnew-admin-generator-views-in-symfony/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s say we want to create a field to set the password in plain text from the admin panel, then convert it to sha1 before saving it. Our hypothetical module will be located in backend/modules/<strong>admins</strong>/, which is a Symfony admin generator module for an <strong>AdminUser</strong> model.</p>
<p>First we define the getters and setters for the plaintext password in the AdminUser model:</p>
<pre class='highlight ' lang="php">
  public function setPasswordPlain($plain)
  {
    if(! empty($plain))
        $this->setPassword(sha1($plain));
  }

  public function getPasswordPlain()
  {
    return "";
  }
</pre>
<p>Then, in generator.yml we add this field to <strong>form</strong> sections, using the <strong>display</strong> parameter:</p>
<pre class='highlight ' lang="nada">
      form:
        display:              [login, password_plain, email]
</pre>
<p>If we try the generator now, we&#8217;ll get an error message telling us that password_plain widget does not exist, which is true. The new admin generator uses the great Symfony 1.2 forms system, which treats a form as a set of widgets and validators.</p>
<p>If we inspect the <strong>lib</strong> directory of our generated module we&#8217;ll notice the file called adminsGeneratorConfiguration.class.php. This file extends BaseAdminsGeneratorConfiguration which, if we look closely, configures what form is related to this generated module:</p>
<pre class='highlight ' lang="php">
  public function getFormClass()
  {
    return 'AdminUserForm';
  }
</pre>
<p>What we have to do is obvious. We extend AdminUserForm, and we override that method to return the name of our new class. In the same lib directory we create the form:</p>
<pre class='highlight ' lang="php">
class myAdminUserForm extends BaseAdminUserForm
{

  public function configure()
  {
    parent::configure();

    $this->setWidget('password_plain', new sfWidgetFormInput());
    $this->setValidator('password_plain', new sfValidatorString(array('max_length' => 255, 'required' => false)));
  }

}
</pre>
<p>and finally we alter the adminsGeneratorConfiguration accordingly:</p>
<pre class='highlight ' lang="php">
class adminsGeneratorConfiguration extends BaseAdminsGeneratorConfiguration
{

  public function getFormClass()
  {
    return 'myAdminUserForm';
  }

}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/02/13/custom-fields-in-editnew-admin-generator-views-in-symfony/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Append your blog description to the window title in WordPress</title>
		<link>http://www.devthought.com/2009/01/29/append-your-blog-description-to-the-window-title-in-wordpress/</link>
		<comments>http://www.devthought.com/2009/01/29/append-your-blog-description-to-the-window-title-in-wordpress/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 06:07:46 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Tumble]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[tip]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://devthought/?p=217</guid>
		<description><![CDATA[I wanted my homepage title to reveal my writing goals and interests. The importance of the title, to me, is obvious: It&#8217;s one of the first things people notice. It&#8217;s visible in the window chrome, the tabs, the bookmarks It&#8217;s &#8230; <a href="http://www.devthought.com/2009/01/29/append-your-blog-description-to-the-window-title-in-wordpress/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I wanted my homepage title to reveal my writing goals and interests. The importance of the title, to me, is obvious:</p>
<ul>
<li>It&#8217;s one of the first things people notice.</li>
<li>It&#8217;s visible in the window chrome, the tabs, the bookmarks</li>
<li>It&#8217;s something search engines pay attention to</li>
</ul>
<p>WordPress settings allow you to set the blog title and description. With this modification, the description will be appended whenever a post title is not displayed, to avoid making it extremely long.</p>
<p>Edit the <strong>functions.php</strong> file of your template and append:</p>
<pre class='highlight ' lang="php" line="1">
add_filter('wp_title', 'dv_wp_title', 100, 3);

$dv_append_subtitle = false;

function dv_wp_title($title)
{
  global $dv_append_subtitle;

  if($title === '')
    $dv_append_subtitle = true;

  return $title;
}

function dv_the_subtitle($sep = '&mdash;')
{
  global $dv_append_subtitle;

  if($dv_append_subtitle)
  {
    echo $sep ? $sep . ' ' : '';
    bloginfo('description');
  }
}
</pre>
<p>Then go to <strong>header.php</strong> and make your title tag look like this (notice that I added the dv_the_subtitle call)</p>
<pre class='highlight ' lang="html4strict">
</pre>
<p>And that&#8217;s it! If you want to customize the separator, which defaults to &mdash; pass it as an argument to dv_the_subtitle.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/01/29/append-your-blog-description-to-the-window-title-in-wordpress/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>WP-o-Matic 1.0RC4 released</title>
		<link>http://www.devthought.com/2008/07/17/wp-o-matic-10rc4-released/</link>
		<comments>http://www.devthought.com/2008/07/17/wp-o-matic-10rc4-released/#comments</comments>
		<pubDate>Thu, 17 Jul 2008 16:16:13 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>
		<category><![CDATA[wp-o-matic]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=37</guid>
		<description><![CDATA[Some important and some not-as-important bug fixes in this version. Hopefully this will be the last release candidate before the grand 1.0 release: Tables not deleted anymore upon installation Fixed SimplePie error report. Fixed small post content bug (not hidden &#8230; <a href="http://www.devthought.com/2008/07/17/wp-o-matic-10rc4-released/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Some important and some not-as-important bug fixes in this version. Hopefully this will be the <strong>last release candidate</strong> before the grand 1.0 release:</p>
<ul>
<li>Tables not deleted anymore upon installation</li>
<li>Fixed SimplePie error report.</li>
<li>Fixed small post content bug (not hidden by default)</li>
<li>Fixed cron url </li>
<li>Removed inverted quotes from queries</li>
<li>Fixed notices in debug mode</li>
<li>No error showing for campaigns w/o feeds fixed</li>
</ul>
<p><a href="http://downloads.wordpress.org/plugin/wp-o-matic.1.0RC4.zip">Click here</a> to download</p>
<p>As usual, head to <a href="http://wpomatic.lighthouseapp.com">Lighthouse</a> for bug reports</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2008/07/17/wp-o-matic-10rc4-released/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>WP-o-Matic 1.0RC3 beta shipping.</title>
		<link>http://www.devthought.com/2008/05/03/wp-o-matic-10rc3-beta-shipping/</link>
		<comments>http://www.devthought.com/2008/05/03/wp-o-matic-10rc3-beta-shipping/#comments</comments>
		<pubDate>Sun, 04 May 2008 00:53:18 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>
		<category><![CDATA[wp-o-matic]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=34</guid>
		<description><![CDATA[Here is the upcoming RC3 release! Remember that, just like any release prior to 1.0, upgrading will erase your previous campaigns, feeds, logs, etc. Now compatible with WordPress 2.5 Categories shown with indentation (parent > children now separated) SimplePie updated &#8230; <a href="http://www.devthought.com/2008/05/03/wp-o-matic-10rc3-beta-shipping/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://downloads.wordpress.org/plugin/wp-o-matic.zip">Here is the upcoming RC3 release</a>!</p>
<p><strong>Remember that, just like any release prior to 1.0, upgrading will erase your previous campaigns, feeds, logs, etc.</strong></p>
<ul>
<li>Now compatible with WordPress 2.5</li>
<li>Categories shown with indentation (parent > children now separated)</li>
<li>SimplePie updated to 1.1.1, and SimplePie Core now supported.</li>
<li>Fixed broken cron command</li>
<li>Fixed broken export on some systems</li>
<li>Fixed broken redirect when resetting a campaign</li>
<li>Everything now stored in GMT to avoid time issues. Gotten rid of NOW() functions in favor of WP time functions</li>
<li>Fixed bug with validation upon deletion of feeds in existing campaigns </li>
<li>Fixed bug with &#8216;allow comments&#8217; setting.</li>
<li>Fixed bug with logs dates</li>
<li>Fixed bug with double quote escaping (fixes campaign templates / rewrite html bugs)</li>
<li>Username in options tab changed to a more handy select box.</li>
<li>Interface now looks better on IE (d&#8217;oh)</li>
<li>Added many help files</li>
<li>Fixed annoying duplicates bug</li>
<li>Fixed small bug in import with labels</li>
</ul>
<p><strong>I need feedback on:</strong></p>
<ul>
<li>All sorts of errors, warnings, notices, blank screens</li>
<li>Styling problems, indicating Browser, OS, URL and a screenshot.</li>
<li>Behavioral problems: bad dates, bad content, duplicates, etc</li>
<li>Performance problems</li>
<li>Unexpected behavior</li>
</ul>
<p>Always include instructions on how to reproduce the issues please!</p>
<p>Go ahead and <a href="http://downloads.wordpress.org/plugin/wp-o-matic.zip">download it</a></p>
<p><strong>Updates</strong> </p>
<ul>
<li>1 &#8211; Fixed bugs with categories in edit mode and posts tools (thanks Mike)</li>
<li>2 &#8211; Fixed empty rewrite bug (thanks Mike) and replacements now case insensitive</li>
<li>3 &#8211; Fixed bugs with &#8216;use feed date&#8217; option, footer copyright, bad dates in &#8216;view all&#8217; logs, log message field made text, timestamps converted to datetime, &#8216;Clean logs&#8217; function fixed (<strong>big</strong> changes, please test)</li>
<li>4 &#8211; Fixed bugs with older WP releases (now WP-o-Matic works with any version starting from 2.2). Now rewrite works with PHP4.</li>
<li>5 &#8211; str_ireplace bug fixed, allow comments bug fixed, now user can choose comments state.</li>
<li>6 &#8211; {content} not getting rewritten fixed, titles and other settings not being stored fixed.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2008/05/03/wp-o-matic-10rc3-beta-shipping/feed/</wfw:commentRss>
		<slash:comments>87</slash:comments>
		</item>
		<item>
		<title>WP-o-Matic 1.0RC3 on its way</title>
		<link>http://www.devthought.com/2008/02/23/wp-o-matic-rc3-on-its-way/</link>
		<comments>http://www.devthought.com/2008/02/23/wp-o-matic-rc3-on-its-way/#comments</comments>
		<pubDate>Sat, 23 Feb 2008 03:30:23 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>
		<category><![CDATA[wp-o-matic]]></category>

		<guid isPermaLink="false">http://devthought.com/wp-o-matic-rc3-on-its-way/</guid>
		<description><![CDATA[Update: here it is Just writing to let you know that the upcoming release candidate of WP-o-Matic is being cooked and betatested! This is a list of all the exciting changes, which include new features you&#8217;ve been requesting and lots &#8230; <a href="http://www.devthought.com/2008/02/23/wp-o-matic-rc3-on-its-way/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>Update:</strong> <a href="http://devthought.com/wp-o-matic-10rc3-beta-shipping/">here</a> it is</p>
<p>Just writing to let you know that the upcoming release candidate of WP-o-Matic is being cooked and betatested!</p>
<p>This is a list of all the exciting changes, which include new features you&#8217;ve been requesting and lots of bugfixes</p>
<ul>
<li>   Categories shown with indentation (parent > children now separated)</li>
<li>   <em>Fixed broken cron command</em></li>
<li>   <em>SimplePie updated to 1.1</em></li>
<li>   Fixed broken export on some systems</li>
<li>   Fixed broken redirect when resetting a campaign</li>
<li>   <em>Everything now stored in GMT to avoid time issues. Gotten rid of NOW() functions in favor of WP time functions</em></li>
<li>   Fixed bug with validation upon deletion of feeds in existing campaigns </li>
<li>   Fixed bug with &#8216;allow comments&#8217; setting.</li>
<li>   Fixed bug with logs dates</li>
<li><em>   Fixed bug with double quote escaping (fixes campaign templates / rewrite html bugs)</em></li>
<li>   Username in options tab changed to a more handy select box.</li>
<li>   Interface now looks better on IE (d&#8217;oh)</li>
<li><em>New option added to select max number of items to process</em></li>
<li><em>New option added to decide whether the permalink should point to the created blog post or to the source permalink</em></li>
<li><em>New general option to get logs feedback while the campaign is being processed.</em></li>
</ul>
<p>As usual, stay tuned. Sorry for not being able to respond and release with more frequency, but I&#8217;ve been really busy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2008/02/23/wp-o-matic-rc3-on-its-way/feed/</wfw:commentRss>
		<slash:comments>43</slash:comments>
		</item>
	</channel>
</rss>

