I'm playing with Joomla 1.6 and Drupal 7 on some sample sites [I'll post the url's in a few days once I build up content].

One of the things I am doing is looking on how to use Joomla 1.6 in a Drupal manner from a user perspective[not coding].

Drupal has 2 very interesting features, Nodes and Taxonomy.

Nodes:
Instead of "content" being the basic unit of measurement, Drupal has the concept of "Nodes".... a node is very similar to a content item, it has most of the fields a content item as....but it's not specifically content. In Drupal, you then configure different "types" of content, basically extending the Node table[either by adding another table and linking it, or adding CCK fields to the content, etc].

Everything is stored in nodes + customization.

So an online store "component" does not neccessarily have an a product table and an order table. Instead, it will have a Product Node Type, and an Order Node Type. Only adding more tables if it can't be crammed into the existing Node structure.

This way each and every "item" in the Drupal world has it's own unique id/row in the node table.

They also setup by default a number of "friendly" content types such as "Blog", "Article", "Page" these are all variations on the simple "content" item with slight tweaks, mostly on some default behaviors and permissions. For example, on a magazine/social website "Pages" are the 'about us' stuff and such. So only site admins get permission to create those content types. "Articles" are the news stuff so your authors, editors, and publishers have various rights there....and by default all new articles will go to the frontpage. Wheras "Blog Entrees" could be open for any registered user to create - as all users get their own blog space.

Also each content type has friendly details for the end user telling them what sort of thing to post there, the rules for posting, etc.

So, there are 2 levels here. One is that all "things" that get created in the normal course of a website have friendly, helpful information/guidance/permissions for the user.

The second is all "components" create nodes.

The first level is easily emulated in Joomla! 1.6 ... simply create your categories for standardized pages, with permissions for different users and such. So basicaly, here you are not using categories to describe the content of the document, but rather the purpose. IE you don't create an article in the "IPad" category, a subsection of "Gadgets"... instead you create an article in the "Article" or perhaps "Review" category.

The second level requires buy in from extension developers to all agree to use the content structure as the base for as much functionality as they can... So my goal is for a small sample site to stick to this model....all components use the content tables.

Taxonomy:
This Drupal item is rather interesting. It began mainly as a free form tagging system.....with the added plus that you could have multiple "categories" of tags. So you could have a tagging category which all users can add to/use to describe content. You can also have a tagging category for the website authors to use to provide a more sophisticated/reliable set of tags for items[for example, users might tag an article as "shoes!", wheras fashion authors would tag it as "Manolo Blahnik, Fall 2010". You can also create a taxonomy which is /never/ used for tagging anything and is merely a list of frequently used terms[for example, create an SEO taxonomy of terms to include in most pages and then have a script run against all submissions to let the writer know how many they used. Or create a SPAM taxonomy of words to AVOID in content which will be emailed in order to avoid spam filters.] In Drupal 6 there were a number of extensions to Taxonomy, for example since Taxonomy was just a list of terms, there was a module that added a definition field - so now you could create a glossary.

For the longest time, in Joomla 1.5 the easiest way to emulate this was to use Remository's Glossary component: http://extensions.joomla.org/extensions/living/education-a-culture/glossary/143 And all in all it is a pretty sweeet component.

However, I REALLY want to stick as close to core as possible. And the new Category system for content seems like a pretty good system for taxonomy.

All you have to do is create a parent "Category" with the permissions set so that /no one/ can create a content item in that category. For example: "Freetagging" for tags. Or "Tech Terms" for a glossary. Every category has a description field which can be used to provide definitions of the term for glossary's or other information. There is still work to be done to build components that build on this to provide management and user interfaces - yet all in all the basic design is sweeeeet in that at least a lot of this is already provided FOR us.

Give me a week or so and I'll post back on some reports of how well it is working out... in the meantime I figured I'd solicit others opinions since my own ideas tend to get stuck in small caves of techno-babble.




_______________________________________________
New York PHP SIG: Joomla! Mailing List
http://lists.nyphp.org/mailman/listinfo/joomla

NYPHPCon 2006 Presentations Online
http://www.nyphpcon.com

Show Your Participation in New York PHP
http://www.nyphp.org/show_participation.php

Reply via email to