Записки

В MaxSite CMS пока нет встроенной возможности поставить в соответствие к конкретным сущностям графическое их представление - поэтому реализовал функцию,которая находит к странице подходящую картинку.

Как будет определена превьюшка?

Для этого имеется функция pages_images_get_pictures, возрвщающая адрес картинки.

В качестве аргументов можно передать необязательные параметры:

  1.  $arg = array(
  2.  'meta_name' => $options['meta_name'], // имя мета-поля, где может быть задана превьюшка
  3.  'page_id'=> $page['page_id'], // номер страницы в качестве ключа для поиска
  4.  'page_content' => $page['page_content'], // контент страницы для поиска картинки там
  5.  'page_slug' => $page['page_slug'], // slug страницы в качестве ключа для поиска
  6.  'dir' => $options['src_dir']); // каталог, где может найтись превьюшка по ключу

    Делаются последовательно попытки найти картинку:
  • В метаполе.
  • В файле (заданного каталога), имя которого содержит id или slug страницы.
  • Первую попавшуюся картинку в посте.

Если картинка не найдена, то возвращается custom.jpg из каталога плагина.

Можно еще приделать попытку найти по ключу в discription файла картинки ли в галерее, созданной плагином TagGallery.

Для того, чтобы у страницы появилось мета-поле "превьюшка" (по типу играет музыка), необходимо в файле шаблона meta.ini добавить
  1.  [Превьюшка]
  2.  options_key = prev
  3.  type = textfield
  4.  description = "Укажите адрес превьюшки"
  5.  default =

Можно же, в качестве мета-поля, указать уже существующее мета-поле, и хранить адрес картинки там, - метаполе "Настроение" все равно вряд ли использует кто-то.

Плагин содержит виджет, который выводит заданное колличество случайных страниц заданного типа: 'blog' , 'static' ... Если задать в поле размер картинки большим чем 0, то будет выведена превьюшка страницы, найденная при помощи вышеописанной функции.

Архив плагина:

Усовершенствовал плагин так, что он может теперь решать классическую задачу двухуровневой катологизации сущностей.

В админке указываем номер категории, которая будет родительской для двух уровней.

Например: Журнал -> Год -> Номер

Конечные сущности - статьи - будут заноситься в соответствующие рубрики.

Но я решал свою задачу: растения, которые могут одновременно находится в разных категориях.

Пример работы плагина: Каталог цветущих и декоративных растений.

Для получения такого представления достаточно создать рубрикатор:

Каталог растений -> Типы классификаций -> Растение по классификации

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

Плагину нужно скормить номер категории "Каталог растений".

Архив плагина:

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

Почему FasQu


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


Функции администрирования своих закладок гораздо шире чем у других подобных сервисов.К тому же, существуют возможности проверять закладки других экспертов и браковать их.Этот механизм, по крайней мере, обеспечивает отсутствие явного мусора.


На позицию закладки в выдаче влияет рейтинг эксперта, добавившего данное описание так и рейтинг самого описания.


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


Регистрация на проекте: регистрация в FASQu.


Плагины для работы с сервисом закладок FasQu


Плагин FasQu_draft.


Служит для добавления вновь создаваемой страницы в закладки этого сервиса в свой аккаунт. Для успешного добавления необходимо, чтобы все поля : title, description, meta - были заданы.



Плагин FasQu_links.


Для вывода в теле поста результата запроса по меткам. Для осуществления вывода необходимо задать в тексте [fasqu_tag=нужная+метка]. Можно выводить как только свои результаты, так и все публичные.


Архив плагина:

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

Также добавил пагинацию.

Кроме того, можно при смене директория и пути галереи менять и MSO->uploads_dir, MSO->uploads_url.

Если установлена соответствующая опция, то происходит по хуку init замена дефолтных велечин на установленные.

Перед заливкой новых файлов необходимо деинсталлировать старую версию.

Подключил галерею на этот сайт с целью отладки и усовершенствования: Галерея изображений

Внес исправления и изменения в верстку страницы с галереей.

Вычленил список альтернативных галерей из под каждой картинки и вынес их вниз - это даст возможность применять оформление gallery.

Добавил опции оформления каждой картинки в превьюшках галерей.

Архив плагина: taggallery-06.zip.

Планируемые изменения в Taggallery plugin для MaxSite CMS.

  • Будут введены служебные метки вида -tg1-Тег - это будет означать что картинка является обложкой галереи "Тег".
  • Будет добавлен тег -tg-no , который будет означать что картинка не попадает ни в какую галерею.
  • Стоит еще добавить список каталогов, которые будут исключаться при построении базы галереи.

Еще большой недостаток - это то, что в файле gallery.php в вывод информации подмешаны вычисления переменных для вывода. Необходимо отделить все построения вывода в процедуры, чтобы в файле остался чисто код вывода. Также результаты работы процедур формирования информации для вывода необходимо закешировать, и кеш сбрасывать одновременно с нажатием кнопки "Сохранить в админке плагина"

На данный момент массив с информацией о построенной галерее хранится в опциях плагина. Это тоже неправильно - необходимо использовать для этого Плоские опции.