Вопросы

Хорошие сервисы для отправки email ?

Добрый день.
Кто из личного опыта может подсказать платные и качественные сервисы по отправке email с простым api без ограничения на количество?

Один из наших магазинов на modx отправляет очень много писем, каждый заказ сопровождается минимум 2 мя, плюс есть подписка на рассылки новостей и так далее. Заказы происходят каждые 30 секунд, а подписка на новости (после того как заказчик попросил дарить каждому подписавшемуся промокод) происходит каждые 10 секунд.
И нас банят всюду — хостинг ник ру так почти сразу, если мы отправляем письма через mail()
Есть платный гугл аккаунт, отправляли через smtp, но в какой то момент и гугл прислал письмо — вы нарушили правила (без пояснения какие именно) и тоже отключил smtp

Есть ли вообще такие сервисы, которые могут граммотно и без ограничений отправлять письма?
ps и особое спасибо тому кто ткнет пальцем в строчку кода minishop где идет вызов сервиса mail при отправке писем при заказе товара и смене статусов заказа.
Спасибо.
Александр Мельник
12 марта 2021, 09:26
modx.pro
843
0

Инициализация формы при обращении formit + ajaxform + google capcha

Всем примет, как на странно но роботы отправляют спам и при google capcha.
Как мне кажется, роботы отправляют спам из-за того, что они видят форму в исходном коде сайта.
Если его скрыть, возможно спама не станет.

Может у кого есть какие-то мысли или решения.

Хотелось бы максимально не править код компонентов и решить следующие задачи.

1. Скрыть форму из исходного кода, я так полагаю это можно сделать по средствам php, но на сколько сильно придется менять компоненты.
2. Сделать так, что бы google capcha срабатывала только при открытой форме, так-как чем больше форм, тем сильнее она грузит сайт и вес у скриптом не мал.
3. Что бы, функционировал ajaxform

Если форму мы можем скрыть как то при использовании всплывающих окон, то как быть без их использования.
Сергей
11 марта 2021, 13:36
modx.pro
655
0

Как сделать дополнительное поле в Register?

Здравствуйте, нужно сделать регистрацию на сайте. Установил дополнение Login.
Как сделать дополнительно поле при регистрации и отобразить его в профиле? Уже весь гугл изрыл
Вызываю сниппет Register
Чанк: lgnRegisterFormTpl
Как видим, только базовые поля заполнения.
<div class="register">
    Чанк: <strong>lgnRegisterFormTpl</strong>
    <div class="registerMessage">[[+error.message]]</div>
    
    <form class="form" action="[[~[[*id]]]]" method="post">
        <input type="hidden" name="nospam:blank" value="" />
        
        <label for="username">[[%register.username? &namespace=`login` &topic=`register`]]
            <span class="error">[[+error.username]]</span>
        </label>
        <input type="text" name="username:required:minLength=6" id="username" value="[[+username]]" />
        
        <label for="password">[[%register.password]]
            <span class="error">[[+error.password]]</span>
        </label>
        <input type="password" name="password:required:minLength=6" id="password" value="[[+password]]" />
        
        <label for="password_confirm">[[%register.password_confirm]]
            <span class="error">[[+error.password_confirm]]</span>
        </label>
        <input type="password" name="password_confirm:password_confirm=`password`" id="password_confirm" value="[[+password_confirm]]" />
        
        <label for="fullname">[[%register.fullname]]
            <span class="error">[[+error.fullname]]</span>
        </label>
        <input type="text" name="fullname:required" id="fullname" value="[[+fullname]]" />
        
        <label for="email">[[%register.email]]
            <span class="error">[[+error.email]]</span>
        </label>
        <input type="text" name="email:email" id="email" value="[[+email]]" />
        
        <br class="clear" />

        [[+register.recaptcha_html]]
        [[+error.recaptcha]]
        
        <div class="form-buttons">
            <input type="submit" name="login-register-btn" value="Register" />
        </div>
    </form>
</div>
Дмитрий
11 марта 2021, 12:49
modx.pro
910
0

PdoPage ЧПУ не переходит при клике на пагинацию, как исправить?

При клике на ссылку допустим следующей странице, не переходит, но если ввести адрес что в этой ссылке оно переходит, а при клике на ссылку ничего не происходит, НЕТ ошибок как в консоли, так и в модиксе. Плагин делал.
Migx обернут в PdoPage

[[!pdoPage?
        &element=`getImageList`
        &limit=`5`
        &ajaxMode=`default`
        &ajaxElemWrapper=`#pdopage`
        &ajaxElemRows=`#pdopage .rows`
        &ajaxElemPagination=`#pdopage .pagination`
        &ajaxElemLink=`#pdopage .pagination a`
        &pageVarKey=`refresher`
        &pageNavVar=`refresher.nav`
        &totalVar=`refresher.total`
        &pageLinkScheme=`/[[+pageVarKey]]-[[+page]]`
        &tvname=`refresherCourses`
        &tpl=`refresherCoursesTpl`
        &docid=`[[*id]]`
    ]]
Вот плагин на обработку не найденных страниц. ИВЕНТ СТАВИЛ.

