Всего 125 971 комментарий

Андрей
02 февраля 2022, 23:22
2
+4
К товарам в MS не применимо?
Для расширения полей минишопа и так есть 2 компонента — msFieldsManager и msAddField
Денис Мижеревич
02 февраля 2022, 23:20
0
Спасибо. Предполагал, что js какой-то накладывает, но не был уверен
Aleksandr Huz
02 февраля 2022, 22:11
0
Данный компонент делает поля для всех шаблонов? Т.е. разделять по шаблонам нельзя?
Это будет в след. версии.

К товарам в MS не применимо?
К свойствам товара нет.
Артур Шевченко
02 февраля 2022, 22:09
0
Ну это тоже не проблема.
$products = $modx->getIterator('msProduct', array('published:!=' => 1));
foreach($products as $product){
$dir = MODX_CORE_PATH.'assets/images/products/'.$product->get('id').'/';
removeDirectory($dir);
$product->remove();
}

 function removeDirectory($dir) {
        if ($objs = glob($dir."/*")) {
            foreach($objs as $obj) {
                is_dir($obj) ? removeDirectory($obj) : unlink($obj);
            }
        }
        rmdir($dir);
    }
Игорь
02 февраля 2022, 22:00
0
так я уже так пробовал. меню закрывается, действия не происходило.

сейчас уже все работает. последние посты мои помогли мне.
Сергей Карпович
02 февраля 2022, 22:00
0
Данный компонент делает поля для всех шаблонов? Т.е. разделять по шаблонам нельзя?
К товарам в MS не применимо?
Андрей
02 февраля 2022, 21:59
+1
Мне нужно изменить эта маску на формат украинского номера телефона (+3(...)...)
Подскажите, где это редактировать?
В минишопе по умолчанию нет маски на поле телефона. Смотри подключенные js скрипты.
Сергей
02 февраля 2022, 21:19
0
Спасибо, я пробовал через консоль удалить, но у меня возникла проблема, фото не удаляются. в папках остаются фото оригиналов и ресайзы. И вроде 'published' => 0 можно так прописать)
Артур Шевченко
02 февраля 2022, 21:00
0
Вот так попробуй.
$products = $modx->getIterator('msProduct', array('published:!=' => 1));
foreach($products as $product){
$product->remove();
}
Александр Мельник
02 февраля 2022, 18:05
0
Ох страшное вы что то напридумали.
У вас проблема в том, что если вы находитесь на одной странице, кликаете на пункт меню, который содержит якорную ссылку на элемент на этой же странице, у вас не закрывается меню?
Почему не написать 3 строчки javascript которые при клике на ссылку в меню, кликнут по крестику закрывающему меню?
Игорь
02 февраля 2022, 16:53
0
Нашел такой кусок. работает во всех браузерах, но не нравится его обьем.

работает:
// Select all links with hashes
$('a[href*="#"]')
  // Remove links that don't actually link to anything
  .not('[href="#"]')
  .not('[href="#0"]')
  .on('click', function(event) {
    // On-page links
    if (
      location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') 
      && 
      location.hostname == this.hostname
    ) {
      // Figure out element to scroll to
      var target = $(this.hash);
      target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
      // Does a scroll target exist?
      if (target.length) {
        // Only prevent default if animation is actually gonna happen
        event.preventDefault();
        $('html, body').animate({
          scrollTop: target.offset().top
        }, 1000, function() {
          // Callback after animation
          // Must change focus!
          var $target = $(target);
          $target.trigger('focus');
          if ($target.is(":focus")) { // Checking if the target was focused
            return false;
          } else {
            $target.attr('tabindex','-1'); // Adding tabindex for elements not focusable
            $target.trigger('focus'); // Set focus again
          };
        });
      }
    }
  });

Укороченный вариант его, но не работает у меня…

$('a[href*="#"]').on('click', function() {
  $('html, body').animate({
    scrollTop: $($.attr(this, 'href')).offset().top
  }, 400);
  return false;
});
Алексей
02 февраля 2022, 16:46
0
можно компонентом Batcher отметить все неопубликованные и удалить
Игорь
02 февраля 2022, 16:40
0
браузеры оказывается поддерживают плавные скролы. но сафари не поддерживает

а так работает это кусок, кроме сафари:
<a href="site.ru/#steer">Бычок</a>

<style>
html {
  scroll-behavior: smooth; /* свойство scroll-behavior не наследуется, применяется к прокручиваемым блокам */ 
}
</style>

<h2 id="steer">Бычок</h2>
Может кто подскажет, как сделать для всех браузеров?
Игорь
02 февраля 2022, 16:19
0
Может кто подскажет как сделать и плавный скролл сразу к месту якоря?

e.preventDefault();
            var anchor = $(this).attr('href');
            $('html, body').stop().animate({
                scrollTop: $(anchor).offset().top - 60
            }, 800);

и так пробую
$('a').click(function() {
          
            var anchor = $(this).attr('href');
            $('html, body').stop().animate({
                scrollTop: $(anchor).offset().top - 60
            }, 800);
        });
Игорь
02 февраля 2022, 15:24
0
Решено! Короче сам додумался методом тыка. Якори работают, ссылки обычные открывает

<a id="section-posldedstviya"></a><!-- якорь в нужном месте //-->
ссылка в меню
<li><a href="[[~1]]#section-posldedstviya" class="ps-4">Последствия</a></li>
в javascript.js:
$('a').click(function(){
    // Здесь пишем код, который будет закрывать меню
    $(slide_wrp).css({ "right": -$(slide_wrp).outerWidth() + 'px' }); // скрываем меню
    setTimeout(function() {
        $(slide_wrp).removeClass('active'); // remove active class 
    }, 50);
    $(overlay).css({ "opacity": "0", "width": "0" });
})
Игорь
02 февраля 2022, 14:37
0
/* закрытие меню после нажатии на ссылки в меню*/
$('.side-menu-wrapper li a').click(function(e) { //on menu close button click
    e.preventDefault();
    $(slide_wrp).css({ "right": -$(slide_wrp).outerWidth() + 'px' }); // скрываем меню, прячем за область видимости
    setTimeout(function() { 
        $(slide_wrp).removeClass('active'); // remove active class 
    }, 50);
    $(overlay).css({ "opacity": "0", "width": "0" });
});
сделал ссылки так
<a href="[[~26]]#price">прайс</a>
как бы работает, но теперь другая проблема, обычные ссылки
<a href="[[~27]]">контакты </a>
— не кликабельные, а якоря расставлять не хочется для каждой ссылки
iWatchYouFromAfar
02 февраля 2022, 13:51
0
Конечно, я это и имел ввиду, SQL базы данных или noSQL или GraphQL.
Руслан Алеев
01 февраля 2022, 21:01
+1
Огонь, пасиб!
В будущих версиях стоит в сетку еще и «Вкладку» отображать, чтоб проще фильтровать.