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

alex87.ru
03 февраля 2023, 13:16
0
И сейчас работает, только конкретно в ресурсе выводится не через +, а через *: [[*createdby:userinfo=`fullname`]]
Алексей
03 февраля 2023, 12:53
0
<div id="pdopage" class="items-product">
								<div class="row rows row-flex">
									{'!pdoPage' | snippet : [
										'element'=>'msProducts',
										'parents'=>$modx->resource->id,
										'depth'=>10,
										'tpl' =>'product.tpl',
										'limit' =>4,
										'maxLimit'=>200,
										'pageLimit'=>10,
										'ajax'=>1,
										'ajaxHistory'=>1,
										'ajaxMode'=>'button',
										'tplPage' =>'@INLINE <a href="{$href}" class="but">{$pageNo}</a>',
										'tplPageActive'=>'@INLINE <a href="{$href}" class="but active">{$pageNo}</a>',
										'tplPageWrapper'=>'@INLINE <div class="pagination">{$pages}</div>',
										'tplPagePrev' =>'@INLINE <li class="control"><a href="{$href}"><</a></li>',
										'tplPageNext'=>'@INLINE <li class="control"><a href="{$href}">></a></li>',
										'tplPageSkip'=>'@INLINE <span>...</span',
										'tplPagePrevEmpty'=>'@INLINE <li class="disabled"><span><<</span></li>',
										'tplPageNextEmpty'=>'@INLINE <li class="disabled"><span>>></span></li>',
										'sortby'=>'{"menuindex":"DESC"}',
										'where'=>'{"template":"6"}'
									]}
								</div>
								<div class="pages">
									[[!+page.nav]]
								</div>
							</div>
Алексей
03 февраля 2023, 12:52
0
Выставил параметр ajaxHistory=1, сейчас пагинации не присваивается класс display: none, то есть отображается и кнопка и постраничная разбивка, но попрежнему работает не корректно
Константин Ильин
03 февраля 2023, 12:50
0
Может все проще, заменить все вызовы
https://site.ru/assets/fonts/Linearicons-Free.woff2
на
/assets/fonts/Linearicons-Free.woff2
т.е. без явного указания домена и абсолютный путь.
Алексей
03 февраля 2023, 12:17
0
Я правильно понял, что надо поменять этот код в файле assets/components/pdotools/js/pdopage.js? Поменял, но ничего не произошло, пагинации присваивается класс display:none; не могу понять где. Но даже если присвоить через css display: block !important; то работает не корректно, если пользуешься кнопкой, а потом пагинацией, то перебрасывает по такой ссылке site.ru/?page=1&pageId=17&hash=caba36b7635ec52390b81ac85612a759468b600c на несуществующую страницу.
vit
vit
03 февраля 2023, 11:28
0
Если вы об этом
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>
То это не помогло и в ядре пробывал его вписать и в корне
Николай Савин
03 февраля 2023, 11:28
0
Добавляете в PHP код, к которому обращаетесь специальные заголовки через headers.
По идее вот такая запись разрешает доступ из другого домена
Access-Control-Allow-Origin: https://domain.xyz
В некоторых случаях нужно еще добавить правило в конфиг сервера.
Артур Шевченко
03 февраля 2023, 11:12
0
Этого я не знаю, но знают Яндекс и Гугл, спросите там.
Артур Шевченко
03 февраля 2023, 11:04
3
+3
Прям из коробки нельзя, надо немного поправить JS. Вот это
if (config.history) {
                if (typeof(jQuery().sticky) == 'undefined') {
                    $.getScript(config['assetsUrl'] + 'js/lib/jquery.sticky.min.js', function () {
                        pdoPage.initialize(config);
                    });
                    return;
                }
                pdoPage.stickyPagination(config);
            }
            else {
                $(config.pagination).hide();
            }
