<?xml version="1.0" encoding="utf-8"?><!-- generator="wordpress/2.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: Hacking Wordpress</title>
	<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/</link>
	<description>Night is darkest just before the dawn...</description>
	<pubDate>Tue, 06 Jan 2009 22:26:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2</generator>

	<item>
		<title>By: Justin Adie</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-47980</link>
		<author>Justin Adie</author>
		<pubDate>Wed, 14 Nov 2007 21:33:05 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-47980</guid>
		<description>two years later and i have just (independently) finished a first public release of a PDO port for wordpress.  there is a sqlite driver provided too. http://rathercurious.net/archives/20

should have googled first!</description>
		<content:encoded><![CDATA[<p>two years later and i have just (independently) finished a first public release of a PDO port for wordpress.  there is a sqlite driver provided too. <a href="http://rathercurious.net/archives/20" rel="nofollow">http://rathercurious.net/archives/20</a></p>
<p>should have googled first!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: auroraeosrose</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-515</link>
		<author>auroraeosrose</author>
		<pubDate>Thu, 24 Nov 2005 22:54:55 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-515</guid>
		<description>You link to this blog and it magically shows up here - that's how the "last post" got here.  Try looking up "trackback" in wikipedia :)

I'm not sure if you're using the latest version of this patch - I fixed some bugs as well as changed things for the 1.5.3 patch.  Try using the 1.5.2 patches regular files and the 1.5.3 versions db-sqlite.php file.  You also might have some problems with sqlite if you're running php4 with the pecl version of sqlite instead of php5 with the built in version - different features are available with the two.</description>
		<content:encoded><![CDATA[<p>You link to this blog and it magically shows up here - that&#8217;s how the &#8220;last post&#8221; got here.  Try looking up &#8220;trackback&#8221; in wikipedia <img src='http://elizabethmariesmith.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;m not sure if you&#8217;re using the latest version of this patch - I fixed some bugs as well as changed things for the 1.5.3 patch.  Try using the 1.5.2 patches regular files and the 1.5.3 versions db-sqlite.php file.  You also might have some problems with sqlite if you&#8217;re running php4 with the pecl version of sqlite instead of php5 with the built in version - different features are available with the two.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nagilum</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-514</link>
		<author>Nagilum</author>
		<pubDate>Thu, 24 Nov 2005 17:22:01 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-514</guid>
		<description>Hmm, I don't know how this last post got into this blog, however I've been trying to get wordpress to use sqlite, without success so far. Unfortunately no error messages available.
However I still created a patch file from the zip file and the 1.5.2 Release (I have no 1.5.3 version, since I prefer to remain stable, so that might be the cause of the hickup), so if you prefer a patch to see what has actually been changed or save some bandwidth fetch it from here:
   http://www.nagilum.de/unix/wp.patch.bz2 (14k)
to apply the patch extract wordpress for example to /srv/wordpress the goto /srv and do:
  bzip2 -dc wp.patch.bz2&#124;patch -p0</description>
		<content:encoded><![CDATA[<p>Hmm, I don&#8217;t know how this last post got into this blog, however I&#8217;ve been trying to get wordpress to use sqlite, without success so far. Unfortunately no error messages available.<br />
However I still created a patch file from the zip file and the 1.5.2 Release (I have no 1.5.3 version, since I prefer to remain stable, so that might be the cause of the hickup), so if you prefer a patch to see what has actually been changed or save some bandwidth fetch it from here:<br />
   <a href="http://www.nagilum.de/unix/wp.patch.bz2" rel="nofollow">http://www.nagilum.de/unix/wp.patch.bz2</a> (14k)<br />
to apply the patch extract wordpress for example to /srv/wordpress the goto /srv and do:<br />
  bzip2 -dc wp.patch.bz2|patch -p0</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nagilum&#8217;s Cookie Jar &#187; cakebox on diet</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-513</link>
		<author>Nagilum&#8217;s Cookie Jar &#187; cakebox on diet</author>
		<pubDate>Wed, 23 Nov 2005 12:31:39 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-513</guid>
		<description>[...] During the last weeks or months I have grown a bit dissatisfied with the performance of my beloved cakebox. Since this is mostly due to the lack of memory which can&#8217;t be helped by adding some more I have now started in looking into reducing the amount of memory needed for running my services. The first thing I will try to do is to get rid of MySQL since it uses about 60MB of RAM/Swap. MySQL was mainly used by the spamfilter dspam, but I have already switched that one to sqlite. It is currently still used by Horde/Imp, the other installed webmailer and WordPress. Horde/Imp has native sqlite support, so this will be easy. The other webmailer seems to be a dead project and I havent used it for quite some time so I&#8217;ll simply remove it. Wordpress does not yet support sqlite, so this could become interesting. Maybe I&#8217;ll fix that personally or simply use an existing patch. Security wise I see only WordPress as a problem as the other DBs do not contain any passwords. When I&#8217;m done with all this I can replace phpMyAdmin with the SQLite counterpart and finally deactive MySQL *horray*. Ofcourse I will also look into other areas for possible memory hogs which can be trimmed, especially apache seems be quite wasteful at the moment.. [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] During the last weeks or months I have grown a bit dissatisfied with the performance of my beloved cakebox. Since this is mostly due to the lack of memory which can&#8217;t be helped by adding some more I have now started in looking into reducing the amount of memory needed for running my services. The first thing I will try to do is to get rid of MySQL since it uses about 60MB of RAM/Swap. MySQL was mainly used by the spamfilter dspam, but I have already switched that one to sqlite. It is currently still used by Horde/Imp, the other installed webmailer and WordPress. Horde/Imp has native sqlite support, so this will be easy. The other webmailer seems to be a dead project and I havent used it for quite some time so I&#8217;ll simply remove it. Wordpress does not yet support sqlite, so this could become interesting. Maybe I&#8217;ll fix that personally or simply use an existing patch. Security wise I see only WordPress as a problem as the other DBs do not contain any passwords. When I&#8217;m done with all this I can replace phpMyAdmin with the SQLite counterpart and finally deactive MySQL *horray*. Ofcourse I will also look into other areas for possible memory hogs which can be trimmed, especially apache seems be quite wasteful at the moment.. [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: auroraeosrose</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-172</link>
		<author>auroraeosrose</author>
		<pubDate>Sat, 09 Jul 2005 00:04:45 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-172</guid>
		<description>well, if you take a look at the sqlite database class you'll see I'm intercepting some queries and fixing them (preg_match is my friend...occasionally)

so if sqlite doesn't like limit on update or delete (why the heck would you need it anyway...ah nevermind, this is mysql nuttiness) - just match UPDATE(*)LIMIT(*) and clip it off at the limit statement

As far as the header stuff goes, I didn't touch it, so don't ask me - take a look at the files I did edit, the only things I messed with were strictly query related, so the header problem is beyond my scope - this site runs the same code and I don't have any problems</description>
		<content:encoded><![CDATA[<p>well, if you take a look at the sqlite database class you&#8217;ll see I&#8217;m intercepting some queries and fixing them (preg_match is my friend&#8230;occasionally)</p>
<p>so if sqlite doesn&#8217;t like limit on update or delete (why the heck would you need it anyway&#8230;ah nevermind, this is mysql nuttiness) - just match UPDATE(*)LIMIT(*) and clip it off at the limit statement</p>
<p>As far as the header stuff goes, I didn&#8217;t touch it, so don&#8217;t ask me - take a look at the files I did edit, the only things I messed with were strictly query related, so the header problem is beyond my scope - this site runs the same code and I don&#8217;t have any problems</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Diego</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-171</link>
		<author>Diego</author>
		<pubDate>Fri, 08 Jul 2005 20:05:21 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-171</guid>
		<description>There are some problems with sql LIMIT statement used by wordpress for some queries (LIMIT is supported by sqlite for select but not for update o delete operations). I have "commented" the LIMIT statement and it works.

I have also a problem with php function header() when i "Unapprove" a comment in the admin section (Manage &#62; Posts). It's the classic problem when you call too much header() to set http header.</description>
		<content:encoded><![CDATA[<p>There are some problems with sql LIMIT statement used by wordpress for some queries (LIMIT is supported by sqlite for select but not for update o delete operations). I have &#8220;commented&#8221; the LIMIT statement and it works.</p>
<p>I have also a problem with php function header() when i &#8220;Unapprove&#8221; a comment in the admin section (Manage &gt; Posts). It&#8217;s the classic problem when you call too much header() to set http header.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: auroraeosrose</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-169</link>
		<author>auroraeosrose</author>
		<pubDate>Fri, 08 Jul 2005 16:28:11 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-169</guid>
		<description>Wow, look at that...July 2 the diff is finally accepted for the add_slashes bug

now if they'd take a look at http://trac.wordpress.org/ticket/1395 maybe I'll make some noise for mysqli support and sqlite support

Sqlite will most likely come BEFORE any other db, why? because of the very powerful way you can register functions for sqlite right from php - why is this useful?  because wordpress is VERY dependent on mysql date functions (which I replicated in php for sqlite), there was a thread on hackers about it...personally I prefer to use the db specific date stuff instead of unix timestamps, it's more useful and flexible.  The point is to write the functionality into your db abstraction layer - in my pff classes I have a function called, well, functions, that you send a generalized function name (date, time, substring) and any arguments for it, and each db driver then writes out the proper function to use 

Postgres is a little more strict with their sql syntax, but they also can use udfs to fake mysql functions so if wordpress would clean it's sql act up a little I could take out the regex stuff in the hack - which does add time onto everything

also, for some odd, strange reason instead of using last_insert_id type stuff there are several places in the wordpress source that use 'show table status' to get the autoincrement value for a table (stupid)

I have svn installed - tortoisesvn is my favorite thing :) , I'll just need to diff every file I changed against the current release - blah

Thanks for the praise - hope you enjoy</description>
		<content:encoded><![CDATA[<p>Wow, look at that&#8230;July 2 the diff is finally accepted for the add_slashes bug</p>
<p>now if they&#8217;d take a look at <a href="http://trac.wordpress.org/ticket/1395" rel="nofollow">http://trac.wordpress.org/ticket/1395</a> maybe I&#8217;ll make some noise for mysqli support and sqlite support</p>
<p>Sqlite will most likely come BEFORE any other db, why? because of the very powerful way you can register functions for sqlite right from php - why is this useful?  because wordpress is VERY dependent on mysql date functions (which I replicated in php for sqlite), there was a thread on hackers about it&#8230;personally I prefer to use the db specific date stuff instead of unix timestamps, it&#8217;s more useful and flexible.  The point is to write the functionality into your db abstraction layer - in my pff classes I have a function called, well, functions, that you send a generalized function name (date, time, substring) and any arguments for it, and each db driver then writes out the proper function to use </p>
<p>Postgres is a little more strict with their sql syntax, but they also can use udfs to fake mysql functions so if wordpress would clean it&#8217;s sql act up a little I could take out the regex stuff in the hack - which does add time onto everything</p>
<p>also, for some odd, strange reason instead of using last_insert_id type stuff there are several places in the wordpress source that use &#8217;show table status&#8217; to get the autoincrement value for a table (stupid)</p>
<p>I have svn installed - tortoisesvn is my favorite thing <img src='http://elizabethmariesmith.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , I&#8217;ll just need to diff every file I changed against the current release - blah</p>
<p>Thanks for the praise - hope you enjoy</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Diego</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-168</link>
		<author>Diego</author>
		<pubDate>Fri, 08 Jul 2005 09:23:09 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-168</guid>
		<description>I have tested you patch with 1.5.1.3 and it works. (i just added the missing line to make it work).
if you install "svn" you can make a diff file very quickly :P

I hope they will use your patch in the main wordpress tree. It's super, you have done a fantastic work :D</description>
		<content:encoded><![CDATA[<p>I have tested you patch with 1.5.1.3 and it works. (i just added the missing line to make it work).<br />
if you install &#8220;svn&#8221; you can make a diff file very quickly <img src='http://elizabethmariesmith.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>I hope they will use your patch in the main wordpress tree. It&#8217;s super, you have done a fantastic work <img src='http://elizabethmariesmith.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: auroraeosrose</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-167</link>
		<author>auroraeosrose</author>
		<pubDate>Fri, 08 Jul 2005 03:29:20 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-167</guid>
		<description>I need to 
1. upgrade this blog
2. diff the hack against the new wordpress files
3. post the new (fixed) version

but I'll be gone for a few weeks here on vacation so gimme some time :)</description>
		<content:encoded><![CDATA[<p>I need to<br />
1. upgrade this blog<br />
2. diff the hack against the new wordpress files<br />
3. post the new (fixed) version</p>
<p>but I&#8217;ll be gone for a few weeks here on vacation so gimme some time <img src='http://elizabethmariesmith.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 二三街角  &#187; Blog Archive   &#187; 幾個 WP 相關的 project</title>
		<link>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-166</link>
		<author>二三街角  &#187; Blog Archive   &#187; 幾個 WP 相關的 project</author>
		<pubDate>Fri, 08 Jul 2005 01:49:46 +0000</pubDate>
		<guid>http://elizabethmariesmith.com/2005/02/hacking-wordpress/#comment-166</guid>
		<description>[...] &#124; Add to del.icio.us or furl &#124; Print this post 			 			 					K2 alpha 關於 K2 的資料. 	SQLite, PgSQL, MySQLi support for WP, 另外參考一下 wp-hackers 上的討論串, [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] | Add to del.icio.us or furl | Print this post 			 			 					K2 alpha 關於 K2 的資料. 	SQLite, PgSQL, MySQLi support for WP, 另外參考一下 wp-hackers 上的討論串, [&#8230;]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
