Вывод фотографий в обратном порядке — различия между версиями
Mad grant (обсуждение | вклад) |
Velross (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
'''Актуально для версии 2.9''' | '''Актуально для версии 2.9''' | ||
− | Для того, чтобы макросом photoalbum album() фотографии выводились в обратном порядке немного изменим функцию album.<br> | + | Для того, чтобы макросом photoalbum album() фотографии выводились в обратном порядке немного изменим функцию album. Данная функция находится в системном классе (/classes/modules/photoalbum/class.php). Вам необходимо её скопировать в файл __custom.php, изменить название, например на photo_conversely и дополнить в соответствии с данной инструкцией. <br> |
1.Добавим параметр к функции album примерно вот такого вида $sort_photo = 1 | 1.Добавим параметр к функции album примерно вот такого вида $sort_photo = 1 | ||
<source lang="php"> | <source lang="php"> |
Версия 05:52, 10 октября 2013
Актуально для версии 2.9
Для того, чтобы макросом photoalbum album() фотографии выводились в обратном порядке немного изменим функцию album. Данная функция находится в системном классе (/classes/modules/photoalbum/class.php). Вам необходимо её скопировать в файл __custom.php, изменить название, например на photo_conversely и дополнить в соответствии с данной инструкцией.
1.Добавим параметр к функции album примерно вот такого вида $sort_photo = 1
public function album($path = false, $template = "default", $sort_photo = 1, $limit = false, $ignore_paging = false) {
2. Заменяем везде слово self:: на $this-> 3. Спускаемся в самый низ функции и перед кодом
return self::parseTemplate($template_block, $block_arr, $element_id); // Заменяем self:: на $this->
вставляем вот такой код
if (1 == $sort_photo){
$block_arr['void:lines'] = array_reverse($block_arr['void:lines']);
$block_arr['subnodes:items'] = $block_arr['void:lines'];
}
Незабываем, что результат действий необходимо сохранить в файле __custom.php незабыв переименовать саму функцию из album в photo_conversely, и добавить права на выполнение макроса в permissions.custom.php:
<?php
$permissions = Array(
'albums' => Array('photo_conversely')
);
?>
Теперь в нашем кастомном макросе мы можем использовать третий, необязательный параметр, ставя его в значение 1 или 0. http://example.com/udata://photoalbum/photo_conversely/47/0/1
Вызов в TPL: %photoalbum photo_conversely('27','default',1)%
Работа проверена на версии 2.8.6.1