MovableType - сосет

Попытка разобраться с MovableType оставила двойственное впечатление:
  • Штука, несомненно, очень хорошая, вложена масса труда
  • Но при этом, сосет не нагибаясь
и ведь чем ближе рассматриваешь, тем больше хочется ругаться. Ужос просто!

Сначала о хорошем:

  • Штука - работает.
  • Поддерживается UTF-8, причем без глупостей. PostgreSQL-ю UTF8 ставят насильно, за что авторам MT большое спасибо - у меня в силу исторических причин default client encoding другая (скажем, багзиллу пришлось недавно дохакивать в этом месте).
  • Можно поставить и сразу начать работать. Минут через пять, если все модули на сервере есть. Или через час.
  • Написано на перле, я на нем читаю без словаря
  • Есть много плагинов, практически все что хочется - поддержано.
  • Да и вообще, большая система, видно что сделана с любовью и версия далеко не первая.
... хорошее на этом заканчивается, начинаются глупости...
  1. Большая часть перловой функциональности вынужденно продублирована в PHP. Какого, извините, хрена динамическая публикация сделана именно таким способом ? Ведь весь код по выгонке HTML уже есть. И та же поисковая CGI-ка, равно как и интерфейс - перловые. А все правки приходится делать в двух местах. Идиоты!.
  2. Чтобы неделя в календаре начиналась с понедельника - нужно поправить два места в коде и еще один темплейт.
  3. Локализация раскидана по коду тонким слоем. Равно как и интернационализация. Почему названия месяцев и дней недели вбиты в код, а все остальное - в ресурсы ?
  4. Если хочется поменять layout, чтобы навигация была в левой колонке, сколько темплейтов придется поменять ? Если хочется поменять заголовок или подвал, то сколько темплейтов придется поменять ?
  5. Почему, бл.., механизм линковки с внешними файлами темплейтов сделан через такую жопу? Почему я не могу темплейты выгрузить, поредактировать, а потом обратно загрузить ? Скопом. Одним архивом/каталогом/списком.
  6. Почему при наличии WidgetManager-а в поставке все колонки навигации сделаны прописыванием в HTML-темплейт ?
  7. Почему ссылка на domain= в стандартном темплейте RSS 2.0 (в свежей версии) ведет на несуществующий URL http://www.sixapart.com/ns/type ?
  8. Почему поиск по тегам и поиск по тексту - это один модуль ? Поиск по тексту ведь не работает (предложение подождать, если вы недавно искали — это и есть неработа), но теперь придется хачить по живому, а не просто написать новый поиск (на APSearch, естественно)
  9. Почему, кстати, публикация в подкатегории (Программирование->Web) не считается публикацией в категории верхнего уровня ? Хотя, конечно, можно ручками присвоить...
  10. .... нет сил писать
Другими словами, вся эта конструкция вызвала у меня чудовищное раздражение. Много недоделок и их нельзя назвать мелкими.

C другой стороны, в одно рыло всю желаемую функциональность за разумное время просто не написать.

Пойду ставить плагины....

Да, патчи для русификации и исправления основных проблем - в следующей серии

Comments

>>Поиск по тексту ведь не работает (с русским)

Почему не работает? У меня работает :)

Леша, если это был вопрос про темплейты, то отвечаю - чтобы поменять layout сколь угодно кардинально, надо поправить несколько строчек в одном шаблоне - styles.css :). Там, конечно, много чего покурить надо, но по продуманности это место одно из лучших.

Сергей, ты не понял.
Чтобы поменять layout с "навигация справа" (default) на "навигация слева" (как у меня) - нужно поменять тег у всех темплейтов, которые выводят HTML-ки. c
<body class="layout-two-column-right
на
<body class="layout-two-column-left

Иначе не будут работать стандартные CSS-ы.

Чтобы поменять содержимое колонки навигации (представим, что я хочу ее иметь одинаковой по всему сайту - разумное ведь желание) - мне нужно поменять те же темплейты.

Чтобы добавить подвал ( Copyright bla-bla 2007) - поменять те же темплейты.

Это - онанизм в чистом виде.

Про поиск.

По русски - если все в UTF - действительно ищет, я исправил текст, погорячился.

Но
"You are currently performing a search. Please wait until your search is completed" - на каждый второй поиск - это не работа поиска.

Поэтому поиск тут пока выключен, после прикрутки нормального поисковика - включу.

С одной стороны - да, запаришся в каждом шаблоне менять HTML. Но есть два решения. Простое и посложней.

Простое (не всегда подойдёт): воспользоваться функцией Search and Replace в шаблонах. Таким образом можно легко заменить те же layout-two-column-right на layout-two-column-left.

Второе: сделать публикация файлов с расширением php, а затем в нужных местах инклюдить header, footer, etc. Хотя, можно и не менять расширение, тогда придётся в .htaccess строчку добавить.

(отправляю комментарий второй раз, если он в первый отправился, то этот можно удалить)

У меня претензия концептуальная: сделано через жопу. Всякому программисту известно, что cut'n'paste - зло, а если требуется два (и больше) очень похожих куска кода (HTML-я), значит нужно параметризовать.

Заметим, что оба предлагаемых решения не очень хорошие: поиска и замены, как и написано, недостаточно. Включение header/footer "через PHP" - тоже довольно анальное: противоречит динамической публикации, нет интеграции с системой параметров (а ведь headers отличаются заголовками, адресами RSS-потоков и подобным - и это все нужно передавать снаружи).

Есть путь, похожий на второй, но средствами MT: нужно разобрать все темплейты на куски и собирать их через

Вдогонку.

Ведь с навигацией, например, все уже сделано почти. Средства дадены. У меня в левой колонке везде
<$MTWidgetManager name="LeftColumn"$> и сразу наступило одержание. Как только я в примерно пяти местах это поправил.

Но какого полового члена оно уже не поправлено, прямо в дистрибутиве ? Оттого что секретарша не разберется ? Так задайте вопрос на инсталляции не блондинка ли я...

Сосет, но выбрал ты именно MT :)

Кстати, про "Сначала о хорошем". Всё тоже самое можно написать про Wordpress, ну за исключением "Написано на пхп".

Я выбрал MT потому что
а) хочется Perl-овый вариант, на старости лет изучать PHP нет желания.
б) и выбора почти не остается

У WordPress, кстати, я уверен что нету дублирования PHP-шного кода на перле. А у MT - обратное дублирование есть, идиоты, ненавижу.

Алексей, не могу понять фразы "Но при этом, сосет не нагибаясь". Может быть имелось в виду "не разгибаясь"?

Это - устойчивое русское выражение.

Всё тоже самое можно написать про Wordpress, ну за исключением "Написано на пхп".

теперь модно считать что PHP это плохо?

а *nix у вас какой стоит?

Если возвращаться к исходной постановке, то для меня лично PHP - это плохо.

Я не знаком с этим средством разработки и не собираюсь с ним знакомиться.

Естественно, у меня FreeBSD :)