Moderator: Moderators









RewriteRule ^sitemapindex\.xml(\.gz)?$ /sitemap.php?gzip=$1 [QSA,L,NC]
RewriteRule ^[a-z0-9_-]+-([a-z]{1})([0-9]+)\.xml(\.gz)?$ /sitemap.php?module_sep=$1&module_sub=$2&gzip=$3 [QSA,L,NC]
RewriteRule ^([a-z0-9_]+)-([a-z0-9_-]+)\.xml(\.gz)?$ /sitemap.php?$1=$2&gzip=$3 [QSA,L,NC]

// Take care about module categories urls, assuming that they are of the proper form
// title-sepXX.xml
// assuming that phpbb_seo seo_delim array is properly set.
if (empty($this->actions['module_main']) && empty($this->actions['module_sub']) && !empty($_REQUEST['module_sep']) && !empty($_REQUEST['module_sub'])) {
if ($module = @array_search('-' . $_REQUEST['module_sep'], $phpbb_seo->seo_delim)) {
$this->actions['module_main'] = $module;
$this->actions['module_sub'] = (int) $_REQUEST['module_sub'];
}
}sitemap.php?forum=54 <=> sitemap.php?module_main=module_sub if ( empty($this->actions['module_main']) ) { // SitemapIndex
$this->google_sitemapindex();
} else { // Sitemap
$this->google_sitemap();
} // start the modules
$this->load_modules('sitemapindex'); // start the module
$module_class = $this->actions['action_type'] . '_' . $this->actions['module_main'];
$this->load_module($module_class, 'sitemap'); /**
* load_modules ( $module_type, $method = '' ).
* loads all modules for a given action_type
* Optional, starts a method
* @access private
*/
function load_modules( $method = '' ) {
foreach ( $this->actions['action_modules'] as $module ) {
$this->load_module( $this->actions['action_type'] . "_$module", $method);
}
}
/**
* load_module ( $module_class, $method = '' ).
* loads a module for a given action
* Optional, starts a method
* @access private
*/
function load_module( $module_class, $method = '', $return = false ) {
global $phpEx;
$module_file = $this->path_config['gym_path'] . 'modules/' . $module_class . '.' . $phpEx;
if ( !empty($this->gym_config[$module_class . '_installed']) && file_exists($module_file) ) {
include_once($module_file);
if (class_exists($module_class)) {
$gym_module = new $module_class($this);
if ( !empty($method) && method_exists($gym_module, $method)) {
$gym_module->$method();
}
if ($return) {
return $gym_module;
}
}
} else {
$this->gym_error(500, '', __FILE__, __LINE__);
}
}



Users browsing this forum: No registered users and 15 guests