Там несколько классов, на выбор. Как то нужно еще и выбирать класс.
С версткой там все отлично. Нужно это реализовать на modx)
а у меня нет этого файла((
Ну можно пример добавить еще проверку на наличие такого класса в картинке
типа

$search = 'image-250 box-shadow rounded';
$pos = strpos($content, $search);
if($pos == false){
    //продолжаем добавлять классы и дивы, да и конечно тут не предусмотрено что возможно есть у одного изображения а у других нет
}
Возможно, это лишь начало, накидал как пример!
Свои классы я добавлял в файле \tinymce4\theme\theme.tinymce4.base.inc.php
В строке 65
$this->set('image_class_list', '[{title: "None", value: ""},{title: "Float left", value: "justifyleft"},{title: "Float right", value: "justifyright"},{title: "Responsive",value: "img-responsive"},{title: "Responsive+Thumbnail",value: "img-responsive img-thumbnail"}]', 'json' );

А вот как оборачивать не знаю. Лучше версткой такое решить.
Второе и последующие сохранения не предусмотрели.
И в строке:
if(in_array($template, array('5'))){

нужно указать id своего шаблона
Можно написать плагин на событие «OnDocFormSave»


if($modx->event->name == "OnDocFormSave"){
    global $modx;
    $table = $modx->getFullTableName('site_content');
    $template = $modx->db->getValue($modx->db->select("template", $table,  "id='".$id."'"));
    if(in_array($template, array('5'))){
        $content = $modx->getTemplateVars(array('content'), '*', $id);
	$content = $content['0'];
	$content = $content['value'];
        $pattern = '#<img([^>]*) src="([^"/]*/?[^".]*\.[^"]*)"([^>]*)>((?!</a>))#';
        $replace = '<div class="pull-left margin-top-5 margin-right-15"><img$1 class="image-250 box-shadow rounded" src="$2"$3></div>';

        $txt = preg_replace($pattern, $replace, $content);
        $fields = array('content'  => $txt);  
        $modx->db->update($fields, $table, "id={$id}");

        //Конечно str_replace можно и по другому составить
    }
}

Еще не тестировал, но в принципе должно работать
У Вас как минимум неправильно составлен шаблон

Вот тут


'crumbContainer' '<a name="cut"></a>  => '<ul class="pull-right breadcrumb">[+crumbs+]</ul>',



 'defaultMy' => array(
        'crumb' => '[+crumb+]',
        'separator' => ' '.$separator.' ',
        'crumbContainer'  => '<a name="cut"></a><ul class="pull-right breadcrumb">[+crumbs+]</ul>',
        'lastCrumbWrapper' => '<li class="active">[+lastCrumbSpanA+]</li>',
        'firstCrumbWrapper' => '<li><a>[+firstCrumbSpanA+]</a></li>'
    ),

Есть у кого опыт или предположение того, почему может то и дело на действия в админке скачиваться и запускаться файл index.gz?
  • avatar Serg28
  • 0
Написал в личку
Примерно понял, попробую. В-общем, в моем случае весь текст модификатора и не требуется
github.com/extras-evolution/Shopkeeper/blob/master/assets/plugins/phx/modifiers/shk_widget.phx.php — поместить вот это в сниппет и вызывать через runSnippet() с параметрами output и options, самый простой вариант, хоть и не самый хороший.
а как с вами можно связаться, может почту напишите… задать пару вопросов по проблеме одной
Опять дебри дебряные…
Ребят, те, кто хочет хардкора программируют на рельсах, yii, symphony, laravel или голом php/ruby/python/cpp и тд…

Являясь чистым фронтенд верстальщиком, лично я выбрал MODX из-за практически молниеносной тривиальной интеграции. В моем обозримом будущем (еще на очень много лет) нет ни команд разработчиков, ни шаблонизаторов, ни сборщиков, ни всего того, что мне не нужно и не отвечает требованиям, чтобы все было готово прямо здесь и сейчас. По факту, автор заметки выразил сугубо свое мнение о том, что написать такую-то админку можно за 2 дня, и, скорее всего, он ее и использует… Так причем тут Evo/Revo и т.д.?

Про «удобные» платформы для мгновенного создания сайта на 1-5 страниц тоже все гитхабы исписаны — воз и маленькая тележка собраны на www.staticgen.com/
  • avatar Harand
  • 0
Понял, буду иметь в виду.
Плагин из 1 строчки для подключения autoload.php — это уже работает без плагинов (:
Хотелось освежить код при этом иметь максимальную обратную совместимость. А развивать MODX Evo на базе одного класса DocumentParser и кучи-кучи include в админке с кашей из html + php… хм… Что принципиально то изменится? Да ничего, работа ради работы. Более того, когда это будет проделано — тренд modx сойдет в точку zero.

Нужен composer, репозиторий, миграции и сиды? Да пожалуйста:
— Плагин из 1 строчки для подключения autoload.php
— Плагин LoadElement для сохранения чанков и сниппетов в файлах
— EvoTwig для хранения шаблонов в файлах, а не в базе
— Подключаем для миграций самое простое, что только есть github.com/dlevsha/nasgrate
— Накидываем скрипт для сидов. При желании можно даже github.com/fzaninotto/Faker подключить

Я долго к этому шел и наконец постиг ДАО. При желании, можно все ваши хотелки использовать уже сейчас и переписывать ничего не нужно. Или вам не хватает четких примеров с пошаговой инструкцией как и что делать?