--- smart_paging.module.orig 2011-09-20 16:54:07.000000000 +0800 +++ smart_paging.module 2011-09-20 16:46:49.000000000 +0800 @@ -501,6 +501,12 @@ function smart_paging_url_inbound_alter( * Change pagination query type URL to a clean URL */ function smart_paging_url_outbound_alter(&$path, &$options, $original_path) { if (isset($options['query']['page'])) { $url_fragment = smart_paging_get_url_fragment(); $page_query = explode(',', $options['query']['page']); if (!empty($url_fragment) && is_array($url_fragment)) { foreach ($url_fragment as $index => $fragment) { if ($page_query[1] == $index) { $options['fragment'] = $fragment; } } } if (!empty($path) && !$options['alias']) { $language = isset($options['language']) && isset($options['language']->language) ? $options['language']->language : NULL; $alias = drupal_get_path_alias($original_path, $language); if ($alias != $original_path) { $path = $alias; $options['alias'] = TRUE; } else { $path_arg = arg(); $path_arg = array_slice($path_arg, 0, array_search(variable_get('smart_paging_path_prefix', 'page'), $path_arg)); $path = empty($path_arg) ? $original_path : implode('/', $path_arg); } } if (isset($page_query[1]) && $page_query[1] != 0) { $sub_page = $page_query[0]; $page = isset($page_query[1]) ? $page_query[1] : '0'; $path .= '/' . variable_get('smart_paging_path_prefix', 'page') . "/$sub_page/$page"; } else { $sub_page = $page_query[0]; if ($sub_page) { $path .= '/' . variable_get('smart_paging_path_prefix', 'page') . "/$sub_page/0"; } } + //print_r($options['query']['page']);echo "\n
"; + $url_exclude = variable_get('smart_paging_outbound_url_exclude_by_path'); + if (!( drupal_match_path($path, $url_exclude))) unset($options['query']['page']); } }