Всего 123 803 комментария

Ivan K.
13 сентября 2022, 17:43
0
А чем плоха Fotorama? я ее использую на нескольких проектах)) Еще использую slick (но эта галерея совсем древняя)

Подскажите, в таком случае какую галерею использовать? Чтобы было современно, модно, молодёжно))
Константин
13 сентября 2022, 17:22
0
А можно пример? Пока не понимаю как получить значение и сохранить в переменную(
Артур Шевченко
13 сентября 2022, 17:15
0
Получить значение этой опции и проверить. Проверка у тебя есть, значение ты не получил. Значение можно получить используя сниппет msProductOptions и сохранив результат в переменную $combustion_chamber
Сергей Карпович
13 сентября 2022, 16:15
+1
Самый простой способ, даже 2:
1. установить плагин mixedimage, создать поле с типом Смешанная загрузка, указать динапческие пути и прописать это поле в MIGX конфиге
2. В MIGX конфиге у нужного поля прописать источник файлов.
Пример:
[{
"fields": [
{"field":"text","caption":"Текст"},
{"field":"image","caption":"Изображение","inputTVtype":"image","sourceFrom":"config",
"sources":"[{\"MIGX_id\":\"1\",\"context\":\"web\",\"sourceid\":\"3\"}]"}
]
}]
3 — это ID источника файлов
Константин
13 сентября 2022, 16:14
0
Не вот я и не пойму, как вывести картинку в зависимости от значения опции…
Конструкция такая не работает…
{if $combustion_chamber== 'Закрытая (турбированный)'}
<img src="assets/icons/turbine (1).png" title="Турбированный">
{/if}
Артур Шевченко
13 сентября 2022, 15:17
0
А почему ты решил что в чанке есть $combustion_chamber?
Константин
13 сентября 2022, 15:05
0
Вот опция в настройках минишопа: disk.yandex.ru/d/hJns36pPN6sKUw
Если ее значение у товара «Закрытая (турбированный)», то нужно выводить картинку под флагом логотипа так: disk.yandex.ru/i/_fk-YePq0yjO7g
В коде чанка делаю так: disk.yandex.ru/i/wIzG2T87HWPK9g

Код чанка:
<div class="grid col-md-4 col-sm-6 col-xs-12 ms2_product">
  <form method="post" class="ms2_form">
	<input type="hidden" name="id" value="{$id}">
	<input type="hidden" name="count" value="1">
	<input type="hidden" name="options" value="[]">
	<div class="item item-hover">
	  <div class="item-image-wrapper">
		[[+{$_pls['vendor.logo']}:isnot=`0`:then=`<div class="vendor-logo-grid">
		<img src="{$_pls['vendor.logo']}" alt="Логотип производителя сантехники [[+vendor.name]]" class="img-responsive" title="[[+vendor.name]]" data-toggle="tooltip" />
		</div>`:else=``]]
		{if $combustion_chamber== 'Закрытая (турбированный)'}
<img src="assets/icons/turbine (1).png" title="Турбированный">
{/if}
		<figure class="item-image-container">
		  <a href="{$id | url}" class="product-image">
			{if $medium?}
			<img src="{$medium}" data-echo="{$medium}" alt="{$pagetitle}" title="{$pagetitle}" class="img-responsive"/>
			{else}
			<img src="{'assets_url' | option}components/minishop2/img/web/ms2_small.png"
			srcset="{'assets_url' | option}components/minishop2/img/web/ms2_small@2x.png 2x"
			alt="{$pagetitle}" title="{$pagetitle}"/>
			{/if}
		  </a>
		</figure>	
	  </div>
	  {if $favorite?}
	  <span class="discount-rect">Акция</span>
	  <p class="sale-product">[[+sale-product]]</p>
	  {/if}
	  {if $new?}
	  <span class="new-rect">Новинка</span>
	  {/if}
	  {if $popular?}
	  <div class="discount-rect"><span>Популярный</span></div>
	  {/if}
	  [[+old_price:isnot=`0`:then=`<span class="discoun-rect sale">СКИДКА [[!saving? &price=`[[+price]]` &old_price=`[[+old_price]]`]] %</span>`:else=``]]
	</div><!-- End .item-image-wrapper -->
	<div class="item-meta-container">
	  <h3 class="item-name"><a href="{$id | url}" title="Подробное описание товара">{$pagetitle}</a></h3>
	  <div class="price-container">
	      
	      {if $_pls['vendor.name'] in list ['Protherm (Протерм)', 'Bosch (Бош)', 'Buderus (Будерус)', 'Grundfos (Грундфос)', 'Viessmann (Виссманн)', 'Vaillant (Вайлант)', 'Kermi (Керми)', 'Baxi (Бакси)']}
    <h3 class="price-on-request-product">Цена по запросу</h3>
{else}
	      
		{if $price?}<span class="item-price">{'!msMultiCurrencyPrice' | snippet : ['price' => $price,]} {$_modx->getPlaceholder('msmc.symbol_right')}</span> {else} <span class="price-grid">Цена по запросу</span>{/if}
		{/if}
		
		{if $old_price?}<span class="old-price">{$old_price} {$_modx->getPlaceholder('msmc.symbol_right')}</span>{/if}
		
	  </div>

	  [[+article:gt=`0`:then=`
	  <div class="brand"><span>Артикул:</span> [[+article]]</div>
	  `:else=``]]

	  {if $_pls['vendor.name'].0?}<div class="brand"><span>Производитель:</span> {$_pls['vendor.name']}</div>{/if}
	  {$_modx->runSnippet('msProductOptions', [
'product' => $id,
'ignoreOptions' => 'series,appointment',
'tpl' => 'msProductOptionsGridTpl'
])}
	  <div class="item-action col-md-12 col-xs-12">
		<div class="col-md-6">
		  <button class="btn btn-custom" type="submit" name="ms2_action" value="cart/add" onclick="yaCounter51837074.reachGoal('addtocart'); return true;">Купить</button>
		</div>
		<div class="col-md-6">
		  <input type="number" name="count" class="input-sm form-control" value="1"/>
		</div>
		
	  </div>
	</div>
	[[!msOneClick?
	&id=`[[+id]]`
	&tplBtn=`msoneclickBtnTpl`
	&tplForm=`msOneClickFormTpl`
	]]
  </form>
</div>
Артур Шевченко
13 сентября 2022, 14:44
0
Без контекста непонятно ничего. Где ты пишешь это условие?
Алексей Смирнов
13 сентября 2022, 14:09
0
Добрый день.
есть маленький момент не хороший.
Допустим мне нужно чтобы по умолчанию был не русский язык, а английский.
притом domain.dom — англ, а ru.domain.dom — русский.
И чтобы добавить перевод именно для русского языка необходимо переключить настройку manager_language в en чтобы у ресурса стал выпадать вариант рус, а не англ.
Логично, вроде чтобы это дело зависило от cultureKey а не от manager_language. Или другой какой-то настройки.
Надеюсь на исправление потому что без этого исправления я не могу пользоваться компонентом.
Спасибо.
Константин
13 сентября 2022, 13:58
0
Есть опция combustion_chamber, если ее значение «Закрытая (турбированный)», то пытаюсь вывести картинку турбины в карточке товара, такой конструкцией, не получается…

{if $combustion_chamber== 'Закрытая (турбированный)'}

{/if}

Скриншот: disk.yandex.ru/i/G7rd8tIVXlwTPw
Артур Шевченко
13 сентября 2022, 11:49
+1
Так попробуй
Вкладки формы:
[{"caption":"Галерея", "fields": [
    {"field":"image","caption":"Заголовок","inputTVtype":"image", "sourceFrom":"migx"},
    {"field":"title","caption":"Название картинки"}
  ]
}]
Игорь
13 сентября 2022, 11:30
0
у меня два поля Migx tv

1) migx otzyv
[{"caption":"Отзывы", "fields": [
{"field":"names","caption":"Имя человека"},
{"field":"descriptions","caption":"Отзыв","inputTVtype":"richtext"},
{"field":"dates","caption":"Дата отзыва","inputTVtype":"date"},
{"field":"gallerys","caption":"Фотография от клиента","inputTV":"gallery-klient","sourceFrom":"tv"}
]
}]

