[EVO] MODX custom by Dmi3yy 1.0.10-d5.2 от 28.04.2013

Обновил сборку до версии 1.0.10 внес все правки из оф. версии
Так же Спасибо Agel_Nash он исправил баг который возникал с getParentsID и AliasVisible

Список изменений:

текущая версии 1.0.10-d5.2  (18.04.2013)
=======================================================
- исправленна ошибка в getParentIds при отключенный AliasVisible не коректно работало
- из .htaccess удалены ненужные записи
- update phpthumb snippet
- Автоматическое добавление alias_visible при обновлении с modx evo
- добавил параметр а EvoGallery (https://github.com/Mark-H/EvoGallery/pull/55)
- ускорение работы KCFinder при большом количестве папок 
- решение проблемы с прозрачными PNG и GIF в KCFinder

список изменений не включает в себя изменения с оф версии (что б можно было отслеживать что отличается)

Скачиваем стабильную версию тут:
modx.com.ua/download/
или самую новую с GitHub:
github.com/dmi3yy/modx.evo.custom

42 комментария

avatar
Добрый день Dmi3yy.
Выше Вы написали что в данную сборку внесли все правки с офф. версии, а ниже, после списка изменений Вы написали что невключает в себя изменения с офф. версии, я несовсем понял как это? Или это просто опечатка?
avatar
Всмысле ченжлог не включает список правок )
avatar
Аааа, теперь понятно. Спасибо)))
avatar
Здорово! Спасибо
обновите ещё на своем сайте modx.com.ua/ и вообще будет супер
avatar
Ага в планах завтра этим заняться
avatar
Обновился — появилось сообщение на главной странице админки
Ошибка конфигурации: 'Неверное количество записей в языковом пакете.'
avatar
поправил
avatar
более подробно по замене можно, какие фаилы заменить необходимо?
avatar
Не поверю что не знаете как смотреть на GitHub что поменялось
смотрим последние коммиты находим нужный и там показывает какие файлы и что в них поменялось
github.com/dmi3yy/modx.evo.custom/commit/6503cfa76f8a294dd45603ff66628e328de2e8b7
avatar
Залил на MODX.com.ua
modx.com.ua/download/
avatar
спс
avatar
Fatal error: Cannot redeclare mm_renamefield() (previously declared in /home/public_html/ipurl.ru/med/assets/plugins/managermanager/functions/fields.inc.php:11) in /home/public_html/ipurl.ru/med/assets/plugins/managermanager/widgets/mm_renamefield/mm_renamefield.php on line 65

это появимлось после обновления — выводится, когда попытка создания новой страницы в дереве документов или попытка правки имеющегося документа…
пробовал переключаться между разными версиями managermanager — не помагает :(
Комментарий отредактирован 2013-05-03 08:41:34 пользователем vworld
avatar
Удалите папку managermanager
и перезапишите ее заново

это происходит потому что там остались лишние файлы от старой версии
avatar
спасибо — ваш совет помог
и спасибо за отличную сборку
avatar
не было времени поставить и протестить — поэтому спрошу прямо тут. Если для дружественных url разрешить повторяющиеся псевдонимы, то modx по-прежнему может сделать два одинаковых url либо этот момент как-то поправлен и при одинаковом родителе два ресурса с одинаковым заголовком все-таки получают разные alias? Помню сталкивался с такими проблемами на более ранних версиях из-за чего решил отказаться от экспериментов и устанавливать строго «запретить одинаковые url». Но это не очень удобно при тех же брендах, когда появляется tv/samsung/ и phone/samsung1/.

По-крайней мере, в 1.0.8-d4.2 такая проблема все еще присутствовала (
Комментарий отредактирован 2013-05-03 19:26:43 пользователем webber
avatar
осветил свои мысли по поводу решения данной проблемы в отдельном сообщении
Комментарий отредактирован 2013-05-03 20:17:39 пользователем webber
avatar
Попробовал обновиться со сборки 1.0.6 на 1.0.10 но не тут то было, при обновлении в самом конце когда обновляются все сниппеты и т.д. пишет Error и все сайт умер, при заходе на страничку тож Error. В чем может быть косяк? PHP 5.4. Еще пишет про то что нет таблички alias_visible
Комментарий отредактирован 2013-05-08 10:59:17 пользователем troy
avatar
Да, у меня тоже самое было, пришлось сносить сайт и ставить по новой на старой базе.
avatar
Странно поле в табличке при обновлении должно создавать автоматом
по поводу Error переносили только Manager? или и assets тоже?
avatar
если вопрос ко мне, то перезаписывал поверх все кроме конфига естественно. Возможно не помешала бы простая инструкция по обновлению сборок :) Как тут: modx-cms.ru/dokumentatsiya/dokumentacziya-evo/tehnicheskiy-razdel/
Комментарий отредактирован 2013-05-08 13:12:48 пользователем sdee
avatar
assets и manager, все перезаписывал
avatar
Еще пишет про то что нет таблички alias_visible

внимательно читайте — не таблички, а поля такого в табличке modx_site_content. Добавить это поле через phpyadmin с типом INT и значением по умолчанию 1 — не такая уж сложная задача для тех, кто «делает сайты на modx». :))
avatar
Да действительно добавил поле и все нормально обновилось. Спасибо.
avatar
странно что само не добавляет
так как я добавлял при инстале если update сайта то проверяем:
github.com/dmi3yy/modx.evo.custom/blob/master/install/connection.databasetest.php
47-61 строки
avatar
У меня пишет по неизвестным мне причинам: «ошибка при добавлении alias_visible». Но ничего вручную добавить 30 сек. времени
avatar
А с какой версии на какую обновляете?
просто не должно тут бага быть понимаю что и руками не долго добавить но зачем если должно автоматом
avatar
У меня версия 1.0.6, php 5.4.4 MySql 5.5.25a
avatar
Добрый день. Dmi3yy, подскажите, пожалуйста, в каком файле найти head, у Вас в этой сборке не указан доктайп, очень нужно, а в чанке header тэга html и head нет. Заранее спасибо.
Комментарий отредактирован 2013-05-17 08:00:56 пользователем gumoviy
avatar
Есть в чанке header ) может просто изменили уже по умолчанию в чанке header вот так:
<meta http-equiv="Content-Type" content="text/html; charset=[(modx_charset)]" /> 
<title>[*titl*]</title>
[*noIndex*]
<meta name="keywords" content="[*keyw*]" />
<meta name="description" content="[*desc*]" />
<base href="[(site_url)]"/>


