ГрамотаДел ГрамотаДел Express В чём разница?

Таблица-модификатор

Таблица-модификатор используется, если нужно создать одну или несколько небольших модификаций виджета «на лету», то есть при открытии страницы в браузере. Вместо того, чтобы создавать несколько разных виджетов, с примерно одинаковыми параметрами можно создать один, а некоторые параметры вынести в таблицу-модификатор. При инциализации виджета нужно указать ID этой таблицы, и виджет будет создан исходя не только из основных параметров, но и этой таблицы.

Создание таблицы-модификатора

Нужно создать обычную таблицу. Эта таблица может быть как отдельной таблицей, так и в составе документа. Имя, а так же папка может быть любыми. В таблице должно быть заполнено не менее двух столбцов: в первом - имя параметра, во втором - значение. Данные, указанные в заголовке таблицы (например, какая-либо перемення) значения не имеют. Приложение считывает только данные в первом и втором столбце первого листа таблицы.

Параметры

Ниже приводятся все параметры, которые можно изменять. При внесении данных нужно внимательно указывать значение, чтобы виджет работал корректно. Допустимые значения указаны в скобках. Если в результате работы таблицы-модификатора виджет работает не так, как ожидается, то это значит, что один из параметров задан неверно.

  • is_enable (0 или 1) - разрешёна ли работа виджета
  • is_point_enable (0 или 1) - разрешён ли доступ к виджету по короткой ссылке
  • is_redirect_getform (0 или 1) - выводить ли виджет получения файла
  • domains - список доменов на которых разрешена работа виджета
  • folders - ID папок, в которых производить поиск файлов через запятую, или "all" для всех файлов в Диске
  • count_limit (0 - 5) - максимальное число изменений файлов (0 - без ограничений)
  • edit_limit (0 - 100) - допустимая степень изменения данных (100 - без ограничений)
  • email_self (0 или 1) - отправлять себе файл после создания
  • email_self_template (36 символов) - ID шаблона письма для отправки файла себе
  • is_share (0 или 1) - показывать ли блок «Поделиться»
  • share_title_block (текст) - заголовок блока
  • share_title (текст) - заголовок в окне публикации
  • share_description (текст) - описание в окне публикации
  • share_link (текст) - страница, которая будет открываться при переходе по ссылке
  • btn (текст) - надпись на кнопке создания
  • title (текст) - заголовок виджета
  • description (текст) - надпись под заголовком
  • color_primary (HEX) - основной цвет
  • color_btn_text (HEX) - цвет текста основной кнопки
  • style - CSS-стили

В таблицу нужно вставить только нужные параметры, которые необходимо изменить. Текущие параметры виджета будут перезаписаны.

Указание модификации виджета

Модификацию виджет можно задать двумя способами. Первый - добавив в URL виджета ID таблицы-модификатора. Это делается следом за ID самого виджета. И не забыть про закрывающий слеш. Например, если код виджета:

<div id="dm_widget_edit"></div> <script src="//gramotadel.express/widgets/v1/edit/5c374300-a82e-4793-9126-d9a9c3c46870/"></script> То с таблицей-модификатором (ID ab82b0ae-7a93-43b7-99a0-e3a0f97fe9bc) он будет выглядеть: <div id="dm_widget_edit"></div> <script src="//gramotadel.express/widgets/v1/edit/5c374300-a82e-4793-9126-d9a9c3c46870/ab82b0ae-7a93-43b7-99a0-e3a0f97fe9bc/"> </script>

Другой способ - это добавить ID таблицы в адресную строку, на странице в которой вставлен виджет. ID таблицы нужно вставлять в GET параметр dm_modify. Так, если адрес страницы не содержит GET параметров, то к адресной строке следует добавить ?dm_modify=ID, а если есть, то &dm_modify=ID. ID - это ID таблицы-модификатора, например ?dm_modify=ab82b0ae-7a93-43b7-99a0-e3a0f97fe9bc. При использовании виджета по ссылке ID таблицы можно так же передавать в URL. Но, модицификацию через URL следует использовать с осторожностью, так как посетитель может вручную отключить модификацию виджета, просто удалив часть URL.

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