Hi there, this topic is too old and you maybe dont use this anymore, but i had to used it (Thank you very much @Amir92) and i found a solution for this bugs.
For the blocklayered-ajax.php, do this:
<?php
include(dirname(__FILE__).'/../../config/config.inc.php');
include(dirname(__FILE__).'/../../init.php');
$context = Context::getContext();
//Get page_name by url(price_drop page)
$queries = parse_url($_SERVER['HTTP_REFERER'], PHP_URL_PATH);
$query = explode("/", $queries);
//Get page original name from page
$php_self = Db::getInstance()->getValue('
SELECT m.page FROM `ps_meta` m
LEFT JOIN `ps_meta_lang` l
ON m.id_meta = l.id_meta
WHERE l.url_rewrite = "'.$query[1].'"
AND l.id_lang = '.$context->language->id);
$context->controller->php_self = $php_self ? $php_self : 'category';
$blockLayered = Module::getInstanceByName('blocklayered');
echo $blockLayered->ajaxCall();
And to show the actual number of results you should make the changes in blocklayered.php, but first find this line:
Db::getInstance()->execute('DROP TEMPORARY TABLE IF EXISTS '._DB_PREFIX_.'cat_filter_restriction', false);
Before this line, add this code:
if($tab_id_product && is_array($tab_id_product)){
$query_filters_where .= ' AND product_shop.`id_product` IN ('.implode(', ', $tab_id_product).')';
}
I hope I have helped you guys.