<?php
    if ($modx->event->name == 'OnPageNotFound') {
        $req = $modx->getOption('request_param_alias');
        if (strpos($_REQUEST[$req], 'refresher') !== false) {
            $pageVarKey = 'refresher';
        } else if(strpos($_REQUEST[$req], 'proffesions') !== false){
            $pageVarKey = 'proffesions';
        } else {
            $pageVarKey = 'page';
        }
        
        if (preg_match("#.*?({$pageVarKey}-(\d+))#", $_REQUEST[$req], $matches)) {
            $uri = str_replace($matches[1], '', $matches[0]);
            $id = 0;
            if (!$id = $modx->findResource($uri)) {
                $id = $modx->findResource(rtrim($uri, '/'));
            }

            if ($id) {
                $_GET[$pageVarKey] = $_REQUEST[$pageVarKey] = $matches[2];
                $modx->sendForward($id);
            }
        }
    }
Alex
10 марта 2021, 15:20
modx.pro
651
0

Не приходят заявки на почту через SMTP

Сайт:
xn--80acbhftsxotj0d8c.xn--p1ai/
Установлен Shopkeeper.
Заказы с сайта падают в админку:

Но на почте ничего нет.

Интересный момент — в октябре 20-го года поменяли пароль от почтового ящика, и именно после этого перестали приходить заявки на почту.
Я ввел новый пароль в поле mail_smtp_pass но безрезультатно. Пробовал еще раз менять пароль, не помогает.
Писал в поддержку хостинга, говорят проблема на стороне mail.ru
Пишу в mail.ru, говорят неверный пароль:(

Может быть где-то еще может храниться старый пароль?
Текущие настройки SMTP:

Лог ошибки:
[2021-03-10 12:44:10] (ERROR @ /var/www/u0129085/data/www/xn--80acbhftsxotj0d8c.xn--p1ai/core/components/formit/src/FormIt/Hook/Email.php: 322) [FormIt] Произошла ошибка при попытке отправить почту. Ошибка соединения с SMTP-сервером github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
Виноградов Тимур
10 марта 2021, 13:02
modx.pro
2 137
0

Не рендерится в админке tv-поле мульти-селект

Всем привет!

Столкнулся со странностью… есть tv-поле с мульти-селектом, вот такие настройки:

skrinshoter.ru/s/090321/DsS6uUen?a

В общем-то, стандартный вариант, всё работает как нужно. Проблема в том, что если в pagetitle выбранного пункта селекта попадается запятая — skrinshoter.ru/s/090321/IlPXU9rr?a — то в базу значение заносится и сохраняется, с ним можно работать на фронте, но — после перезагрузки страницы в админке значение выбранного пункта не выводится — skrinshoter.ru/s/090321/wP2PP2ke. Просто пустое поле.

Соответственно, если выбрать несколько пунктов, то выведутся все, кроме этого «больного на запятую».

Причина именно в наличии запятой. Кто-нибудь сталкивался?
Alexey
09 марта 2021, 14:45
modx.pro
870
0

miniShop2 варианты оплаты

В miniShop2 на странице корзины два варианта оплаты, наличными и карта, мне нужно что бы обязательно было заполнено поле, но что бы изначально не было ничего выбрано, а как не старался, если ставить name=payment, то сразу один пункт выбран. Как это убрать?
Евгений
09 марта 2021, 11:49
modx.pro
648
0

tickets активировать лайки

подскажите как активировать лайки в комментариях
выводится как TicketComments
вижу сам рейтинг
при нажатии на иконки пишет что не хватает прав для этого действия.
видимо надо какие то настройки прописать но где и что именно не знаю, подскажите

вроде прописаны права политики для анонима и для админа но не тот ни другой не могут жмякать рейтинг :(
Евгений
07 марта 2021, 20:51
modx.pro
594
0

Как сделать прозрачный фон у Webp фоток товара в минишопе?

Есть исходные png с прозрачным фоном. Заливаю их в минишоп последней версии, и генерируются png с белым или любым цветом какой укажешь в bg. А как сохранить прозрачность?
Семен Морозов
07 марта 2021, 20:31
modx.pro
1
2 075
0

[РЕШЕНО] minishop2 фото товаров листается по два раза

Доброго времени суток!

Ссылка на страницу: mebelsom.ru/katalog/mebel-dlya-personala/serii-mebeli/public-comfort

Возникла странная проблема. В фотогалерее каждое фото листается дважды подряд. Это происходит и при автоскролле (сейчас его отключил) и при листании стрелками и при нажатии на миниатюры. При этом листается не через две фотки, а именно выбирается нужная фотка, и следом она же повторно листается. Не знаю как объяснить, на сайте можно увидеть наглядно. Грубо говоря анимация листания срабатывает два раза.

Вот вызов галереи товара:
[[!msGallery?tpl=`product-gallery`]]

Содержимое product-gallery:
<div id="msGallery">
    {if $files?}
        <div class="fotorama"
            data-nav="thumbs"
            data-width="100%"
            data-navwidth="100%"
            data-thumbheight="105"
            data-thumbwidth="200"
            data-thumbmargin="20"
            data-allowfullscreen="true"
            data-swipe="true"
            data-fit="cover"
            data-autoplay="false">
            {foreach $files as $file}
                <a href="{$file['url']}" target="_blank">
                    <img src="{$file['small']}" alt="{$file['description']}" title="{$file['name']}">
                </a>
            {/foreach}
        </div>
    {else}
        <img src="{('assets_url' | option) ~ 'components/minishop2/img/web/ms2_medium.png'}"
            srcset="{('assets_url' | option) ~ 'components/minishop2/img/web/ms2_medium@2x.png'} 2x"
            alt="" title=""/>
    {/if}
</div>
Андрей
06 марта 2021, 18:48
modx.pro
1
1 018
0