--- a/cleanpager.module 2009-08-03 21:38:20.000000000 +0530 +++ b/cleanpager.module 2010-03-16 22:26:04.000000000 +0530 @@ -53,14 +53,21 @@ function cleanpager_perm() { * Implementation of hook_init(). */ function cleanpager_init() { - if (cleanpager_check_match()) { + if (cleanpager_check_match() or (arg(0) == 'taxonomy' and arg(1) == 'term' and is_numeric(arg(2)))) { if (variable_get('cleanpager_use_seo_links', '') == 1) { drupal_add_js(drupal_get_path('module','cleanpager') .'/cleanpager.js'); } - $url_array = explode('/',$_GET['q']); - $page = end($url_array); - array_pop($url_array); - + if(arg(0) == 'taxonomy' and arg(1) == 'term' and is_numeric(arg(2))) { + $url_array = explode('/',$_GET['q']); + if(count($url_array) > 3) { + $page = end($url_array); + array_pop($url_array); + } + }else { + $url_array = explode('/',$_GET['q']); + $page = end($url_array); + array_pop($url_array); + } //die($page . 't'); if (is_numeric($page)) { //die($page); @@ -74,7 +81,7 @@ function cleanpager_init() { */ function cleanpager_check_match() { $q = cleanpager_path(); - if (drupal_match_path($q, variable_get('cleanpager_pages',''))) { + if (drupal_match_path($q, variable_get('cleanpager_pages','')) or (arg(0) == 'taxonomy' and arg(1) == 'term' and is_numeric(arg(2)))) { return $q; } return false; @@ -86,9 +93,16 @@ function cleanpager_check_match() { function cleanpager_path() { $q = $_GET['q']; $q_array = explode('/', $_GET['q']); - if (is_numeric(end($q_array))) { - array_pop($q_array); - $q = implode('/', $q_array); + if ((arg(0) == 'taxonomy' and arg(1) == 'term' and is_numeric(arg(2)))) { + if (is_numeric(end($q_array)) and count($q_array) > 3) { + array_pop($q_array); + $q = implode('/', $q_array); + } + }else { + if (is_numeric(end($q_array))) { + array_pop($q_array); + $q = implode('/', $q_array); + } } return $q; }