View source for Действия (экшны)

также доступны в ((../Deutsch/Aktionen Deutsch)), ((../English/Actions English)) , ((../Français/Fonctions Français))

С развитием движка **WackoWiki** были улучшены многие Действия а также были разработаны новые. Описание Действий на странице ((Действия)) требовало значительного кропотливого обновления и поэтому здесь сделан ((Паттерны/ВикиРефакторинг рефакторинг)) описания Действий Actions актуальных для версии R6.0 по состоянию на 11.02.20

{{toc numerate=1}}

===Рекомендации по применению Действий==
  * В описании Действий необязательные параметры указываются в [квадратных скобках].
  * Неиспользуемые параметры следует удалить вместе со скобками чтобы Действие работало правильно.
  * При использовании параметров следует удалить [квадратные скобки]
  * Числовые значения параметров указываются __без кавычек__ а строковые значения -- __в кавычках__. Например : ##max=10## и ##page="~PageName"##. 
  * Если параметры не заданы то будут применены значения по умолчанию которых обычно вполне достаточно. Значения по умолчанию указаны в описаниях Действий ниже. Указанием параметров можно произвести тонкую настройку выполнения Действия.
  * Многие Действия выводят результат в текстовом блоке textarea в рамке с соответствующим заголовком. В некоторых Действиях можно задать параметр ##nomark## значение которого по умолчанию =0. Если указать ##nomark=1## то рамка с заголовком будет убрана. Влияние этого параметра одинаково почти для всех Действий и потому далее подробно не описывается.

===Списки страниц===

====backlinks====
  * Выводит список страниц, ссылающихся на данную.
  * Вызов: ##""{{backlinks [page="PageName"] [max=количество страниц] [nomark=number] [title=0]}}""##
  * ##page## Определяет для какой страницы выводить список. По умолчанию равен "!", то есть текущей странице.

====comments====
  * Выводит список последних комментариев в этой Wiki.
  * Вызов: ##""{{comments [page="PageName"] [max=количество страниц]}}""##
  * ##page## определяет для какого кластера/страницы выводить список.  По умолчанию равен "/", т.е. корню сайта.

====commented====
  * Выводит список последних откомментированных страниц в этой Wiki.
  * Вызов: ##""{{commented [page="PageName"] [max=количество страниц]}}""##
  * ##page## определяет для какого кластера/страницы выводить список.  По умолчанию равен "/", т.е. корню сайта.
  * Пример - /НовыеКомментарии

====tree====
  * Строит дерево страниц, начиная с текущей или указаной страницы.
  * Вызов: ##""{{tree [page="PageName"] [depth="depth of tree"] [legend=" "] [sort="desc"] [nomark=number]}}""## 
  * ##page## определяет какая страница будет корнем дерева. По умолчанию равен "!", то есть текущей странице. Значение ##page="/"## построит дерево всего сайта.
  * ##depth## определяет глубину отображения дерева.
  * ##sort## - страницы, отсортированные по возрастанию ('asc', по умолчанию) или по убыванию ('desc') по tag.

====changes====
  * Выводит список последних изменений в каком-либо кластере.
  * Вызов: ##""{{changes [page="PageName"] [max=количество страниц] [date="YYYY-MM-DD"] [noxml=1]}}""##
  * ##page## определяет для какого кластера выводить список.  По умолчанию равен "!", то есть текущей странице.
  * ##max## определяет максимальное количество показываемых страниц. Заметьте что реальное количество показанных страниц будет зависеть от персональных настроек пользователя.
  * ##date## позволяет указать дату, начиная с которой (и далее в прошлое) нужно выводить список изменений. Параметр ##date## также можно указать в строке запроса.
  * ##noxml## запретит вывод ссылки на RSS-ленту изменений.

====wanted====
  * Выводит список несуществующих пока страниц, на которые есть ссылки для какого-либо кластера.
  * Вызов: ##""{{wanted [page="PageName"]}}""##
  * ##page## определяет для какого кластера/страницы выводить список.  По умолчанию равен "!", то есть текущей странице.

