Всего 123 809 комментариев

deleted
21 сентября 2022, 12:34
0
А смысл тратить время на то чтоб разбираться с чужим дополнением, если там кода на несколько строчек?

<style>
    .cookie-message {
        position: sticky;
        z-index: 100;
        bottom: 0;
        background-color: #fff;
        border-top: 1px solid #d3d3d3;
    }

    .cookie-message-inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1.5rem 0;
        line-height: 1.2;
    }

    .cookie-message-text {
        flex-grow: 2;
    }
</style>

<div class="cookie-message js-cookie-message" hidden>
    <div class="container">
        <div class="cookie-message-inner">
            <div class="cookie-message-text">
                текст
            </div>
            <button class="button js-cookie-message-confirm">ОК</button>
        </div>
    </div>
</div>

<script>
    if (!localStorage.getItem('cookieAccept')) {
        const el = document.querySelector('.js-cookie-message');
        el.style.display = 'block';
        el.querySelector('.js-cookie-message-confirm').addEventListener('click', (e) => {
            localStorage.setItem('cookieAccept', 1);
            el.style.display = 'none';
        }, true);
    }
</script>
Алексей Смирнов
21 сентября 2022, 09:54
0
Сделайте html разметку для фильтра свою. И все будет хорошо.
Ведь это вывод по умолчанию…
Павел
21 сентября 2022, 09:39
0
Я так понимаю — это костыль, а других вариантов нет? Что бы как оно и должно работать? В админке один чекбокс, я думал, что и в фильтре оно должно примерно так же вывестись, нет?
Роман
21 сентября 2022, 09:28
0
Ну почему ерунда стразу. Вывод ответы 1(Да) и 0(Нет). Если вам нужно только Да, то второй с помощью css уберите.
ms|new:boolean
ms|favorite:boolean
ms|popular:boolean
#mse2_filters .mse2s_boolean:nth-child(2n) {
    display: none;
}
Роман
21 сентября 2022, 08:43
0
Скопируйте сниппет ms2Gallery и добавьте свой параметр, в нем передавайте pagetitle, так точно быстрее будет.
Kurt
21 сентября 2022, 03:48
0
Да, конечно.
Зачем использовать готовый компонент? Их же просто так создают.
Надо обязательно зае***ься мозгами.
Александр Туниеков
20 сентября 2022, 23:52
0
Да я про подсчет результатов. Почему-то называл всегда подсказками :-(
поэтому скидывайте кейсы
Сейчас код вне зоны доступа :-). Завтра скину
Артур Шевченко
20 сентября 2022, 23:35
0
Непонятно какие подсказки ты имеешь в виду, в mFilter есть подсчёт результатов по каждому фильтру, но для фильтров из коробки я этого делать не планировал. И в целом, я не считаю себя экспертом по фильтрации, поэтому скидывайте кейсы, посмотрим, допилим и внедрим.
deleted
20 сентября 2022, 23:35
0
Нет, могу либо доступ к сайту дать, либо на pastebin код скинуть
Артур Шевченко
20 сентября 2022, 23:32
0
Конечно нужна, есть репозиторий с кодом?
Александр Туниеков
20 сентября 2022, 22:41
0
Может вы закрывающею } не скопировали???? Ошибка на это похожа.

Вообще у тебя в ms2Gallery 'limit'=>1 и 2 вариант будет не сильно быстрее. 2+1 простых запроса в базу против 1 более сложного на каждый вызов ms2Gallery. То есть на 1 картинку.
Если картинок много то лучше в основном pdoResources сразу и картинки и Parent подцепить join-ми. Тогда быстрее будет. 1 запрос на все против 3 запросов на каждый дочерний ресурс.
Примерно так:
{'!pdoResources' | snippet : [
    'parents'=>5,
    'tpl'=>'res_chunk',
	'loadModels'=>'ms2gallery',
	'leftJoin'=>[
		'File'=>[
			'class'=>'msResourceFile',
			'on'=>'File.resource_id = modResource.id and File.rank = 1 and File.path LIKE \'%small%\''
		],
		'Parent'=>[
			'class'=>'modResource',
			'on'=>'Parent.id = modResource.parent'
		],
	],
	'select'=>[
		'modResource'=>'*',
		'File'=>'File.url as file_url,File.name as file_name',
		'Parent'=>'Parent.pagetitle as parent_title',
	],
]}
res_chunk:
<div class="col-6 col-md-3 col-sm-6 gv-card">
	<div class="product-grid">
		<div class="product-image">
			<a href="{$id | url}" class="image">
				{if $file_url}
					<img src="{$file_url}" alt="{$parent_title}" title="{$file_name}">
				{else}
					<img src="assets/img/projects/v-1.png" alt="{$pagetitle}" title="{$pagetitle}"/>
				{/if}
			</a> 
			<div class="add-to-cart">
				<a href="{$id | url}">{$pagetitle}</a>
			</div>
		</div>
	</div>
