RSS 2.0
RSS 0.91
ATOM 0.3
September 3, 2007

Plugin for administrating a link directory

Category: Søren Andersen, TYPO3

By: Søren Andersen

In my first blog post I spoke about categorization and mentioned that I'm planning on making a link-directory plugin in the lib/div framework. This post elaborates that.

First of all I would like to point out, that I'm aware that the TER allready offer plugins with possibility of ordering and administrating links. Because of that I will discuss the differences and similarities between these extensions and the one I have in mind. Since the biggest difference between them is the fact that the current extensions are build on the pibase, while mine will utilize the lib/div framework, I'll explain my choice and list some pros about the lib/div framework that I'm aware of.

The lib/div framework
Personally I've been wondering for some time, what the heck those two extensions did, that are required by some extensions. About a week ago, I found out! The extensions lib and div are what I refer to as the lib/div framework. Basically it's a whole new and much more flexible ways of writing extensions for TYPO3. It's a lot more object oriented than the pibase, which introduces some neat things, that I have been missing with the pibase.

This way of programming your extension makes it easy for others to expand your extension with new functionality, and that's done without XCLASSing! Besides that you can utilize a more powerful template engine (or you could even implement your favorite template engine in the framework). Since your extension will be divided into models, views and controllers, it would be relatively easy for a third party to use a different template engine from the one you chose when you wrote the extension. That's very powerful compared to the current way of templating!

Better yet, you can configure your extension in a way, that allows the controller to be instantiated before any output to the browser is made. Very practical for those extensions who need to use redirects.

Last but not least, the lib/div way of programming extensions have a lot more similarities to the way things will be done in 5.0 than the pibase.

Ideas about the link directory
I decided that I wanted to make a directory of links, like so many others have done before me. I wanted to provide similar functionality but with some additional things, to separate me from the others. By using TYPO3 I have a nice platform for running a directory, that I could combine with content/banner management/user administration. Now TYPO3 just need the functionality of a link directory, which is what I want to provide.

I have the following criterias:

  • It should be hyper flexible. If you want something that's not build in. It should be easy to expand it.
  • Focus on the capabilities to search engine optimization (see the categorization blog post)
  • Smooth registrationprocess for new links, with possibility to fetch title and meta-data from the desired URL.
  • Should be easy to integrate with automatic screenshot software.
  • Provide a backend module with functions like accept, deny, hide, delete, automatic link check, automatic backlink check.
  • Rating of the links should be possible

And there are dozens of other things that's on my list of things to implement. The main issue is, that I haven't made a single extension with the lib/div framework. I have gathered a lot of information from the wiki, and read the tutorials, but I'm still a bit confused about the way to program the extension. I'll take any hint to articles and literature in the comments.

Hopefully I can have something ready before christmas, but it depends a great deal on how fast I can learn to utilize the functions of the lib/div framework in a proper way. And of course how my studies and my clients are treating me ;)

Feel free to throw some comments at me, with suggestions, recommendations, help, questions, basically anything.


comment #1
Gravatar: Charles Coleman Charles Coleman September 11, 2007 17:37
This sounds like an ambitious project... have you run these thoughts past the rest of the T3 dev team?

comment #2
Gravatar: Søren Andersen Søren Andersen September 12, 2007 15:49
Nope Charles, since it's my first extension that's targeted to others than myself, I have absolutely no idea of how to present the project to the rest of the community. That's why I decided to post it here.

But my studies tell me that most of the underlying things I need for this to work, can be easily implemented in the lib/div framework.

Can you tell me how I could "run these thoughts past the T3 dev team", and what I could expect from doing that?

Sorry, comments are closed for this post.