====orphaned====
  * Выводит список потерянных страниц (те страницы, на которые нет ни одной ссылки) для какого-либо кластера.
  * Вызов: ##""{{orphaned [page="PageName"]}}""##
  * ##page## определяет для какого кластера/страницы выводить список.  По умолчанию равен "!", то есть текущей странице.

====mostpopular====
  * Выводит список наиболее посещаемых страниц.
  * Вызов: ##""{{mostpopular  [max=количество страниц] [page="PageName"] [nomark=number] [dontrecurse="true|false"]}}""##
  * ##number## - Количество строк - имен страниц показываемых в рамке вывода в убывающем порядке. Внизу рамки будут показаны линки на остальные страницы. 
  * ##page## - Имя страницы/кластера с которого начнется показ.
  * ##dontrecurse## установленный в **true** покажет только подстраницы ниже ##page## 

====mostcommented==
  * Показывает список наиболее комментируемых страниц.
  * Вызов: ##""{{mostcommented [max=number] [page="PageName"] [nomark=number] [dontrecurse="true|false"] [legend=0] [title=0]}}""##
  * ##page## указывает, для какого кластера отображаются изменения. По умолчанию равен "!", то есть текущей странице.
  * ##dontrecurse## установленный в **true** покажет только подстраницы ниже ##page## 
  * ##legend## - позволяет указать заголовок для списка.
  * ##title## - со значением = 1 покажет вместо названия страницы заголовок страницы из её свойств. Не работает вместе с nomark = 1.

===Персональные действия===
Обычно выполняются пользователем и позволяют получить информацию о страницах находящихся в его владении. Каждый пользователь может получить эту информацию на странице профиля пользователя. Линк на профиль можно увидеть внизу любой Вашей страницы там где указан Владелец: _ _ _ 
  
 {{anchor href="action_usersettings"}}
====usersettings====
  * Выводит страницу регистрации для гостей и страницу с настройками для зарегистрированных пользователей.
  * Вызов: ##""{{usersettings}}""##
  * Пример - ((/Settings Настройки))
  
