Плагины
Подписаться на эту рубрику по RSS
Альтернативные визуальные редакторы
Понедельник, 17 ноября 2008 г.Рубрика: Центр помощи -> Плагины
Просмотров: 2638
Если вас не устраивает встроенный визуальный редактор, то вы можете воспользоваться альтернативами.
Редакторы устанавливаются как обычные плагины (в каталог maxsite/plugins). После этого активируйте нужный в админ-панели (деактивируйте неиспользуемые).Run PHP - Выполнение произвольного PHP-кода в тексте
Воскресенье, 9 ноября 2008 г.Рубрика: Центр помощи -> Плагины
Просмотров: 3436
Плагин предназначен для выполнения произвольного PHP-кода в тексте записи. Для этого достаточно обрамить php-код:
[php] ваш php-код [/php]
Обратите внимание, что ваш php-код должен работать без ошибок.
BBCode - использование псевдо-html-тэгов
Воскресенье, 9 ноября 2008 г.Рубрика: Центр помощи -> Плагины
Просмотров: 3917
Данный плагин предназначен для конвертирования bbcode в html-тэги. Обычно bbcode используют на форумах для того, чтобы запретить выполнение обычных html-тэгов, а вместо этого, для некоторых из них, использовать как безопасную замену.
Кроме этого, bbcode удобен для случаев, когда следует избегать явного указания html. Например в визуальном редакторе можно оформлять текст с помощью кнопок, и тогда браузер будет сразу интерпретировать результат в визуальное отображение, а можно оформить аналогом из bbcode. В этом случае преобразование будет выполнено плагином в момент отображения страницы. Сам же исходный код страницы останется обычным текстом и, тем самым можно его править, не опасаясь «сломать» визуальную html-разметку.
Плагин «Tabs»
Четверг, 18 сентября 2008 г.Рубрика: Центр помощи -> Плагины
Метки: плагины
Просмотров: 4317
Сделал плагин для табов. Сами по себе эти табы не проблема, тем более, что они уже стандартно входят в jQuery UI (он в комплекте MaxSite CMS). Но мне хотелось сделать так, чтобы эти табы можно было настраивать как обычный виджет.
Проблема в том, что содержимое таба это какая-то php-функция. Можно конечно просто выводить какой-то статический текст, но мне такой вариант не интересен. Насколько я знаю, даже в некоторых WordPress-шаблонах данная проблема решена «в лоб»: функции для табов явно прописаны в шаблоне или виджете. То есть например поменять порядок или сами функции можно только изменив исходный php-код. Мне такой подход не нравится, поэтому я придумал другую схему.
Виджет «События» позволяет организовать вывод каких-либо событий в сайдбаре. Настройка виджета очень проста. Каждое событие должно располагаться в одном абзаце.
Каждое событие формируется в виде:
yyyy-mm-dd | до | после | текст событияТо есть указывается дата события, сколько дней отображать ДО наступления указанной даты, сколько дней отображать ПОСЛЕ. Ну и сам текст события. В тексте можно использовать HTML.
Установка виджета. Просто скопируйте из архива каталог с файлами в каталог плагинов (maxsite/plugins). После этого активируйте его админ-панели. Сама настройка в «Сайдбары и виджеты».
Сегодня я таки смог сделать то, что так долго не удавалось. Еще для WordPress я когда-то придумал подобный виджет. Работает он просто: нужно указать номера записей и они будут выведены в виде списка.
Данный виджет удобно использовать для создания произвольных списков любых записей. Так вот, проблема в том, что довольно сложно придумать как объединить в одном виджете вывод не только записей, но и рубрик, архивов и т.д. То есть любых страниц сайта. Указывая номер, система должна каким-то образом определить тип, потому что номера ID могут принадлежать и записям, и рубрикам, и другим данным.
Многократно пытался придумать что-то подобное для WordPress, но так и не получалось.
Тут еще трудность в том, что нужно определять текущую страницу и отмечать элемент списка например с помощью class="current-page", для подсветки. В WordPress'е для этого служат раздельные функции is_page, is_single и т.п. То есть ситуация получается довольно запутанная. В итоге, для подобных задач я использовал свой виджет «Ушки», где вручную прописывал HTML и не морочил голову.
Для одного сайта на MaxSite CMS мне потребовался аналогичный виджет «Избранное» и поначалу я кинулся делать как на WordPress. Потом вспомнил, что для редиректа я написал функцию mso_current_url, которая возвращает адрес текущей страницы, относительно сайта. И тут-то меня и осенило. ![]()
Совершенно не обязательно указывать номера записей или рубрик, и как-то указывать их тип. Вместо этого достаточно указать путь страницы относительно сайта и название ссылки вот так:
/ | Главная page/about | О компании category/news | Новости page/price | УслугиКак видите, всё совсем просто - тут и тип, и ссылка, и название. Вариации абсолютно любые и поэтому можно выстраивать какие угодно списки.
В качестве эксперимента сделал плагин, который выполняет перелинковку страниц. Алгоритм не очень сложный.
Создается массив всех заголовков. После этого он разбивается на слова и удаляются все короткие (до 4 символов). При выводе текстов происходит поиск слов из заголовков, и если есть, то ставится ссылка на соответствующую запись.
Плагин для оформления преформатированного текста
Вторник, 10 июня 2008 г.Рубрика: Центр помощи -> Плагины
Просмотров: 2824
Добавил еще одну «вкусность» - плагин, который преобразует тэги PRE и CODE в нумерованный список.
Вот пример работы:
function mso_check_post($args = array())
{
if ($_POST)
{
$check = true;
foreach ($args as $key=>$field)
{
if (!isset($_POST[$field]))
{ // нет значения - выходим
$check = false;
break;
}
}
if (!$check) return false;
else return $_POST;
}
else return false;
}Преимущества такого способа в том, что нумерация строк происходит автоматически. Правда, для того, чтобы шаблон отображал списки как положено, необходимо в стили (css) добавить несколько строчек (они в комплекте).
Еще этот шаблон выполняет подсветку (выделяет полужирным) ключевые слова PHP.