Денис Усачев

Денис Усачев

С нами с 26 июля 2016; Место в рейтинге пользователей: #823
Андрей
19 декабря 2018, 14:41
1
+1
В ресурсе надо делать так:

{$_modx->resource.parent | resource : 'parent' | resource : 'pagetitle'}

Чтобы fenom заработал в шаблонах, нужно включить системную настройку — pdotools_fenom_parser
Шаблонизатор Fenom
Илья Уткин
30 октября 2018, 09:13
1
+1
Воспользуйся процессором gallery/upload. Пример можно посмотреть в скрипте CSV-импорта.
Володя
12 октября 2018, 08:35
2
0
Доброе утро.
Где то уже писал, можно сделать примерно так
<script>
$(document).on('msoptionsprice_product_action', function (e, action, form, r) {
    if (action == 'modification/get' && r.success && r.data) {
        var m = r.data.modification || {};

        var thumbs = m.thumbs || {main:['default.png']};
        var fotorama = $(form).closest(msOptionsPrice.Product.parent).find('.fotorama').data('fotorama');

        if (fotorama) {
            var images = [];
            (thumbs.main || []).filter(function (href) {
                images.push({img: href, caption: ''})
            });
            fotorama.load(images);
        }
    }
});
</script>
Баха Волков
15 июля 2018, 09:01
4
0
Ссылку получать нужно так:

[[~id ресурса]]
{id ресурса | url}

// Прямое указание id ресурса
[[~2]]
{2 | url}

//  Динамичное указание id ресурса
[[~[[+id]]]]
{$id | url}
[[~[[*id]]]]    // Вдруг нужна циклическая ссылка :)
{$_modx->resource.id | url}    // Вдруг нужна циклическая ссылка :)

// ну а если ваш плейсхолдер [[!+gl.current.data.resource]] возвращает именно id, то
[[~[[!+gl.current.data.resource]]]]
{var $myplace = $_modx->getPlaceholder('gl.current.data.resource')}    // Вдруг еще понадобится
{$myplace | url}

// Кстати, для получения полей есть еще FastField
[[#id ресурса.поле или даже тв которое нужно вывести]]
{id ресурса | resource : 'поле или даже тв которое нужно вывести'}

// Пример
[[#1.pagetitle]]    // Получить pagetitle у ресурса с id = 1
{1 | resource : 'pagetitle'}

Как получить родителя по id?
[[*parent]]    // На странице ресурса
{$_modx->resource.parent}
[[+parent]]    // В чанках вывода
{$parent}
[[#[[!+gl.current.data.resource]].parent]]    // Тот случай когда нужно получить id по плейсхолдеру
{$_modx->getPlaceholder('gl.current.data.resource') | resource : 'parent'}
[[pdoField? &id=`[[!+gl.current.data.resource]]` &field=`parent`]]    // Ну или через pdoField
{var $myplace = $_modx->getPlaceholder('gl.current.data.resource')}
{$myplace | resource : 'parent'}

Для корректности, вашем случае нужно поступить вот так:
[[~[[#[[!+gl.current.data.resource]].parent]]]]
{$_modx->getPlaceholder('gl.current.data.resource') | resource : 'parent' | url}
// или
[[~[[pdoField? &id=`[[!+gl.current.data.resource]]` &field=`parent`]]]]
{var $myplace = $_modx->getPlaceholder('gl.current.data.resource')}
{$myplace | resource : 'parent' | url}

UPD
Забыл совсем про uri
Если, что в поле uri хранится ссылка на страницу, но никак не в alias
Сергей Малышев
25 июня 2018, 16:27
1
0
Добрый день!
Это было так давно…
Нужен файл fotorama.min.js, который входит в minishop2 свежей версии. Так что, скачанный Вами файл как лечить я Вам подсказать не могу.
Возьмите пакет из minishop2. Разверните fotorama.min.js в нормальный вид. Воспользуйтесь указанной ссылкой, там есть fotorama.dev.4.6.4-patched.js.zip. Посмотрите, как сделано там.
Володя
20 июня 2018, 11:53
2
+1
Hello.
Replace it with
{if $product.options?}
    {foreach $product.options as $key => $option}
        {* exclude the option key *}
        {if $key in ['modification','modifications','msal']}{continue}{/if}

        {set $caption = ('ms2_product_' ~ $key)|lexicon}
        {if $option is array}
            {$caption} - {$option | join : '; '}
        {else}
            {$caption} - {$option}
        {/if}
    {/foreach}
{/if}
Raimei
06 июня 2018, 23:07
2
+1
Воспользуйтесь решением от Vgrish modCKEditor.

Или моим форком (это конечно смешной форк, пока просто тему другую поставил).

Там используется Drag&Drop система. Тоесть, просто закидываете картинку и всё. Дальше оно автоматически загружается.
Андрей
21 февраля 2018, 14:11
2
0
Потому что where это выборка по условию, так и будет работать. Если нужно чтобы были вверху, надо использовать параметр sortby, который принимает json массив, примерно как то так будет:

&sortby=`{"Data.popular":"desc", "Data.new":"desc", "publishedon":"desc"}`
Максим
21 февраля 2018, 14:09
2
0
Тогда вот пример сортировки по нескольким полям:
'sortby' => '{"Data.popular":"desc","Data.new":"asc"}'

И where тут совсем не при чем.