====mychanges====
  * Выводит список измененных вами страниц с возможностью сортировки.
  * Вызов: ##""{{mychanges  [max=количество страниц]}}""##
  * Пример - ((!/MyActions#action_mychanges))  

====mypages====
  * Выводит список принадлежащих вам страниц с возможностью сортировки по алфавиту или дате изменения.
  * Вызов: ##""{{mypages [bychange=1] [bydate=1]}}""##
  * Пример - ((!/MyActions#action_mypages)) 

====mywatches====
  * Список всех страниц под вашим наблюдением.
  * Вызов: ##""{{mywatches}}""##
  * Пример - ((!/MyActions#action_mywatches))
  
====mychangeswatches====
  * Список изменённых наблюдаемых вами страниц
  * Вызов: ##""{{mychangeswatches  [max="количество страниц"]}}""##
  * Пример - ((!/MyActions#action_mychangeswatches))  

====watchers====
  * Выводит список наблюдателей страницы. Работает только для владельца страницы, не владельцам показывает //??Вы не владеете страницей ~SomePage и поэтому не можете получить список наблюдающих за ней??//.
  * Вызов: ##""{{watchers [page="SomePage"] [nomark=number]}}""##
  * ##page## определяет для какого кластера/страницы выводить список.  По умолчанию равен "!", то есть текущей странице.
  * Пример - ((!/MyActions#action_watchers)) 
  
===Действия Администратора==
Здесь описаны Действия доступные только Администратору или используемые обычно только один раз для всего сайта.

{{anchor href="action_admincache"}}
====admincache==
  * Предназначен для быстрой очистки кэшей:
    * Кэш настроек
    * Кэш страниц
    * Кэш SQL-запросов
    * Кэш лент
    * Кэш шаблонов
    * Кэш миниэскизов (thumbnail)
  * Вызов: ##""{{admincache}}""##

====adminupdate==
  * Требуется выполнить однократно только при переходе с версий 4.2 и 4.3 на 5.0
  * Вызов ##""{{adminupdate}}""##
  * Подробнее - ((/Dev/Release/R5.0/Upgrade))

{{anchor href="action_admin_recovery"}}
====admin_recovery==
  * Создает хэш recovery_password  на основе пароля доступа к панели администратора
  * Вызов: ##""{{admin_recovery}}""##
  * Сгенерированный хеш необходимо прописать в config/config.php заменой строки //**'recovery_password' => 'вставить пароль хеш здесь'**// . После этого следует очистить кэш, см. ##admincache##.
  * ((AdminPanel Подробное описание))

====users====
  * Выводит список из последних 100 зарегистрированных пользователей вместе с количеством принадлежащих им страниц.
  * Вызов: ##""{{users [stat=0]  [max="количество пользователей"]}}""##
  * ##stat## позволяет ограничить показ количества принадлежащих пользователям страниц. При значение max=0 по умолчанию количество страниц равно 1000, значение 1 ограничит до 100. 
    
====usergroups==
  * Выводит список групп и входящих в них пользователей.
  * Вызов: ##""{{usergroups [cols=5] [nomark=number]}}""##

====deleted==
  * Показывает список удаленных страниц если они сохранены в базе. Следует проверить значение установки //??Хранить удаленные страницы??// в базовых настройках админ панели.
  * Вызов: ##""{{deleted [max=number]}}""##
  * ##max## - количество страниц, которое будет отображаться за один раз.

====whatsnew==
  * Отображает список всех новых, удаленных или измененных страниц, новых вложений и комментариев.
  * Вызов: ##""{{whatsnew [page="PageName"] [max=количество страниц]}}""##
  * Страница ((/WhatsNew))
  
====pageindex====
  * Выводит полный каталог всех страниц сайта, упорядоченный по алфавиту.
  * Вызов: ##""{{pageindex [max=Number] [letter="Letter"] [page="PageName"] [title=0] [system=0|1] [lang="en"]}}""##
  * Пример - ((/PageIndex Каталог))
 
====login====
  * Показывает форму входа, если вы ещё не залогинились, или приветствие, если уже залогинились.
  * Вызов: ##""{{login}}""##
  * Пример - ((/Login))

====registration====
  * Показывает форму регистрации и производит всю регистрацию, собственно
  * Вызов: ##""{{registration}}""##
  * Пример - ((/Registration Регистрация))

====changepassword====
  * Смена пароля.
  * Отсылает на email код, при введении которого даётся доступ к странице смене пароля.
  * Вызов: ##""{{changepassword}}""##
  * Пример - ((/Password))

===Форум===
Эти действия работают только в пределах определенного кластера форума.
  * ((!/Форум подробное описание...))

====forums====
  * Отображает список подфорумов (разделов форума).
  * Вызов: ##""{{forums [pages="subtag1, subtag2, ..."]}}""##
  * ##pages## – для создания многоуровневых форумов в этом необязательном параметре указывается список адресов (тегов), разделенных запятой, тех страниц, которые должны считаться подфорумами, а не темами. 
  * Теги страниц должны быть абсолютными (не относительными). Если вы задаете параметр pages, то это должно быть сделано для всех страниц подфорумов и страниц тем.

====topics====
  * Отображает список тем форума.
  * Вызов: ##""{{topics [pages="subtag1, subtag2, ..."]}}""##
  * ##pages## – для создания многоуровневых форумов в этом необязательном параметре указывается список адресов (тегов), разделенных запятой, тех страниц, которые должны считаться подфорумами, темы под этими подстраницами кластера не будут отображаться. Теги должны быть абсолютными.

===Блог===

====blog==
  * создает блог в выбранном вами пространстве имен
  * Вызов: ##""{{blog [page=cluster] [mode=latest|week|from] [date=YYYY-MM-DD] [max=Number] [title=1] [noxml=1]}}""##
  *  ((!/Блог подробное описание...))

====news==
  * создает ленту новостей в предопределенном кластере новостей
  * Вызов: ##""{{news [mode=latest|week|from] [date=YYYY-MM-DD] [max=Number] [title=1] [noxml=1]}}""##
  * за исключением того, что это действие может быть использовано только в предопределенном кластере новостей, все остальные настройки аналогичны настройкам действия блог
  * для настройки новостного кластера смотрите Админ панель -> раздел Страницы

===Прочие===
====authors==
  * Показывает список авторов страницы, поучаствовавших в создании и редактировании.
  * Вызов: ##""{{authors}}""##
  * Пример внизу этой страницы со знаком копирайта.

====calendar==
По состоянию на 9/02/18 в R5.5.3 находится в стадии разработки. Из-за проблем с кириллицей к применению не рекомендуется.
  * Показывает календарь на текущий месяц по умолчанию. Параметрами можно изменить вид календаря
  * Вызов: ##""{{calendar [year=2012|2013...] [month="1|2|..."] [highlight="today|1|2|..."] 
[daywidth=3] [range="1|2|..."] }}""##
  * ##year## - Год
  * ##month## - Месяц
  * ##highlight## - День который будет подсвечен. По умолчанию "сегодня", можно выбрать нужную дату.
  * ##daywidth## - Количество букв в обозначении дня недели, по умолчанию 3.
  * ##range## - Количество показываемых месяцев.

====categories==
  * Показывает категории для текущей страницы.
  * Вызов: ##""{{categories [list=0] [nomark=number]}}""##
  * ##list## - Значение 0 покажет список категорий в строку с разделением запятой. Значение 1 выводит список категорий в столбец.   

====category==
  * Показывает список всех категорий начиная со страницы root и количество их их использований.
  * Вызов: ##""{{category [page="/PageName"] [list=0] [ids=1,11,21] [lang=ru] [inline=0] [sort="abc" or "date"] [nomark=number]}}""## 
  * ##page## - Начальная страница показа списка. По умолчанию это текущая страница.
  * ##list## - Значение 0 без дополнительных параметров отображает список выбранных категорий. Значение 1 показывает связанные категории.  
  * ##ids## - Показывет только категории с указанными через запятую номерами id. Этот номер можно увидеть в линке на категорию    
  * ##lang## - По умолчанию выводит список категорий для языка указанного в настройках выбранной страницы. В многоязычных инсталляциях позволяет показать категории только для языка определенного двумя буквами.
  * ##inline## - Значение 1 показывает все категории последовательно и без выделения основных категорий. Значение по умолчанию 0. !!(это не проверенный перевод, уточнения приветствуются)!!
  * ##sort## - Сортировка вывода по алфавиту (abc, по умолчанию) или дате создания (date).
  * ##nomark## - Значение 1 уберет рамку с заголовком вокруг результата. Значение по умолчанию 0. Значение 2 можно указать если был задан параметр ## ids ##. 

====tagcloud====
По состоянию на 9/02/18 в R5.5.3 находится в стадии доработки.
  * Показывает облако тэгов (имен категорий).
  * Вызов: ##""{{tagcloud [page="PageName"] [lang=ru] [owner="UserName"] [sort="abc" or "number"] [nomark=number]}}""## 
  * ##page## - Начальная страница показа списка. По умолчанию это текущая страница.
  * ##lang## - Выбирает для показа только категории с выбранным языком. По умолчанию показывается для языка текущей страницы.
  * ##owner## - Показывает облако тэгов сформированное из страниц указанного владельца.
  * ##sort## - Сортировка вывода по алфавиту ('abc', по умолчанию) или количеству связей с категорией.

==== search====
  * Любой поиск по ваке.
  * Вызов: ##""{{search [phrase="что искать"] [page="PageName"] [options=0|1] [topic=1] [form=1] [nomark=number] [style=one of ("br","ul","ol","comma") ] [scope=one of ("pages", "all")]}}""##
  * ##page## ограничивает поиск указанным пространством имен; 
  * ##options## со значением 0 отображается только поле поиска, остальные опции и фильтры скрыты 
  * ##topic## можно называть ##title## -- если он выставлен в 1, то поиск происходит только по именам страниц, иначе как по именам, так и по текстам; 
  * ##form## -- говорит, что нужно выводить форму поиска вместе с результатами. 
  * ##scope## отвечает за то, где произодить поиск: только в страницах ##"pages"## или в  ##"all"## комментариях тоже. 
  * ##style## отвечает за внешний вид результатов.
    * "br" - найденный линк будет показан в строке над дополнительными сведениями о нем 
    * "ul" - будет показан ненумерованный список
    * "ol" - будет показан нумерованный список
    * "comma" - найденный линк отделен от дополнительных сведений запятой.

====include====
  * Включение какой-либо страницы целиком или частично в тело данной (Трансклюзия). 
  * Вызов: ##""{{include page="ИмяСтраницы" [nomark=number] [notoc=1] [nowarning=1] [first_anchor="..." last_anchor="..."] }}""##
  * ##page## - ~ИмяСтраницы включаемой в другую. 
  * ##nomark=1## отключает выделение инклюда цветом. 
  * ##nomark=2## инклюд не выделяется цветом для тех пользователей, кому не разрешено его исправлять; тем же, кому разрешено -- показывается оформление и контрольки. 
  * ##notoc=1## запрещает запись заголовков из включаемой страницы в ((!/АвтоОглавление АвтоОглавление)). 
  * ##nowarning =1## не разрешит вывод уведомления при вызове include для страницы, на которую нет доступа.
  * ##first_anchor## и ##last_anchor## позволяют указать, какую часть текста включаемого документа стоит показывать. Для этого во включаемом документе надо окружить желаемую область якорями: ##""{{anchor name="plan_start"}} Текст {{anchor name="plan_end"}}""##, а потом указать имена этих якорей в параметрах ##first_anchor## и ##last_anchor## акшна ##include##.

====hits==
  * Отображает количество обращений к странице
  * Вызов: ##""{{hits [page="PageName"]}}""##
  * Пример внизу данной страницы.

====upload==
  * Загрузка файлов
  * Вызов: ##""{{upload [global=1] [maxsize=200] [hide_description=1]}}""##
  * ((Действия/Uploads подробное описание...))

====files==
  * Отображение файлов на страницу
  * Вызов: ##""{{files [page="PageName"] [global=1] [owner="UserName"] [picture=1] [max=номер]}}""##
  * ##global=1## показывает файлы, которые можно использоваться в глобальном масштабе, 0....
  * ((Действия/Uploads подробное описание...))

====interwikilist====
  * Список всех InterWiki-узлов, которые определены в данной инсталляции.
  * Вызов: ##""{{interwikilist}}""##
  * Подробнее - ((Интервики))

====randomimage====
  * Loads a random image
  * Вызов: ##""{{randomimage [global=0|1]  [owner="UserName"]  [category="category"]  [caption=0|1]}}""##
  * ##owner## — to show the files, belonging only to this user
  * ##global## — ##1## global images, ##0## only images attached to the page
  * ##category## — filters images by category 

====randomphrase====
  * Включение случайной строки с какой-либо страницы в тело данной.
  * Вызов: ##""{{randomphrase [page="PageName"] [nomark=number] [useemptystring=1]}}""##
  * ##page## указывет страницу из которой будут выбраны строки.
  * ##useemptystring## означает разбивать страницу не по строкам, а по блокам, разделенным пустой строкой.

====randompage====
  * Перенаправление на случайную выбранную страницу.
  * Вызов: ##""{{randompage [page="PageName"]}}""##
  * ##page## - название кластера из которого будут выбираться страницы для показа.

====toc====
  * Формирует оглавление на основе заголовков.
  * Вызов: ##""{{toc [page="PageName"] [legend="legend for toc"] [numerate=1] [from="h2"] [to="h6"] [nomark=number]}}""## 
  * ##title## влияет на заголовок самого оглавления. 
  * ##numerate## позволяет пронумеровать все заголовки. Например как на данной странице.
  * ##from## по умолчанию "h2", то есть заголовки первого уровня не включаются в оглавление.
  * ##to## по умолчанию "h6", ограничит минимальный заголовок для включения в /АвтоОглавление.
  * Подробное описание - ((!/АвтоОглавление АвтоОглавление))

====paragraphs====
  * Проставляет нумерацию для абзацев.
  * Вызов: ##""{{paragraphs [style="before|after|left|right"] [name="absolute|document-relative"]}}""##
  * ##style## Стиль влияет на то, где будут выводиться номера абзацев.
  * ##name## - ?

====redirect====
  * Перенаправляет пользователя на другую страницу.
  * Вызов: ##""{{redirect to="ДругаяСтраница" [temporary=1]}}""##
  * По умолчанию, без указания параметра ##temporary=1##, поисковым роботам страница выдаст ответ Redirect 301, т.е. страница перенесена навсегда. Указание ##temporary=1## выдаст ответ Redirect 302, т.е. страница перенесена временно.
  * **Внимание!** Страница с redirect-ом при входе на нее видна не будет. Для изменения/удаления перенаправления следует запретить redirect путем установки в расширенных настройках Пользователя (см. [[#action_usersettings usersettings]]) !!//Не давать действию Redirect автоматически перенаправлять//!!

====comment==
  * Позволяет создать линк на комментарии к другой странице.
  * Вызов: ##""{{comment [page="ДругаяСтраница"] [text="your text"]}}""##
  * ##page## обозначит комментируемую страницу
  * ##text## любой, лучше - название страницы ~ДругаяСтраница.

====edit ==
  * Позволяет включить линк на правку другой страницы.
  * Вызов: ##""{{edit [page="ДругаяСтраница"] [text="your text"]}}""##
  * ##page## - название страницы которую будем править.
  * ##text## - любой, лучше - название страницы ~ДругаяСтраница.
  * Может быть полезно для правки страницы с кривым редиректом.

====anchor====
  * Создаёт якорь на который можно сослаться с любой страницы.
  * Вызов: ##""{{anchor href="ToC1" [text="Оглавление"] [title="Заголовок"]}}""##
  * ##href## может называться как угодно. 
  * ##text## любой
  * ##title## будет показан при наведении курсора на линк.
  * Применение : на странице ((Песочница Песочница)) создаем якорь ~{{anchor href="test"}}. С этой страницы обращаемся к якорю ((Песочница#test Песочница#test))

====embed==
  * Позволяет вставлять PDF и ролики с youtube и некоторых других сайтов.
  * Работает только если разрешено Админом который должен провести предварительную настройку сайта. 
  * Вызов: ##""{{embed url="someurl.mp4" width=300 height=400  [align="left|center|right"]}}""##
  * ##url## адрес источника 
  * ##width## ширина изображения в пикселях, например 640. Обязательный параметр.
  * ##height##  высота изображения в пикселях, например 385. Обязательный параметр.
  * ##align## выравнивание
  * Требуются настройки безопасности в Админ Панели, см. ((Действия/Embed подробное описание)) и пример.

====feed==
  * Внедряет на ~ВикиСтраницу RSS-ленту с другого сайта.
  * Вызов: ##""{{feed url="https://...[|https://...|https://...]" [title="no"] [max=number] [time=1] [nomark=number]}}""##
  * ##url## адрес ленты
  * ##title## - значение "text" будет показано в заголовке, "no" не покажет заголовка, если оставить пустым то заголовок будет получен с ленты.
  * ##max## максимальное количество пунктов ленты
  * ##time## значение 0 (по умолчанию) скроет метки времени на пунктах ленты, 1 - покажет их. 			
  * ##nomark## значение 0 покажет заголовки лент. 1 - уберет.
  * ((!/Feed Feed - пример ленты)).

----
Как всегда в Wiki здесь приветствуются замечания, рекомендации и советы по улучшению данного описания.

{{authors}}
>>++**Прочитано {{hits}} раз**++<<