Роман

Роман

С нами с 06 октября 2013; Место в рейтинге пользователей: #322

Как вывести категории minishop2 FENOM без сниппета, с условием?

Друзья, подскажите пожалуйста, как вывести категории minishop2 с условием WHERE на FENOM без снипета. Просто вывести категории и подкатегории получается, но нужно с условием, где TV cat_view = 1. И вывести только категории, без товаров. Вот так выводит и категории с подкатегориями, но и товары, и не учитывает TV cat_view = 1 :( Я так понимаю проблема в синтаксисе WHERE у меня, что не так?

Делаю так
{var $parents = $_modx->getResources(
    [
    'published' => 1, 
    'deleted' => 0, 
    ],
    [
    'sortby' => 'menuindex', 
    'select' => 'id,pagetitle',
    'where' => [
		 'class_key:=' => 'msCategory',
                 'cat_view:=' => 1
	]
    ])
    }
Роман
16 января 2020, 13:09
modx.pro
805
0

MODX REVO не работает where в getImageList, как настроить фильтр?

Друзья, подскажите пожалуйста, почему не работает фильтрация в getImageList?
Есть снипет для фильтра ajax, работает хорошо со снипетом pdoResources и его параметрами, а вот с MIGX tv и getImageList не хочет :(

На странице есть MIGX tv field-news, в нем параметр date. Этот параметр формой передаю в снипет, тут порядок, все прилетает. Но вот в $where никак не возвращает почему то, что не так?

$_GET['date'] = '2018'; //задал жестко для примера один параметр
$filter = array();

if($_GET['date']) {
    $filter[] = 'date='.$_GET['date'];
}
if($filter) {
	$where = $modx->toJSON(array($filter));
} else {$where = '';}
$params = array(
	'docid' => 1,
	'tvname' => 'field-news',
	'where' => $where
	);
return $modx->runSnippet('getImageList',$params);
Роман
31 декабря 2019, 00:40
modx.pro
1 136
0

MODX REVO Fenom, как в цикле исключить повторяющиеся элементы?

Подскажите как через Fenom исключить повторяющиеся элементы массива?
Есть список дат


2017
2018
2019
2019
2019

Как исключить повторные записи? Пробую через array_unique, но не получается с FENOM это подружить.

{set $input = json_decode(1 | resource : 'field-news', true)}
                    {$rows = array_unique($input)}
                    {foreach $rows as $idx => $row}
                      <option value="">{$row.date | date : "Y"}</option>
                    {/foreach}
Или придется писать сниппет отдельный?
Роман
29 декабря 2019, 15:20
modx.pro
1
977
0

Minishop2 как вывести мультикатегорию товара?

Приветствую, есть каталог товаров сделан на minishop2, но все товары сделаны одним списком, в категории ITEM.

И отдельно созданы категории? в них товаров нет, но к ним прикреплены товары по методу мульикатегорий.
Так удобно редактировать, когда товары в одном месте одним списком.

Но вот беда, хлебные крошки не знаю как сделать, делаю на pdoCrumbs, нужно что бы в хлебных крошках выводилась мультикатегория товара, а родная категория нет. Как это сделать?

ITEM (родительскаяя категория)
-товар 1
— товар 2
— товар 3

CAT1 (мультикатегория)
CAT2 (мультикатегория)
CAT3 (мультикатегория)

Сейчас на странице товара хлебные крошки всегда выглядят так: ГЛАВНАЯ/ КАТАЛОГ / ITEM / ТОВАР.
А нужно так: ГЛАВНАЯ/ КАТАЛОГ / CAT1 / ТОВАР.

Помогите пожалуйста. Подскажите куда копать? Как получить мультикатегорию товара, на странице товара?
Роман
24 декабря 2019, 01:00
modx.pro
1 053
0

Как сделать редирект из плагина?

Друзья, памагитииии! Не хватает мозгов, есть плагин, который делает из URL поддомены, тут порядок. И сервер настроен, все поддомены смотрят на основной домен.
Плагин запускается на события OnHandleRequest и OnPageNotFound.

Вначале в цикле делаем список поддоменов из страниц, которые будут отображаться при переходе по ним. Все работает. Порядок. Если есть страница например site.ru/page то она откроется и ее контент по адресу page.site.ru.

Но вот засада, страница так же открывается и по старому адресу site.ru/page как теперь докрутить плагин так, что бы при переходе на страницу, был редирект на ее созданный поддомен?

Я думаю нужно получить ID и ALIAS текущей страницы, и сделать редирект на ее поддомен, но ничего не получается :(
пробовал так

$url = MODX_URL_SCHEME.$doc->get('alias').'.site.ru';
               $modx->sendRedirect($url);
Роман
26 ноября 2019, 17:08
modx.pro
1
651
0

Чертов Кеш созданного снипетом изобрражения

Ребята, всю голову изломал, ситуация следующая, написал снипет (как мог, в php не бог) который накладывает текст на изображение. Есть рисунок, и есть форма с именем пользователя, он отправляет форму и имя его накладывается на изображение, все работает, но если он в форме еще раз меняет имя и отправляет опять форму, ему показывается первый рисунок, хотя в папке он уже другой, то есть из кеша берется рисунок. Я и так и так пробовал, в имя добавлял дату что бы всегда новый был рисунок, так порядок, но может накопиться куча рисунков от одного юзера, не вариант, но вот с постоянно заменяемым одним рисунком кеш не показывает обновленный рисунок :( как быть? Подскажите куда копать пожалуйста?

Вот код снипета моего limagehandler
<?php
// наше изображение
$img = ImageCreateFromJPEG("uploads/img.jpg");

$thumb_file = "uploads/";
$id_user = $modx->user->get('id');
$dir = $thumb_file.$id_user;
$path = mkdir($dir, 0777);

$name = isset($_POST[name]) ? $modx->stripTags($_POST[name]): '';

// определяем цвет, в RGB
$color2 =  imagecolorallocate($img, 111, 213, 232);

// указываем путь к шрифту
$font = 'site/fonts/Robotobold.ttf';

imagettftext($img,  80, 0, 730, 930, $color, $font, $name); // Имя

imagejpeg($img, $dir.'/img_'.$id_user.'.jpg', 100);

$img = $dir."/img_".$id_user.".jpg";

return $modx->setPlaceholder('img-c',$img);
$modx->cacheManager->delete($userId, array(xPDO::OPT_CACHE_KEY=>'users_data'));

Код укоротил, он работает, вызываю на странице так:
[[!limagehandler]]
<img width="100%" src="[[!+img-c]]" alt=""/>
Главное на хостинге подменяется картинка новая, но она с тем же именем, и браузер после обновления страницы показывает старую, не могу побороть эту беду. Как быть?
Роман
03 апреля 2017, 10:42
modx.pro
2
1 047
0

MODX Revo - cоздание ресурсов из фронтэнд

Роман
17 января 2015, 14:05
modx.pro
2
2 846
0

Как отредактировать профиль пользователя?

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

Сделал ему форму, вызвал UpdateProfile, передал ID пользователя, данные в поля подставляются как раз редактируемого пользователя, но при отправке формы, все данные переписывают профиль текущего пользователя. Что я делаю не так? MODX Revo.

[[!UpdateProfile?
&user=`5`
]]
<form action="[[~[[*id]]]]" method="post">
<label>Имя пользователя</label>
<input type="text" name="fullname" id="fullname" value="[[+fullname]]" />                                               
<input type="submit" name="" value="Обновить данные"/>
</form>
(форма упрощена для наглядности)
Роман
15 декабря 2014, 12:26
modx.pro
1 852
0