</div>
Я бы так делал, если картинок много. И phpthumbon бы не стал использовать, а задал бы нужное превью в галерее. Интересно даже какая скорость будет во всех 3 вариантах.
пс. pdoResources наверно лучше кешировать.
Антон
20 сентября 2022, 21:52
0
Первый вариант работает, спасибо. Картинок будет много.
Второй вариант не заработал
Unexpected end of expression in modchunk/84 line 5, near '{'!ms2Gallery' | snippet: [↵'resources'=>$id,↵'innerJoin'=>['Parent'=>['class'=>'modResource','on'=>'Parent.id = modResource.id'],↵'select'=>['Parent'=>'Parent.pagetitle as parent_title'],↵'limit'=>1,↵'tpl'=>'ms2Gallery.mainpage.tpl'↵]' <- there
Александр Туниеков
20 сентября 2022, 21:08
0
Спасибо. Теперь более-менее понятно
Александр Туниеков
20 сентября 2022, 21:03
0
Ну тут 2 варианта:
1) не очень хороший. В $file должно быть $file['resource_id'] и в alt="… ТО САМОЕ..." можно сделать так
alt="{($file['resource_id'] | resource: 'parent') | resource: 'pagetitle'}"
Но модификатор | resource ресурсо-затратный и если будет 100 картинок, то страница будет тупить.
2) В ms2Gallery сразу добавить запрос паджтитл родителей
{'!ms2Gallery' | snippet: [
'resources'=>$id,
'innerJoin'=>['Parent'=>['class'=>'modResource','on'=>'Parent.id = modResource.id'],
'select'=>['Parent'=>'Parent.pagetitle as parent_title'],
'limit'=>1,
'tpl'=>'ms2Gallery.mainpage.tpl'
]}
alt="{($file['parent_title']}"
Примерно так не проверял
Алексей Смирнов
20 сентября 2022, 20:47
+1
Все просто.
в момент когда вы выставляете & система должна создать ссылку на значение. А для того чтобы это сделать нужно значение которое определилось в $a Тоже было ссылкой.
таким образом теперь $a ссылается на массив в памяти, где частичная ссылка на элемент массива в итерации $v.
Поэтому следующее действие $test = $a; просто копирует ссылку (или создает ссылку на тот же элемент памяти) на наш первый массив-со всеми значениями и в обоих переменных ссылка на один и тот же элемент в памяти. Далее, думаю понятно почему изменения в$v2 по сути являются изменением $a
Aleksandr Huz
20 сентября 2022, 20:45
0
На этой недели постараюсь возобновить
Алексей Смирнов
20 сентября 2022, 20:40
0
Эти цифры означают что вы на главной странице.
А по существу использовать pdoField.
Антон
20 сентября 2022, 20:39
0
в точку)
Чанк главной карточки
<div class="col-6 col-md-3 col-sm-6 gv-card">
<div class="product-grid">
<div class="product-image">
<a href="[[~[[+id]]]]" class="image">[[!ms2Gallery? &resources=`[[+id]]` &limit=`1` &tpl=`ms2Gallery.mainpage.tpl`]]</a> 
<div class="add-to-cart">
<a href="[[~[[+id]]]]">[[+pagetitle]]</a>
</div>
</div>
</div>
</div>
Чанк ms2Gallery.mainpage.tpl:
{if $files?}
    {foreach $files as $file}
<img src="{$file['url'] | phpthumbon: 'fltr[]=wmi|assets/wm/wm.png|C|40|100|100|0'}" alt="...ТО САМОЕ..." title="{$file['name']}">
    {/foreach}
{else}
<img src="assets/img/projects/v-1.png" alt="[[+pagetitle]]" title="[[+pagetitle]]"/>
{/if}