Заменить на это
$(document).on('click', config['link'], function (e) {
                e.preventDefault();
                var href = $(this).prop('href');
                var key = config['pageVarKey'];
                var match = href.match(new RegExp(key + '=(\\d+)'));
                var page = !match ? 1 : match[1];

                if (pdoPage.keys[key] != page) {
                    $(config['more']).find('button').attr('disabled', false);
                    if (config.history) {
                        if (page == 1) {
                            pdoPage.Hash.remove(key);
                        } else {
                            pdoPage.Hash.add(key, page);
                        }
                    }
                    $this.loadPage(href, config);
                }
            });

            if (config.history) {
                if (typeof(jQuery().sticky) == 'undefined') {
                    $.getScript(config['assetsUrl'] + 'js/lib/jquery.sticky.min.js', function () {
                        pdoPage.initialize(config);
                    });
                    return;
                }
                pdoPage.stickyPagination(config);

                $(window).on('popstate', function (e) {
                    if (e.originalEvent.state && e.originalEvent.state['pdoPage']) {
                        $this.loadPage(e.originalEvent.state['pdoPage'], config);
                    }
                });

                history.replaceState({pdoPage: window.location.href}, '');
            }
И в pdoPage параметру ajaxMode установить значение button.
Павел Романов
03 февраля 2023, 10:13
1
0
Так только цифры останутся:
foreach ($modx->getIterator('modUser') as $user) {
    $profile = $user->getOne('Profile');
    $phone = preg_replace("/[^,.0-9]/", '', $profile->get('phone'));
    $user->set('username', $phone);
    $user->save();
}
Артур Шевченко
03 февраля 2023, 09:49
+2
Может всё же стоило парой слов описать что же такое enKod? Ведь клиент не всегда формулирует задачу, используя название конкретного сервиса, а так хоть будет понятно для чего такая интеграция нужна.
Артур Шевченко
03 февраля 2023, 09:44
+1
Молодец, что поделился наработками. Было бы вообще прекрасно, если бы ты смог найти другое решение для исправления ошибок в консоли, править исходники не хорошо.
Василий
03 февраля 2023, 09:28
0
Тоже столкнулся с такой проблемой. В логах написано
Error 42000 executing statement:

INSERT command denied to user 'bla-bla-bla'@'localhost' for table 'modx_session'

И аналогичные записи в логах для других таблиц. Зашел на хостинг — оказывается, лимиты по базе превышены и заблокировали доступ до пополнения средств. Вдруг у кого тоже такой случай будет.
Николай Савин
03 февраля 2023, 09:05
+1
Будет еще лучше. Скоро появится возможность перерисовки корзины
Максим
03 февраля 2023, 07:31
+1
Дополнительные данные возвращаемые корзиной при ее изменении
Хорошая новость! На одном проекте как раз таких данных мне и НЕ хватало. Пришлось кастомный обработчик писать, чтобы эти данные включались.
vit
vit
02 февраля 2023, 23:24
0
А как включить поддомен в разрешенные?
Артур Шевченко
02 февраля 2023, 22:53
+1
У тебя этот шрифт подключен по абсолютному пути и когда ты с другого домена хочешь ео подключить браузер тебе говорит, что так делать нельзя. Либо надо все поддомены включить в разрешенные.
kudesia
02 февраля 2023, 20:28
0
Спасибо, попробую.

Скажите, Вы не знаете, как мне массово тоже из поля phone удалить скобки () и тире — между цифрами?
Fr3ddy
02 февраля 2023, 19:24
0
Приветствую, а как скрыть от менеджера определенный таб с тб

в обычном виде — таб с тб скрывается но отображается его перевод у менеджера.
допустим есть поля — сео заголовок, сео описание (они скрыты от менеджера, но есть в табе локализация)
Павел Романов
02 февраля 2023, 15:09
+1
Запустите в Console скрипт (естественно, сделав предварительно бэкап базы):

foreach ($modx->getIterator('modUser') as $user) {
	$profile = $user->getOne('Profile');
	$user->set('username', $profile->get('phone'));
	$user->save();
}