Указать параметр snippet для AjaxForm через путь к файлу

12 Октября 2022
php

Задача: указать параметр snippet в AjaxForm через путь к файлу .php

  1. Идем по указанному пути core/components/ajaxform/model/ajaxform/ajaxform.class.php

  2. Находим код:

    return $this->error('af_err_snippet_nf', array(), array('name' => $name));
    
  3. Заменяем его на :

    if (file_exists($this->modx->getOption('resource_static_path').$name)) {
        $modx=$this->modx;
        return include_once $this->modx->getOption('resource_static_path').$name;
    } else {
        return $this->error('af_err_snippet_nf', array(), array('name' => $name));
    }
    
  4. Готово, теперь в параметре snippet можно узазывать путь на статический файл, например fenom

    { '!AjaxForm' | snippet : [
        'snippet' => 'snippets/action.php',
        'frontend_js'=> '',
        'frontend_css'=> '',
    ]}