Современная, быстрая и удобная система управления сайтом

MaxSite CMS 0.53

Версии (релизы)Комментарии: 16Просмотров: 29508

Очередное некритическое обновление системы. Исправлены некоторые ошибки, недочёты и реализованы новые возможности.

- Добавлены инструкции и языковые файлы для немецкой локализации (спасибо, Александр Шиллинг!).

- В опциях плагинов (mso_admin_plugin_options) для textarea можно указывать количество строк (ключ rows), по аналогии с ini-файлами.

- Исправлена ошибка в настройках рубриках, которая приводила к тому, что вложенные рубрики не отображались в списке пока в них не было добавленно ни одной записи.


- Новые функции mso_get_val() и mso_set_val(), призванные получать и менять значение произвольных ключей. Идея вот в чём: у нас в системе есть некоторые спорные моменты при генерации HTML-кода. Например заголовки виджетов оформляются как h2.box. Для посетителей и верстальщиков нет никакой разницы, будет ли это h2 или div. Но с точки зрения SEO (поискового продвижения), заголовки h2 рассматриваются как подзаголовки в тексте и участвуют в ранжировании страниц. Поэтому было бы логичней не использовать h2 «в холостую». Чтобы не создавать проблемы совместимости с плагинами и шаблонами мы и ввели эти функции.

Функция mso_get_val(ключ, по-умолчанию) получает текущее значение ключа и, если его нет, возвращает значение по-умолчанию. Функция mso_set_val(ключ, значение) устанавливает новое значение ключа. Например в виджетах мы задаём h2.box через mso_get_val():

$options['header'] = mso_get_val('widget_header_start', '<h2 class="box"><span>') 
	. $options['header'] 
	. mso_get_val('widget_header_end', '</span></h2>');

Здесь используется два ключа widget_header_start и widget_header_end. Теперь, чтобы переопределить эти ключи в своём шаблоне в файле functions.php (как вариант) указываем:

mso_set_val('widget_header_start', '<div class="widget_header"><span>');
mso_set_val('widget_header_end', '</span></div>');

На текущий момент я внёс изменения в шаблоны и плагины. Доступны следующие ключи:

  • Заголовок виджета: widget_header_start, widget_header_end
  • Заголовок «Комментариев»: page_comments_count_start, page_comments_count_end
  • «Подписаться на эту рубрику по RSS»: show_rss_text_start, show_rss_text_end
  • Рубрика в home-cat-block: home_full_text_cat_start, home_full_text_cat_end
  • «Оставьте комментарий»: leave_a_comment_start, leave_a_comment_end
  • «Еще записи по теме»: page_other_pages_start, page_other_pages_end

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


- Новый плагин «Внутренние ссылки» (internal links) с помощью которого можно сделать внутреннюю перелинковку страниц. В MaxSite CMS уже есть плагин перелинковки «Perelinks», который выполняет автоматическую перелинковку по словам всех заголовков сайта. В «Internal links» фразы-ссылки указываются вручную, что позволяет полностью контролировать процесс. Сразу предупреждаю, что плагин не до конца отработан. В частности, если фраза встречается в параметрах тэгов, например в title, то замена фразы на ссылку приведет к невалидности HTML-кода. Также я не смог понять, почему поиск для одиночных слов регистронезависим, а для двойных и более слов - регистрозависим. Если вы разбираетесь в регулярных выражениях, буду признателен за помощь в решении эти проблем.

- BB-код [url] теперь поддерживает такие варианты:

