Всего 123 791 комментарий

Сергей
03 апреля 2023, 15:27
0
Отличный плагин, просто незаменимый при отладке. Проблем в его работе не найдено (MODx 3.0.3, PHP 8). Автору искреннее спасибо.
Артур Шевченко
03 апреля 2023, 13:59
+2
Чтобы отделить свой код от чужого. К тому же, мало ли что случится, если кому-то придёт в голову мысль переустановить ZoomX. В общем, я бы назвал это инкапсуляцией.
Николай Савин
03 апреля 2023, 13:49
0
А для чего нужно хранить контроллеры в «своей» папке? Чем родная не подходит?
Эдвард Ерохин
03 апреля 2023, 11:34
0
Подскажите пожалуйста, на последней версии список городов, и отделений выводит только после ввода. Возможно есть какой то способ, который позволит их все таки подгружать сразу а не после ввода первой буквы?
Артур Шевченко
03 апреля 2023, 10:34
0
Если вы начинающий, используйте Modx 2.8.5
Алексей Смирнов
03 апреля 2023, 08:43
0
Минишоп2 4.х не поддерживает MODX 3.
Дима Касаткин
02 апреля 2023, 18:25
0
Подскажите, кто пользуется, что означает функция «Удалить Пользователя» по правому клику в логе посетителей компонента (в моем кейсе все пользователи — гости, сайт без личного кабинета):


И я так понял, что если отметить «Благополучный», то этот User-Agent сможет получить доступ к сайту, верно? Или это IP?

P.S. Вообще это всё мог бы протестировать, но во-первых, страшно нажимать кнопки не глядя (можно и из поиска сайт выкинуть случайно), а во-вторых, ответы останутся тут, и кто-то следующий уже не экспериментируя будет знать что как настраивать!
Артур Шевченко
01 апреля 2023, 22:07
+1
В вёрстке добавляем блок
<div id="remain">0</div>
В ФАЙЛ со скриптами (потому что нужно блюсти чистоту кода) добавляем код:
$(document).on('msoptionsprice_product_action', function (e, action, form, response) {
       $('#remain').innerText = response.modification.count;   
});
Всё.
Николай Мирошниченко
01 апреля 2023, 21:47
0
Кому интересно, то вот так реализовал. Костыли, но работают…
На странице товара вывожу остаток модификации товара

<p class="msoptionsprice-count msoptionsprice-[[*id]] numeric-value" id="ajax-container">[[+count]]</p>
в footer добавил js с таким содержимым

document.addEventListener("DOMContentLoaded", function() {
  function handleAjax() {
    const numericElements = document.querySelectorAll(".numeric-value");
    for (let i = 0; i < numericElements.length; i++) {
      const value = parseFloat(numericElements[i].textContent);
      if (value === 0) {
        numericElements[i].textContent = "Нет в наличии";
      } else if (value > 0) {
        numericElements[i].textContent = "Есть в наличии";
      }
    }
  }
  document.addEventListener("ajaxLoad", handleAjax);
  setTimeout(function() {
    const newNumericValue = document.createElement("span");
    newNumericValue.textContent = "0";
    newNumericValue.classList.add("numeric-value");
    document.body.appendChild(newNumericValue);
    const newNumericValue2 = document.createElement("span");
    newNumericValue2.textContent = "10";
    newNumericValue2.classList.add("numeric-value");
    document.body.appendChild(newNumericValue2);
    const ajaxLoadEvent = new Event("ajaxLoad");
    document.dispatchEvent(ajaxLoadEvent);
  }, 3000);
  const observer = new MutationObserver(function(mutationsList) {
    for (const mutation of mutationsList) {
      if (mutation.type === "childList") {
        const ajaxLoadEvent = new Event("ajaxLoad");
        document.dispatchEvent(ajaxLoadEvent);
      }
    }
  });
  const ajaxContainer = document.querySelector("#ajax-container");
  if (ajaxContainer) {
    observer.observe(ajaxContainer, { childList: true });
  }
});
Николай Мирошниченко
01 апреля 2023, 21:31
0
В целом так и сделал… Благодарю.
Николай Мирошниченко
01 апреля 2023, 12:34
0
Делаю вот так:
Вызываю так на странице товара

[[!msOptionsPrice.modification?
&tpl=`count_tpl`
&where=`{"count" > 0}`
&toPlaceholder=`mycounts`
]]
Чанк count_tpl
[[+count]] шт
Затем пытаюсь вывести на странице так
<span class="msoptionsprice-count msoptionsprice-[[*id]]">[[+mycounts]]</span>
Я понимаю что ошибка но не могу понять как это решить. На примере есть вывод кол-ва товара вот тут, но как его вывести… не пойму
Николай Мирошниченко
01 апреля 2023, 11:41
0
К сожалению не вывожу списком. Работают как опции товара. Скрыть кнопку «купить» если кол-во = 0… подскажите это, в целом, возможно? Возможно был опыт?
Дмитрий
01 апреля 2023, 03:57
0
Автору низкий поклон! Очень нужная тема!
Денис Усачев
31 марта 2023, 21:57
0
Помогите разобраться с ieMsOptionsPrice2. Питаюсь экспортировать исключительно опубликованные товары и модификации но в результате экпортирует все товари включая не опубликованные. Настройки 1 и 2 не помагают.
1. Опции — Документ Modx — Только опубликованные: Да
2. Опции — Общие: — where: {«published:=»:1}
Vladimir
31 марта 2023, 18:43
0
Сделал так и заработало prnt.sc/-KzDCk1OgHuX
Сменил «Кодировка подключения:» на «utf8mb4» и заработало, хотя на сервере баззы данных utf8mb3, до этого Сопоставлении стояло как «utf8mb4_general_ci» но сменил на 3, в целом при установке поменял кодировку и всё заработало
Vladimir
31 марта 2023, 18:33
0
в phpmyadmin Сопоставление стоит «utf8mb3_general_ci»
steve.kon
31 марта 2023, 17:06
0
Да понятно… И обращался не раз, и с Вами работали в том числе)
Думал, просто, удастся в данном случае как-то передать товар в стандартную конструкцию.
Может через QuickView попробовать…
Артур Шевченко
31 марта 2023, 16:57
0
Вы тогда в раздел «Работа» обратитесь, там помогут, не бесплатно, конечно.