Всего 125 947 комментариев

Андрей
14 февраля 2018, 13:12
0
Артикул minishop2 это не TV поле, и искать по нему соответственно не будет. mSearch2 — в помощь.
Максим
14 февраля 2018, 13:01
0
нужно искать по артикулу из minishop2 это возможно?
форму вызываю вот так
[[!AdvSearchForm? &landing=`39`]]
результаты так как вы написали
Максим
14 февраля 2018, 12:57
0
[[!AdvSearchForm? &landing=`39` &includeTVs=`article` &withTVs=`article`]]
не работает вот так

результат вывожу вот так
[[!AdvSearch? &withTVs=`article`]]
Андрей
14 февраля 2018, 12:56
0
В сниппете AdvSearchForm нет параметра includeTVs. Параметры для TV нужно задавать в сниппете результатов поиска — AdvSearch.

Также чтобы искало по TV, надо добавить параметр withTVs:
[[!AdvSearch? &includeTVs=`article` &withTVs=`article`]]
Алексей Ерохин
14 февраля 2018, 12:50
0
withTVs — A comma separated list of TV names where to do the search. TV values are added as results.
docs.modx.com/extras/revo/advsearch/advsearch.advsearch
Дмитрий
14 февраля 2018, 11:55
0
Работает, спасибо!
Володя
14 февраля 2018, 11:52
+1
$modx->resource->$album_id
на
$modx->resource->id.$album_id
Дмитрий
14 февраля 2018, 11:47
0
А ну да, я же вызываю альбомы все и там прошу картинки.
Ну я поменял, но всё-равно одна превьюшка на всё.
<?php
//VK API
    $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
    $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом

    $response = $modx->cacheManager->get('vk_photos_preview_'.$modx->resource->$album_id, [xPDO::OPT_CACHE_KEY => 'vk_photos_preview']);
    if(empty($response) || $request['refresh'] == 1) {
        // Получаем превью альбома с ВК
        $query = file_get_contents('https://api.vk.com/method/photos.getAlbums?owner_id=-'.$owner_id.'&album_ids='.$album_id.'&need_covers=1&photo_sizes=1');
        $result = json_decode($query, true); // Декодируем полученный json массив
    
        $response = $result['response'];
        $alb_preview= $modx->cacheManager->set('vk_photos_preview_'.$modx->resource->$album_id, $response, 3600, [xPDO::OPT_CACHE_KEY => 'vk_photos_preview']);
    }
    
    foreach($response[0]['sizes'] as $pic){
        if($pic['width'] == 604)
            $preview = $pic['src'];
    }
    return $preview;
Алексей Ерохин
14 февраля 2018, 11:43
+1
Это зависит от того, где сниппет вызывается, скорее всего просто $modx->resource->id одинаков. Замените на $album_id
yani
14 февраля 2018, 11:36
+2
Сделано, а вообще есть уже собранный компонент ;)
Дмитрий
14 февраля 2018, 11:28
0
У меня получается так, что превьюшка для всех альбомов одинаковая… А исправить не понимаю как…
Александр Янк
14 февраля 2018, 11:17
0
Уважаемый автор, прошу в статье, где вы упоминаете namespace дать для новичков в скобках подсказку, что это «Пространство имен»
Володя
14 февраля 2018, 11:09
3
+1
чтобы выводились только те фото, которые указаны в галерее данной модификации, а остальные фото не отображались.
Для этого можно написать немного кода, например
$(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);
        }
    }
});
рабочий пример тут s6200.h3.modhost.pro/6/12010.html
Roman
14 февраля 2018, 11:09
0
IF подтормаживает генерацию страничек, Fenom работает быстрее, я как раз сейчас занимаюсь переходом на Fenom
Воеводский Михаил
14 февраля 2018, 11:06
0
В качестве отдельной доработки можем обсудить. Напишите на почту, скиньте API сервиса.
Alex
14 февраля 2018, 00:07
0
хм, подправил вроде как вы сказали, но все равно не выводится…
Надир
13 февраля 2018, 22:17
0
Возможно, вы меня не правильно поняли. Я имел ввиду, чтобы например при выборе цвета «белый» не просто фото в галерее переключалось на фото модификации, но чтобы выводились только те фото, которые указаны в галерее данной модификации, а остальные фото не отображались.
Андрей
13 февраля 2018, 22:16
0
Да, и я дополнил свой предыдущий комментарий, нужно чтобы в селектах был name правильный, у вас там не так выводится.
Alex
13 февраля 2018, 19:43
0
после добавления
<form class="form-horizontal ms2_form" method="post">
            <input type="hidden" name="id" value="[[*id]]"/>
	    <input type="hidden" name="options" value="[]"> //принимает массив опций
должен работать стандартный код
{if $product.options?}
	<div class="small">
		{$product.options | join : '; '}
	</div>
{/if}
?