Announcing PHP Tag Engine

Posted in: PHP Tag Engine, Tasks Pro™

PHP Tag Engine is a PHP library that makes it easy to add tagging to a PHP application.

PHP Tag Engine

Some of the features include:

  • Full AJAX front-end.
  • Easy integration into existing applications.
  • Built-in support for the Yahoo! Auto-Complete library.
  • Built-in cache to minimize database queries.
  • Fully documented in PHP Doc format.

This is, of course, what is powering the new tagging feature in Tasks Pro™ and Tasks.

I’ve started using more open source libraries in Tasks Pro™ and Tasks. This biggest one I’m using is the ADOdb library that allowed me to easily add support for PostgreSQL and MS SQL Server to my existing MySQL support, however I’m also using the excellent Feed Creator class as well as distributing a slightly modified version of PHP iCalendar as a viewer for the Tasks Pro™ and Tasks iCalendars. So when I was thinking about how best to implement tagging in Tasks Pro™ and Tasks, I saw an opportunity to contribute back to the community. OSCON seemed like a good time to officially release.

For those paying close attention, this is the project I started back in March.

I’ve set up a Trac site and SVN repository for the project at phptagengine.com. This is hosted on TextDrive, and many kudos go out to the great folks there that helped me get everything set up and working.

Trac is exactly what I wanted for this project: a wiki, web SVN interface and integrated bug tracking system. However, Trac is not the friendliest of tools to configure and the good folks at TextDrive were very helpful.

One of the interesting things (to me) about Trac is that there is no built-in user system. It can either use your system users, or it can authenticate against a MySQL database using mod_auth_mysql. We used the latter, authenticating against a WordPress install that I set up to allow people to register themselves.

Once registered, they can log in to Trac and be able to edit the wiki and create tickets. This isn’t quite as smooth as I’d like it to be, but I’m just glad it works at all at this point. ;) Many thanks to Matt for his advice on this subject.

The httpd.conf settings for making Trac authenticate against the WordPress user database (using mod_auth_mysql) are as follows:

<Location /login>
AuthName "PHP Tag Engine"
AuthType Basic
AuthMySQLHost localhost
AuthMySQLUser your-mysql-username
AuthMySQLPassword your-mysql-password
AuthMySQLDB your-mysql-database-name
AuthMySQLUserTable wp_users
AuthMySQLNameField user_login
AuthMySQLPasswordField user_pass
AuthMySQLMD5Passwords On
Require valid-user
</Location>

Hopefully this will be helpful to the next person who wants to allow folks to register themselves for a Trac installation.

Oh, and there is another OS tagging library for PHP called FreeTag. If it had launched (or I’d been able to find it) a little earlier, I’d probably have extended it instead of building my own. Unfortunately, by the time I found out about it PHP Tag Engine was almost feature complete.

Popularity: 7% [?]

Posted July 28th, 2006 @ 12:27 AM

9 Replies

  1. Geof F. Morris adds this Comment:

    Glad you’re done with it, and thanks for putting it out there, Alex. :)

    July 28th, 2006 at 9:14 am

  2. Ahmed adds this Comment:

    Thanks for blogging about this library :)

    and btw. are you the owner of http://www.taskspro.com?

    July 31st, 2006 at 10:15 am

  3. Alex adds this Comment:

    Yes, you’ll see Tasks Pro, etc. linked to from here.

    July 31st, 2006 at 4:12 pm

  4. Geof F. Morris adds this Comment:

    August 4th, 2006 at 10:07 am

  5. Kicking Dragon (dot) com » Trac + Wordpress = PHP + Python Love adds this Pingback:

    [...] Following Alex King’s technique, I managed to get the two talking. Now anyone who’s registered with KickingDragon can log in to my Trac installation as well. Meaningless really as everyone (except for me, obviously) has the same permissions, but it makes maintenance easier for me. [...]

    August 9th, 2006 at 8:55 pm

  6. dekoo adds this Comment:

    How to implement PHP Tag Engine in my project? I need an example, because phptagengine-example.php is not fully and clear for me :(

    Thanks anyway.

    August 16th, 2006 at 10:56 pm

  7. Alex adds this Comment:

    Add a ticket on phptagengine.com and/or start a wiki page for examples. It’s open source – you want something, help make it happen. :)

    August 17th, 2006 at 4:35 am

  8. 2006 in Review | alexking.org adds this Pingback:

    [...] July – I struggle with Quoted Printable e-mails and release the first beta of Tasks Pro™ 1.7 and Tasks 2.7. I lose DSL connectivity for a few days. PHP Tag Engine is officially announced. [...]

    April 18th, 2007 at 11:43 am

  9. PHP adds this Comment:

    PHP tag engine looks a useful library. Thanks for sharing information.

    July 31st, 2008 at 12:44 am

Add a Comment

Please note: Use of a non-personal web site or blog URL in the field below and/or comments that are off-topic, personal attacks, or support requests will likely be removed at my discretion. If you need help with WordPress or a WordPress plugin, please contact the WordPress HelpCenter.

Note: This post is over 3 years old. You may want to check later in this blog to see if there is new information relevant to your comment.

» «

About This Site

This is the personal web site of Alex King, a web developer in Denver, Colorado USA. More...


Crowd Favorite

Crowd Favorite is my software and web development business.

We build web applications, design and develop custom WordPress themes and plugins, and build custom sites using WordPress as a CMS.


I also have a tumblog that aggregates my online content from other services (Twitter, Flickr, del.icio.us. etc.).

America - america09.com