Добрый день, уважаемые специалисты. Обычно работаю с MODx Evo уже года 3, но поступил заказ на создание сайта СМИ, где будет в перспективе 8000-12000 документов + нужен встроенный форум на livestreet, чтобы последние комментарии и темы выводились на главную сайта.
На Evo делать наверное не получится, поэтому хотел спросить, может у кого-то есть опыт создания подобных проектов на Revo? Какие потребуются модули и сниппеты для всего этого будущего безобразия?
Буду рад любой подсказке.
Ну, можете взять модуль modLivestreet. Это во всяком случае уже интеграция MODX-а с Livestreet. Но мы давно уже от этого пути отказались, так как развивать такое решение крайне сложно. Мы делаем сейчас такие вещи на чистом MODX + modSociety. Элементарно посмотрите наш текущий сайт Клуба и портал gorodskie-bani.ru/
Но modSociety еще сырой и такие вещи необходимо дописывать, при чем требуется очень хорошее знание MODX-а.
А так мы сейчас делаем новостной портал, в котором уже сейчас почти 80 тысяч статей и нагрузка предполагается до 100 000 пользователей в день (переделываем существующий проект). Если у вас бюджеты исчисляются сотнями тысяч рублей, можем скооперироваться по выполнению вашего заказа. А если бюджеты меньше (вопрос уже не в желании кооперироваться, а вообще), то я бы вам советовал вообще от него отказываться, ибо теперь уже я знаю что там гораздо больше подводных камней, чем даже я мог предположить. Уж очень много тонкостей там. Поэтому если бюджеты не большие, то или вы в минус серьезный сработаете, или дадите на выходе не качественный продукт.
Спасибо за советы! Бюджет проекта совсем небольшой, но заказчик как бы дал понять, что главное постепенное развитие. Вот и думаю, что как раз повод начать осваивать Revo. Для себя нет особой мотивации пробовать новую CMS, а тут без развития никак.
Слышал про модуль Collections для отображения документов не в дереве, а в таблицах. В общем собираю инфу, если подпишем договор, то как сделаю покажу что получится)
Ну ОК. Будут какие достижения, делитесь.
Расскажите в будущем об этих подводных камнях?)
Я не спец особо так, однако просили совета. Слышали о pdoTools Наумкина? Там можно с помощью него делать свои запросы к БД, получается довольно быстро.
Спасибо. Как раз читаю его блог. pdoTools как раз используется в Tickets, судя по всему это дополнение нужно будет ставить и настраивать.
Конечно расскажу, если сам проплыву) Вообще поражен масштабами MODx Revo. Делать на ней сайты-визитки наверное можно, но это как вилами в зубах ковыряться. Прям просится что-то масштабное)
Слышали про xPDO, с помощью которого pdoTools делает запросы к БД, и еще быстрее чем pdoTools? Можете конечно и pdoTools изучать и их использовать. А можно все-таки сам xPDO изучать и использовать, надежней будет. Можно комментарии здесь почитать, там довольно много доводов. Но опять-таки, кому как больше нравится — кто-то изучает досконально принципы работы двигателя и т.п., а кто-то просто катается на машине. Хотите просто кататься — изучайте pdoTools.
Ну, про масштабы, это да :) К примеру, я сейчас делаю кастомный медиаманагер для нашего новостного портала. Немного о модуле: Это не просто модуль управления файлами, он одновременно работает и с файлами, и хранит информацию в базе данных об этих файлах. Основные цели и требования:
— работа с неограниченным количеством файлов (десятки и сотни тысяч файлов не должны стать проблемой),
— хранение мета-данных о файлах, включая кем залит, тип лицензии, источник, теги, категории и т.п.
— поиск по названиям, тегам, категориям, авторам и т.п.
— сортировка по дате, размеру, имени
Практически все это уже есть.
В перспективе еще сразу поиск в сторонних источниках (различные фотобанки, гугл.картинки и т.п.).
Я сейчас сел работать и завтра где-то после часа дня предлагаю сесть погонять сайт. В целом все должно быть готово.
Скриншотег:
?
То есть это не написанный с нуля модуль, а модифицированный родной медиаманагер MODX-а, со своими переопределенными компонентами и процессорами.
Прикольно) Мне до такого еще далеко, хотя если от Evo остались базовые знания, я думаю и с Revo быстрее изучение пойдет. Те же чанки/сниппеты/плагины/модули и структура доков.
Да, безусловно будет легче научиться. Но чтобы такие вещи в админке делать, надо еще ExtJS изучать, без него никак. Я вот уже и постраничность в медиаманагере добавил. Там главное — понимать куда, как и какой компонент воткнуть.
Спасибо, Николай. Будем заменять pdoFetch на чистый xPDO. Вы как всегда привносите что-то полезное для меня.
Вот это мощно, конечно. Компонента такого не планируется?)
Пока еще не знаю точно.
<? $pdo = $modx->getService('pdoTools'); $q = $modx->newQuery('modResource'); $q->select( array("id","uri","pagetitle","content") ); $q->limit(2000); $s = $q->prepare(); $s->execute(); while($row = $s->fetch(PDO::FETCH_ASSOC)) { print $row['pagetitle']; } print '<pre>'; print_r($pdo->getTime()); print '</pre>';
А зачем $pdo = $modx->getService('pdoTools'); и $pdo->getTime()?
Юзайте microtime(true); и все. Пример здесь можно глянуть: gist.github.com/Fi1osof/328469331b5258ff009a
Теперь есть ответ: NewsModxBox :)
Прикольно, если будет заказ, надо поюзать.
А так kresdvor.ru собрал, используя основные расширения:
— Collections (список новостей и массовое редактирование)
— Gallery (фотогалерея и прикрепление галереи к новости)
— getPage, getResources, pdoTools (вывод ресурсов)
— tagLister (теги)
— Tickets+HybridAuth (система комментирования и авторизации через соц.сети)
— BannerY (показы и управление баннерами)
все сыро и велосипедно-костыльно, но работает:) Пока делал, апнул свой левел на Revo)
С вашим сайтом в целом ОК, только скорость работы требует внимания.
Thanks for sharing, nice post!