Essentially you have to generate your URLs like this: * <a href="http://apple.com/ipod" rel="tag"></a> * <a href="http://en.wikipedia.org/wiki/Gravity" rel="tag"></a> * <a href="http://flickr.com/photos/tags/chihuahua" rel="tag"></a> If rel="tag" is specified, tools like technorati will use the last word of the URL as being the tag (see http://www.technorati.com/help/ tags.html). The tags would be respectively: * ipod * gravity * chihuahua Drupal, however, generates: * <a href="/taxonomy/term/15" rel="tag" title=""> * <a href="/taxonomy/term/16" rel="tag" title=""> so microformat aware crawlers pick it up as being: * 15 * 16 When you use freetagging, like I do on my blog, having to map 'taxonomy/term/15' on something crawler friendly like 'tag/drupal' is kinda tiresome -- especially when you have many tags. The current user interface doesn't lend itself to this. Suggestions on how we can make this easier, and how we can make it so that Drupal generates URLs can automatically take advantage of the latest developments in microformats (like Technorati and shortly, Microsoft)? Maybe there should be a checkbox in the taxonomy.module to enable/ disable the auto-generation of clean URLs? Or maybe there should be a better UI to mass alias taxonomy URLs? -- Dries Buytaert :: http://www.buytaert.net/
Dries Buytaert wrote:
Essentially you have to generate your URLs like this:
* <a href="http://apple.com/ipod" rel="tag"></a> * <a href="http://en.wikipedia.org/wiki/Gravity" rel="tag"></a> * <a href="http://flickr.com/photos/tags/chihuahua" rel="tag"></a>
If rel="tag" is specified, tools like technorati will use the last word of the URL as being the tag (see http://www.technorati.com/help/tags.html). The tags would be respectively:
* ipod * gravity * chihuahua
Drupal, however, generates:
* <a href="/taxonomy/term/15" rel="tag" title=""> * <a href="/taxonomy/term/16" rel="tag" title="">
so microformat aware crawlers pick it up as being:
* 15 * 16
When you use freetagging, like I do on my blog, having to map 'taxonomy/term/15' on something crawler friendly like 'tag/drupal' is kinda tiresome -- especially when you have many tags. The current user interface doesn't lend itself to this.
Right.
Suggestions on how we can make this easier, and how we can make it so that Drupal generates URLs can automatically take advantage of the latest developments in microformats (like Technorati and shortly, Microsoft)?
Maybe there should be a checkbox in the taxonomy.module to enable/disable the auto-generation of clean URLs? Or maybe there should be a better UI to mass alias taxonomy URLs?
You could look at pathauto module and see if it already provides automatic aliases for taxo terms. If it does not it should be fairly easy to add. I don't think that alias generation should be tied directly into taxonomy.module. Cheers, Gerhard
Suggestions on how we can make this easier, and how we can make it so that Drupal generates URLs can automatically take advantage of the latest developments in microformats (like Technorati and shortly, Microsoft)?
Maybe there should be a checkbox in the taxonomy.module to enable/disable the auto-generation of clean URLs? Or maybe there should be a better UI to mass alias taxonomy URLs?
You could look at pathauto module and see if it already provides automatic aliases for taxo terms. If it does not it should be fairly easy to add. I don't think that alias generation should be tied directly into taxonomy.module.
Here is a second vote for pathauto. One of the few modules I can't live without. By default, it uses [cat] as the alias, which is just the term name. It can also get more creative, and use [vocab]/[catpath]. All that is missing is we add the part with : rel="tag" I guess it is a good feature for sitemenu and the other taxo based modules.
Op 21-mei-2006, om 15:27 heeft Khalid B het volgende geschreven:
Suggestions on how we can make this easier, and how we can make it so that Drupal generates URLs can automatically take advantage of the latest developments in microformats (like Technorati and shortly, Microsoft)?
Maybe there should be a checkbox in the taxonomy.module to enable/disable the auto-generation of clean URLs? Or maybe there should be a better UI to mass alias taxonomy URLs?
You could look at pathauto module and see if it already provides automatic aliases for taxo terms. If it does not it should be fairly easy to add. I don't think that alias generation should be tied directly into taxonomy.module.
Here is a second vote for pathauto. One of the few modules I can't live without. By default, it uses [cat] as the alias, which is just the term name. It can also get more creative, and use [vocab]/[catpath]. All that is missing is we add the part with : rel="tag" I guess it is a good feature for sitemenu and the other taxo based modules.
If this discussion will lead to "pathauto for core", please take over maintainership. I don't want to get even more work on my fork as I do have ATM. Contact me offlist if you want to take over maintainership. Steef
Hi, Nice this comes up again, eventhough this has been discussed several times before w/o any result ;) First of all: This goes far beyond only taxonomy. Second: this is only one possible use case. Please look beyond blogs, in all these concepts. Drupal Is NOT about blogging, Blogging is merely /one/ possible case. Pathato does all this, but pathauto is not optimal ATM. The netto result is nice, but its inner workings are IMO not core-ish enough. That said, I proposed a concept of "mappings" a few times. I know that at that time Karoly liked the concept. <code> hook_mapping() { $mappings[] = array( '#map' => '%screwdriver/details/%foo', '#variables' => array( '%foo' => 'bar', '%screwdriver' => toolbox(), ) ) } <code> then l() and url() should run trough the mapping tos generate the urls. But wait! There is more. It can handle incoming links too! With a little fantasy, this can be used inside hook_menu, or even instead of hook_menu to map urls to code! How wonderfull would it be to have a *central* place where all the url->code and code->url is generated in a consistent way! How fabulous would it nbe not to need a gazillion (I counted 160'000'000, yes 160 million) rows in one of my alias tables....) database entries, but to map the stuff dynamically. $mappings[] = array( '#title' => t('screwdriver details for %foo'), '#callback' => 'screwdriver_display_details', '#map' => '%screwdriver/details/%foo', '#variables' => array( '%foo' => 'bar', '%screwdriver' => toolbox(), ) ) Yes. This is a performance issue. But no, that is not a reason to abandon it immediately. In fact, its a good reason to investigate it in more detail and see what this mapping can do for us. Bèr PS: for more in depth details about this one should actually read the Ruby on Rails Mapping handbook. I have only paper books on this topic here, but there is a short and rough guide online: http://manuals.rubyonrails.com/read/chapter/65 You didnt think I came up with this myself, huh? ;) -- [ End user Drupal services and hosting | Sympal.nl ]
On 21 May 2006, at 16:09, Bèr Kessels wrote:
That said, I proposed a concept of "mappings" a few times. I know that at that time Karoly liked the concept.
<code> hook_mapping() { $mappings[] = array( '#map' => '%screwdriver/details/%foo', '#variables' => array( '%foo' => 'bar', '%screwdriver' => toolbox(), ) ) } <code>
I looked at the pathauto module and it is way too complex, and still too restricting at the same time. The idea of having mappings is interesting, but it's just an idea at this point. It's not clear how this can be implemented efficiently, or how it can co-exist with the current URL aliasing system. Certainly worth exploring though. All I want is to make it easier to create and edit the URL aliases for taxonomy terms (tags). I don't mind to think of a name myself, but I do mind the fact that it is such a pain to create the alias. If you add 3 new tags, it will take you 24 clicks or something. On the node submission form it is really easy to create aliases and I use it all the time. When creating new nodes, I haven't missed the pathauto module one second. On 21 May 2006, at 11:55, Gerhard Killesreiter wrote:
You could look at pathauto module and see if it already provides automatic aliases for taxo terms. If it does not it should be fairly easy to add. I don't think that alias generation should be tied directly into taxonomy.module.
I think it could potentially benefit from better URL alias integration. Like, on the 'list terms' page (administration section), it would be very convenient if you could add/edit/maintain your term's URL aliases in batch mode. It sounds like a much more interesting feature than say, the synonym terms support or the related terms support. -- Dries Buytaert :: http://www.buytaert.net/
On 5/22/06, Dries Buytaert <dries.buytaert@gmail.com> wrote:
On the node submission form it is really easy to create aliases and I use it all the time. When creating new nodes, I haven't missed the pathauto module one second.
The category module might make this easier for you - it creates categories (i.e. 'terms') as nodes, so you get to enter a URL on the 'add/edit category' page, same as on the 'add/edit' page for any other node type. This is one of the many advantages of having categories as nodes, IMO.
I think it could potentially benefit from better URL alias integration. Like, on the 'list terms' page (administration section), it would be very convenient if you could add/edit/maintain your term's URL aliases in batch mode. It sounds like a much more interesting feature than say, the synonym terms support or the related terms support.
Doing this would be tricky, as it would tie a non-taxonomy-module feature directly into the taxonomy admin interface. There would have to be a lot of if(module_exist('path')) checks going on. I also don't think that there's room for this field in the table on the 'list terms' page. Cheers, Jaza.
Jeremy Epstein wrote:
I think it could potentially benefit from better URL alias integration. Like, on the 'list terms' page (administration section), it would be very convenient if you could add/edit/maintain your term's URL aliases in batch mode. It sounds like a much more interesting feature than say, the synonym terms support or the related terms support.
Doing this would be tricky, as it would tie a non-taxonomy-module feature directly into the taxonomy admin interface. There would have to be a lot of if(module_exist('path')) checks going on. I also don't think that there's room for this field in the table on the 'list terms' page.
Hooks not if()s.... The node editing page has these hooks, the taxonomy admin interface could have these two (for adding path alias, permission, etc. settings) Gabor
On 22 May 2006, at 10:34, Gabor Hojtsy wrote:
Doing this would be tricky, as it would tie a non-taxonomy-module feature directly into the taxonomy admin interface. There would have to be a lot of if(module_exist('path')) checks going on. I also don't think that there's room for this field in the table on the 'list terms' page.
Hooks not if()s.... The node editing page has these hooks, the taxonomy admin interface could have these two (for adding path alias, permission, etc. settings)
Yep, modules could integrate like this. We've done this before, and it the only way to achieve a reasonable level of integration. -- Dries Buytaert :: http://www.buytaert.net/
Op maandag 22 mei 2006 07:44, schreef Dries Buytaert:
On the node submission form it is really easy to create aliases and I use it all the time. When creating new nodes, I haven't missed the pathauto module one second.
I see where you are heading. Indeed, a mapping thing is too complex for what you want. I thought you were looking at some general way to pathauto the term paths only. But in fact you want something like the menu/paths we have in the nodes pulled to the terms/tags. Makes sense to me. Lets leave the mappings for later then :) Bèr -- [ Bèr Kessels | Drupal services www.webschuur.com ] CVS onder de knie krijgen: http://help.sympal.nl/cvs_onder_de_knie_krijgen
Dries Buytaert wrote:
I looked at the pathauto module and it is way too complex, and still too restricting at the same time. The idea of having mappings is interesting, but it's just an idea at this point. It's not clear how this can be implemented efficiently, or how it can co-exist with the current URL aliasing system. Certainly worth exploring though.
All I want is to make it easier to create and edit the URL aliases for taxonomy terms (tags). I don't mind to think of a name myself, but I do mind the fact that it is such a pain to create the alias. If you add 3 new tags, it will take you 24 clicks or something.
On the node submission form it is really easy to create aliases and I use it all the time. When creating new nodes, I haven't missed the pathauto module one second.
On 21 May 2006, at 11:55, Gerhard Killesreiter wrote:
You could look at pathauto module and see if it already provides automatic aliases for taxo terms. If it does not it should be fairly easy to add. I don't think that alias generation should be tied directly into taxonomy.module.
I think it could potentially benefit from better URL alias integration. Like, on the 'list terms' page (administration section), it would be very convenient if you could add/edit/maintain your term's URL aliases in batch mode. It sounds like a much more interesting feature than say, the synonym terms support or the related terms support.
From the rel-tag spec (http://microformats.org/wiki/rel-tag): "Tags are embedded in HTTP URIs in a well-defined manner so that the tag embedded in an HTTP URI can be mechanically extracted from that URI. Specifically, the last segment of the path portion of the URI (after the final "/" character) contains the tag value." In the world of Microformats there is only one url segment after the / which properly encodes a tag/category/keyword/term/etc; adding a textfield to control that wouldn't be too useful since there is only one option for compliance with this spec. I would like to see core have this without the addition of any UI, probably using the approach laid out in http://drupal.org/node/63635 for nodes on the code side. The URLs can be '.../{vocabulary}(/{parent category})*/{category}'. And since we are coding Drupal here, might as well throw in an API for a pathauto-like module to go and change everything up. A module could Form API in a text field for manual editing if someone wants that. (A system to manage redirects would be nice so URLs get redirects as they are changed.) -- Neil Drumm http://delocalizedham.com/
Op dinsdag 23 mei 2006 23:36, schreef Neil Drumm:
I would like to see core have this without the addition of any UI, probably using the approach laid out in http://drupal.org/node/63635 for nodes on the code side. The URLs can be '.../{vocabulary}(/{parent category})*/{category}'.
If is is to the default one, we must EITHER no longer allow duplicate names, OR no add the ID back in the url: ../%vocabulary(/%parent category)*/%category_id/%category_name Else it will break. Bèr -- | Bèr Kessels | webschuur.com | website development | | Jabber & Google Talk: ber@jabber.webschuur.com | http://bler.webschuur.com | http://www.webschuur.com | CVS onder de knie krijgen: http://help.sympal.nl/cvs_onder_de_knie_krijgen
On 23 May 2006, at 23:36, Neil Drumm wrote:
I think it could potentially benefit from better URL alias integration. Like, on the 'list terms' page (administration section), it would be very convenient if you could add/edit/ maintain your term's URL aliases in batch mode. It sounds like a much more interesting feature than say, the synonym terms support or the related terms support.
From the rel-tag spec (http://microformats.org/wiki/rel-tag):
"Tags are embedded in HTTP URIs in a well-defined manner so that the tag embedded in an HTTP URI can be mechanically extracted from that URI. Specifically, the last segment of the path portion of the URI (after the final "/" character) contains the tag value."
In the world of Microformats there is only one url segment after the / which properly encodes a tag/category/keyword/term/etc; adding a textfield to control that wouldn't be too useful since there is only one option for compliance with this spec.
I would like to see core have this without the addition of any UI, probably using the approach laid out in http://drupal.org/node/ 63635 for nodes on the code side. The URLs can be '.../{vocabulary} (/{parent category})*/{category}'.
And since we are coding Drupal here, might as well throw in an API for a pathauto-like module to go and change everything up. A module could Form API in a text field for manual editing if someone wants that.
(A system to manage redirects would be nice so URLs get redirects as they are changed.)
Thanks for the additional research. I agree that Drupal's current behavior should be "fixed". Looks important if we want to stay competitive in terms of SEOs. -- Dries Buytaert :: http://www.buytaert.net/
Op woensdag 24 mei 2006 09:50, schreef Dries Buytaert:
Thanks for the additional research. I agree that Drupal's current behavior should be "fixed". Looks important if we want to stay competitive in terms of SEOs.
Another thing I just thought of, is that we seem to be only talking about terms/taxonomy here. This is IMO a bad thing, sine this will introduce incosistency. IMO any kind of scheme/hook/api thing should be introduced Drupal wide, or at least for users nodes comments terms Bèr -- [ End user Drupal services and hosting | Sympal.nl ] CVS onder de knie krijgen: http://help.sympal.nl/cvs_onder_de_knie_krijgen
Bèr Kessels wrote:
we seem to be only talking about terms/taxonomy here. This is IMO a bad thing, sine this will introduce incosistency. Nah, it just means all sites will be organised using taxonomy :P
-- Adrian Simmons (aka adrinux) <http://adrinux.perlucida.com> e-mail <mailto:adrinux@perlucida.com>
On 21 May 2006, at 4:09 PM, Bèr Kessels wrote:
Nice this comes up again, eventhough this has been discussed several times before w/o any result ;)
http://drupal.org/node/63635 here's an updated patch for the node path stuff. This should be extended to handle any kind of drupal object. -- Adrian Rossouw Drupal developer and Bryght Guy http://drupal.org | http://bryght.com
You could generate technorati friendly URLs, without the overhead of pathauto by generating a path like "taxonomy/term/15/ipod" or "taxonomy/term/16/Gravity". That is, just append the human readable term when generating the link. In many cases Drupal's menu system would show the desired page without any changes. (Those cases being where the callback does not expect args). -Dave On Sunday 21 May 2006 00:34, Dries Buytaert wrote:
Essentially you have to generate your URLs like this:
* <a href="http://apple.com/ipod" rel="tag"></a> * <a href="http://en.wikipedia.org/wiki/Gravity" rel="tag"></a> * <a href="http://flickr.com/photos/tags/chihuahua" rel="tag"></a>
If rel="tag" is specified, tools like technorati will use the last word of the URL as being the tag (see http://www.technorati.com/help/ tags.html). The tags would be respectively:
* ipod * gravity * chihuahua
Drupal, however, generates:
* <a href="/taxonomy/term/15" rel="tag" title=""> * <a href="/taxonomy/term/16" rel="tag" title="">
so microformat aware crawlers pick it up as being:
* 15 * 16
participants (12)
-
Adrian Rossouw -
Adrian Simmons -
Bèr Kessels -
Dave Cohen -
Dries Buytaert -
Dries Buytaert -
Gabor Hojtsy -
Gerhard Killesreiter -
Jeremy Epstein -
Khalid B -
Neil Drumm -
Stefan Nagtegaal