Дарья Сизова

Дарья Сизова

Был в сети 14 января 2022, 17:46
Заказы не принимаю
Володя, Василий, здравствуйте! Я попробовала использовать ваш код (http://modx.pro/development/39/#comment-12668), но не все в нем понимаю и потому не знаю, как правильно применить.
У меня получается сделать ajax-запрос (кликаю по кнопке — контент подгружается). Но в случае с пагинацией не все работает, как надо: при клике по любой странице кроме первой не контент подгружается, а открываются 2-я, 3-я и т.д. страницы подгружаемого ресурса (который, естественно, без шаблона, без стилей).
Использую для вывода пагинации pdoPage Василия.

Код сниппета [[Ajax]]
<?php
if ($_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}
$action = $_POST['action'];
if (empty($action)) {return;}
$res = '';

switch ($action) {
    case 'field33':     
        $param = array(
            'element' => 'msProducts',
            'offset' => (int)$_POST['offset'],
            'limit' => (int)$_POST['limit'],
            'depth' => $depth,
            'parents' => (int)$_POST['parent'],
            'includeContent'=> $includeContent,
            'tpl'=> $tpl,
            'outputSeparator'=> $outputSeparator,
            'showUnpublished'=> $showUnpublished,
            'showDeleted'=> $showDeleted,
            'showHidden'=> $showHidden
        );
        $documents = $modx->runSnippet('pdoPage',$param);
        return $documents;
}

if (!empty($res)) {
  die($res);
}

Код в подгружаемом ресурсе (пустой шаблон):
[[!pdoPage?
    &element=`msProducts`
	&tpl=`tpl.LimoPreview`
	&limit=`5`
	&sortby=`publishedon`
	&parents=`137`
]]
[[!+page.nav]]

Код страницы, куда подгружается контент:
[[!Ajax]]
<script type="text/javascript">
$(document).ready(function() {
    /*$(document).on('click', 'a.load137', function(e) {
    	e.preventDefault();
    	jQuery(function($){
            $('#loadcontent').load('[[~319]]'), {
                action: 'field33',
                parents: '3',
                limit: '10',
            };
        });
    });*/
    var page = 1;
    $(document).on('click', 'a.load137', function(e) {
    	e.preventDefault();
    	$.ajax({
            url: "[[~319]]",
            data: {"page": page},
            success: function(data){
                $('#loadcontent').append(data);
                page = page + 5;
            }
        });
    });
});
</script>

<a href="137" class="btn btn-default load137"><i class="icon icon-th"></i> Все</a>

<div id="loadcontent"></div>
Пробовала, как видите, два варианта вызова ajax. В примере Володи не поняла, какое действие оказывают параметры {action: 'field33', parents: '3', limit: '10'}, т.к. с ними и без них ничего не изменилось у меня.
Мне в итоге нужно, чтобы или постраничная пагинация работала, или контент подгружался по мере прокрутки вниз или по клику на кнопку. Помогите, пожалуйста, разобраться! уже 3-й день голову ломаю ((
Хм… Я вообще создала копии чанков, отвечающих за комментарии, чтобы изменить на некоторых страницах отображение (вместо «комментариев» у меня слово «отзывы»). Ну и в сниппете, соответственно, указано использовать эти мои tpl. Видимо я что-то не то сделала… И действительно, со стандартными чанками отображается сообщение о премодерации. Думаю, если внимательно посмотрю, сама найду ответ.)
Поняла. Тогда предложу заказчику выбрать самому. А срокам (по твоему опыту) сколько в среднем времени занимает установка с нуля до полной работоспособности сервиса (надо его зарегистрировать, я так понимаю)? Мне просто нужно понять, какую стоимость назначить за работу по установке, а это зависит от затраченного времени.
Собираюсь приобрести одно из указанных расширений. Не подскажешь, какое из них позволит производить оплату с использованием 1) Яндекс.Денег, 2) банковских карт Viza, Mastecard и т.д., 3) Webmoney? Я правильно думаю, что для этого лучше всего подойдет Robokassa?
Если указать глубину, то ресурсы выведутся, конечно, но без соблюдения иерархии. А если нужно, например, сделать 4 вкладки (=4 дочерних ресурса) и в каждой вкладке допустим «аккордеон» из дочерних ресурсов, относящихся только к этой вкладке?
Да, это меня напрягает, хотя скорость хостинга по сравнению с тем, что была на прежнем, очень радует (в 4-8 раз быстрее при одинаковой цене и условиях). В этом смысле предпочту раз в 2-3 месяца (надеюсь, и еще реже!) расстраиваться от плохой тех.поддержки, чем каждый день — от плохой скорости загрузки сайта.
Василий, у меня такой вопрос возник… Сейчас я делаю сайт на временном домене, потом планирую его перенести на другой домен. Ваши расширения (например, miniShop2) я скачивала через Simple Dream, а чтобы установить в качестве поставщика услуг Simple Dream, я создавала для существующего домена ключ репозитория. Вопрос такой: если я перенесу сайт на другой домен (и, кстати, на другой хостинг), что произойдет с расширениями? В ключе-то указан старый домен… Или ключ не привязывается к доменному имени?