[{
  "header": "Имя человека",
  "dataIndex": "names"
},{
  "header": "Отзыв",
  "dataIndex": "descriptions"
},{
  "header": "Дата отзыва",
  "dataIndex": "dates"
},{
  "renderer": "this.renderImage",
  "header": "Фотография от клиента",
  "dataIndex": "gallerys"
}]

2) migx gallery-klient
[{"caption":"Галерея", "fields": [
    {"field":"image","caption":"Заголовок","inputTVtype":"image",  "sourceFrom":"tv"},
    {"field":"title","caption":"Название картинки"}
  ]
}]

[{
  "header": "Изображение", "sortable": "false", "dataIndex": "image","renderer": "this.renderImage"
},
{
  "header": "Название", "sortable": "true", "dataIndex": "title"
}]
все равно из корня…
Игорь
13 сентября 2022, 11:19
0
дописываю что б было так, дописываю
"inputTV":"gallery-klient"
(это tv, у него в источники файлов выбран нужный путь.)

Вкладки формы
[{"caption":"Галерея", "fields": [
    {"field":"image","caption":"Заголовок","inputTVtype":"image", "inputTV":"gallery-klient"},
    {"field":"title","caption":"Название картинки"}
  ]
}]
но все равно, открывает через корень
Артур Шевченко
13 сентября 2022, 11:17
0
Вкладки формы:
[{"caption":"Галерея", "fields": [
    {"field":"image","caption":"Заголовок","inputTVtype":"image", "sourceFrom":"tv"},
    {"field":"title","caption":"Название картинки"}
  ]
}]
Игорь
13 сентября 2022, 11:06
0
а если у меня так задаются поля

Вкладки формы:
[{"caption":"Галерея", "fields": [
    {"field":"image","caption":"Заголовок","inputTVtype":"image"},
    {"field":"title","caption":"Название картинки"}
  ]
}]

Разметка колонок:
[{
  "header": "Изображение", "sortable": "false", "dataIndex": "image","renderer": "this.renderImage","renderer": "this.renderImage"
},
{
  "header": "Название", "sortable": "true", "dataIndex": "title"
}]
Артур Шевченко
13 сентября 2022, 10:57
0
В настройках поля с картинкой на вкладке MediaReaources надо выбрать source From = tv.
Alexey
13 сентября 2022, 08:15
0
В mSync после проведения импорта возвращается массив id товаров — обновлённых и созданных. И можно через плагин отловить эти товары и опубликовать одним запросом. А здесь нужно смотреть, но подозреваю, что нет такой фичи.
Сергей
13 сентября 2022, 00:59
0
Вот теперь да, вижу) что обновляется если вводить в ручную индекс)
Артур Шевченко
13 сентября 2022, 00:47
0
Ну ладно, может насчёт «как часы» я преувеличил, но стоимость меняется, правда для этого надо вручную вводить индекс, если вводить адрес, то стоимость не обновляется.