[url]http://maxsite.org/[/url]
[url=http://maxsite.org/]Блог Макса[/url]
[url=http://maxsite.org/ rel="nofollow"]Блог Макса[/url]
[url rel="nofollow"]http://maxsite.org/[/url]

То есть можно указывать любые дополнительные параметры ссылки.

- Также в BB-коде добавил и другие дополнительные параметры для кодов.

- В файлах RSS изменён способ указания часового пояса. Теперь часовой пояс выставляется как смещение времени, заданного в настройках, плюс часовой пояс сервера. Это позволяет корректно отображать GMT на серверах с часовым поясом отличным от Гринвича.

Комментариев: 16 RSS

1Евгений20-06-2011 08:38

Подскажите, пожалуйста, планируется ли поддержка аутентификации через LDAP?

2vovans20-06-2011 08:58

а убрать эти H2 в виджетах "по умолчанию" нельзя? Это ведь неправильно, мягко говоря ))

3Максим20-06-2011 09:02

Подскажите, пожалуйста, планируется ли поддержка аутентификации через LDAP?

Даже не знаю, что это такое.

4Максим20-06-2011 09:03

а убрать эти H2 в виджетах "по умолчанию" нельзя?

Вы пример читали? Там всё разжевано.

6Max Kochubey22-06-2011 11:25

Спасибо за обновление.

Только вот пришлось ставить $config['sess_encrypt_cookie'] = FALSE;

А иначе nginx + php-fpm упорно выдаёт 502 Bad Gateway.

8Руслан СафинСайт26-06-2011 09:55

Для плагина internal links имеет ли значение регистр букв?

И еще. Предложение по этому плагину.

Нельзя ли совместить принципы работы этого плагина с плагином perelinks.

То есть чтобы задавался только список слов, без указания ссылок.

А плагин уже сам будет искать и подставлять под слово наиболее подходящую ссылку на статью или страницу

9Максим26-06-2011 12:09

Для плагина internal links имеет ли значение регистр букв?

Для одиночных слов - нет. Для остальных - регистр учитывается. Насколько я понял, то проблема в регулярке, которую я никак не могу побороть. По регулярке мне нужна помощь, поэтому пока будет этот не совсем корректный вариант.

Нельзя ли совместить принципы работы этого плагина с плагином perelinks.

Особого смысла нет, поскольку у плагинов совершенно разный способ перелинковки.

10cevalСайт27-06-2011 12:46

Ссылку на 0.5 ни нашел, попробовал обновиться на этой сборки, с 0.444 до 0.53

выдает ошибку:

A PHP Error was encountered

Severity: Notice

Message: Undefined index: scaffolding_trigger

Filename: libraries/Router.php

Line Number: 164

Fatal error: Class 'CI_Controller' not found in /msite/application/controllers/maxsite.php on line 8

12Владимир29-06-2011 09:37

При запуске страниц выводится например:

A PHP Error was encountered

Severity: 8192

Message: Call-time pass-by-reference has been deprecated

Filename: common/page.php Line Number: 195 и такое сообщение выводится начиная со 195 по 210.

Пример срока 195

if ( $custom_type == 'home' ) _mso_sql_build_home($r, &$pag);

Способ устранения ошибки:

необходимо удалить знак & из строки.

Вид строки после исправления:

if ( $custom_type == 'home' ) _mso_sql_build_home($r, $pag);

Вот и всё. Удачи всем.:-)

14evg03-07-2011 12:36

Даже не знаю, что это такое.

LDAP: openldap в nix-системах, Active Directory в Windows - по сути это каталог, в котором хранятся имена, логины пользователей, их пароли, мыла, в каких группах состоят и так далее, очень удобная вещь для единой аутентификации в разных системах (почта, джаббер, форум, samba), кстати в WordPress есть плагин для аутентификации через LDAP, но ужасно кривой. Я понимаю, что для рядового блоггера, в такой системе авторизации необходимости нет, но, пожалуйста, задумайтесь над таким функционалом, это довольно перспективное направление.

16niks06-07-2011 22:17

обновился с 0.42 на 0.53 без ошибок вроде. файлы поверх перезаписались, а новые экстрактировались и дописались. работает вроде ))

Оставьте свой комментарий!

Комментарий будет опубликован после проверки

Вы можете войти под своим логином или зарегистрироваться на сайте.

(обязательно)