ну а дальше менять можно как угодно
avatar
Спасибо за оперативный ответ, однако доктайп указывается перед тэгом html (если я правильно понимаю), но он то на 2 уровня выше meta-тега?

html
...head
......meta
......title
.../head
...body
.../body
/html

Или я неправильно понимаю?
Комментарий отредактирован 2013-05-17 08:09:41 пользователем gumoviy
avatar
ай то я не верно прочитал
обычно доктайп указывается в верстке тоесть вставляйте тот какой вам нужен
так как header просто заготовка если заметите то там тегов html и head нет вообще
avatar
Ок, я немного затупил, если прописать в чанк header, то доктайп становится куда нужно, спасибо!
Комментарий отредактирован 2013-05-17 08:32:22 пользователем gumoviy
avatar
Dmi3yy, доброго времени суток. Есть такой всеми известный плагин Strict URLs, который в принципе не плох, но есть решение несколько лучше и работает под вашими сборками. Можно его использовать и включить в сборку.
Приведу код ниже.
В файле manager\includes\document.parser.class.inc.php на строке 1257
есть функция rewriteUrls, перед ней добавляю функцию в которой указываю для каких документов, не ставятся суффиксы (.html)

function toAlias($text) {
$suff= $this->config['friendly_url_suffix'];
return str_replace(array('.xml'.$suff,'.rss'.$suff,'.js'.$suff,'.css'.$suff),array('.xml','.rss','.js','.css'),$text);
}

далее меняю саму функцию rewriteUrls, в этой функции, перед
return $documentSource;

добавляю

// FIX URLs
$myProtocol = ($_SERVER['HTTPS'] == 'on') ? 'https' : 'http';
$parts = explode("?", $_SERVER['REQUEST_URI']); 
$strictURL =  $this->toAlias($this->makeUrl($this->documentIdentifier));
$myDomain = $myProtocol . "://" . $_SERVER['HTTP_HOST'];
$newURL = $myDomain . $strictURL;
$requestedURL = $myDomain . $parts[0];
if ($this->documentIdentifier == $this->config['site_start'])
      {
         if ($requestedURL != $this->config['site_url'])
         {
            // Force redirect of site start
            header("HTTP/1.1 301 Moved Permanently");
            $qstring = preg_replace("#(^|&)(q|id)=[^&]+#", '', $parts[1]);  // Strip conflicting id/q from query string
            if ($qstring) header('Location: ' . $this->config['site_url'] . '?' . $qstring);
            else header('Location: ' . $this->config['site_url']);
            exit(0);
         }
      }
      elseif ($parts[0] != $strictURL)
      {
         // Force page redirect
         header("HTTP/1.1 301 Moved Permanently");
         $qstring = preg_replace("#(^|&)(q|id)=[^&]+#", '', $parts[1]);  // Strip conflicting id/q from query string
         if ($qstring) header('Location: ' . $strictURL . '?' . $qstring);
         else header('Location: ' . $strictURL);
         exit(0);
      }

Вот и всё.
Теперь никакого дублирования контента, и в дереве документов спокойно можно создавать документы типа
doc.xml
dox.rss
doc.js
doc.css
И количество типов можно расширить.
avatar
Спасибо большое внедрю
avatar
нашел мелкую багу если поставить сайт в статус offline и не указывать документ который заглушка а просто что б быводило системное сообщение то ловим Ошибку
решил тем что оберул весь код после // FIX URLs
проверкой системного параметра онлайнл ли сайт
avatar
да, проверил, косяк, не довелось в офф ставить сайт.
if($this->getConfig('site_status')){ .... }
avatar
угумс именно так )
avatar
Не выводятся картинки через сниппет phpthumb
Вставляю в чанк Ditto:
<img src="[[phpthumb? &input=`[+img-plitka+]` &options=`h=200`]]" />


На выходе получаю:
<img src="/assets/cache/phpthumbof//assets/snippets/phpthumbof/x200-noimage.656.jpg">
avatar
а что выводит [+img-plitka+] простосто?
а то обычно или что то не то с картинкой или вообще не заполненно тогда выдает noimage
avatar
[+img-plitka+] выводит картинку

Меня смущает двойной слэш. Так и должно быть?
Комментарий отредактирован 2013-06-06 14:01:28 пользователем nohc
avatar
Должен выводить не картинку а путь к ней
вы наверное в тв указали виджет а не нужно было
двоной слеш не мешает но помойму убрал в d5.3
avatar
Так и было)
Изменил вывод тв — заработало, хоть двойной слэш и остался.
Dmi3yy, большое спасибо!!!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.