В Wordpress анализирую в своем плагине урл:
add_action('parse_request', array(&$this, 'site_url_handler'));
function site_url_handler($query)
{
$m = NULL;
global $wpdb;
global $wp;
if(!empty($wp->request))
{
$url = array();
$url = explode('/', $wp->request);
if($wp->request === 'alias1')
{
add_filter('template_include', array(&$this, 'items_template'));
}
elseif($url[0] === 'alias1' && $url[1] === 'alias2')
{
add_action('template_include', array(&$this, 'items_add_template'));
}
}
}
function items_template($template)
{
global $template;
get_header();
$this->site_show_items();
get_sidebar();
echo('<div class="clear"></div>');
get_footer();
return FALSE;
}
function items_add_template($template)
{
global $template;
get_header();
include_once('template/site_add.php');
get_sidebar();
echo('<div class="clear"></div>');
get_footer();
return FALSE;
}
Плагин для кэширования Hyper Cache. В админ части кэша нет. Если в публичной части набрать site.ru/alias1/alias2/, а затем перейти на site.ru/alias1/, то по адресу site.ru/alias1/ отображается шаблон site.ru/alias1/alias2/. И в ответ при отображении шаблона приходит 404, но шаблон отображается:
Remote Address:
Request URL:
site.ru/alias1
Request Method:GET
Status Code:404 Not Found
Подскажите как решить проблему?