Hi,

I just ran into an issue with this module combined with Token and Path Rewrite and Path Auto.

First, we have aliased

taxonomy/term/$tid => parent/$term_name using tokens

and a content type of 'article' (using Primary Term)

node/$nid => parent/$term_name/$node_title

The problem was when I tried to setup Path Redirects when an alias is changed Subpath was taking over to the query and turned

parent/$term_name/$node_title

INTO

taxonomy/term/$tid/$node_title

Subpath took over the first part of the alias and caused Path Rewrite to think there was no redirection required (since taxonomy/term/$tid/$node_title was not in the db.

My simple fix was to make the module weight heavier to 1 so that it will fire after path_rewrite has a chance to look at the query. That resolved the problem.

I wanted to suggest that this is as a change but obviously you'll have a better grokking of the ramifications.

Comments

jonskulski’s picture

It is not a module weight issue, since by the time hook_init gets $_GET['q'] it has been rewritten.

My solution was to implement my own redirection in a hook_init based on $HTTP_GET_VARS['q'] which is never rewritten

<?php
  global $HTTP_GET_VARS;
  $original_q = $HTTP_GET_VARS['q'];
  if ($redirect = db_result(db_query('SELECT redirect FROM {path_redirect} WHERE path = "%s"', $original_q))) {
    drupal_goto($redirect);
  }
?>
joshk’s picture

HTTP_GET_VARS is not a fix. It is depricated and does not behave correctly or reliably.

TripleEmcoder’s picture

I have the same problem. It would be great if this could be fixed!

przemekz’s picture

subscribe

greggles’s picture

I have an issue to fix this in path_redirect #744730: Some redirects don't work with subpath alias installed.

I'd almost mark this as a duplicate, but don't want to hinder any work that could be done in this module.