Автообновление индекса mSeach2 через cron
        Есть интернет магазин с импортом из файла. 
Импорт производится кроном раз в сутки.
Каждый раз после импорта нужно чистить кеш сайта и обновлять индекс в mSearch2.
Для чистки кеша нашел вот такой скрипт и засунул в cron:
    
    
                                                                                
            Импорт производится кроном раз в сутки.
Каждый раз после импорта нужно чистить кеш сайта и обновлять индекс в mSearch2.
Для чистки кеша нашел вот такой скрипт и засунул в cron:
<?php
function clearCache() {
require_once('/index.php');
$modx= new modX();
$modx->initialize('web');
$modx->getService('error','error.modError', '', '');
$cm = $modx->getCacheManager();
$cm->refresh();
}
?>Вопрос в следующем: нет ли похожего скрипта для обновления индекса mSearch2, что бы тоже засунуть его в cron?    Комментарии: 4
                Если кому интересно то вот, рабочий код на обновление кеша, работающий по принципу обновления кеша через админку.
Решение не мое — помог гугл.
                    Решение не мое — помог гугл.
define("MODX_CORE_PATH", "./core/");
define("MODX_CONFIG_KEY", "config");
 
include(MODX_CORE_PATH . "model/modx/modx.class.php");
 
$modx = new modX();
 
$modx->initialize("xPDO");
 
$modx->cacheManager->refresh();
 
$modx->cacheManager->refresh(array(
    'context_settings' => array('contexts' => array('web'))
));
  
$contexts = array();
  
$query = $modx->newQuery('modContext');
$query->select($modx->escape('key'));
  
if($query->prepare() && $query->stmt->execute())
{
    $contexts = $query->stmt->fetchAll(PDO::FETCH_COLUMN);
}
 
$results = array();
  
$modx->cacheManager->refresh(array(
    'auto_publish' => array('contexts' => array_diff($contexts, array('mgr'))),
    'system_settings' => array(),
    'context_settings' => array('contexts' => $contexts),
    'db' => array(),
    'scripts' => array(),
    'default' => array(),
    'resource' => array('contexts' => array_diff($contexts, array('mgr'))),
    'menu' => array(),
    'action_map' => array(),
    'lexicon_topics' => array()
), $results);а вот с обновлением индекса увы, решения так и не нашел            
                Не проще ли было взять и удалить из консоли директорию /core/cache?
Ну а импорт нужно переписать с использованием процессоров, тогда будут вызываться события MODX и плагин индексации, который их ловит.
                    Ну а импорт нужно переписать с использованием процессоров, тогда будут вызываться события MODX и плагин индексации, который их ловит.
                Проще, но когда клиенту самому требуется очистить кеш, куда безопаснее дать ему ссылку, запускающую скрипт
site.ru/clear.php
нежели давать ему доступы на ftp
                    site.ru/clear.php
нежели давать ему доступы на ftp
                То есть, скрипт директорию удалить не может?            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.