Всего 125 656 комментариев

Александр Мельник
11 февраля 2021, 13:49
0
дело не только в равно.
во первых символ равно не нужно ставить, условие в json формате будет такое {«text»:«hello»}
Но у вас и без "=" мешанина в коде жуткая.
У вас 89 это родитель ресурсов, в которых хранятся имена авторов.
Но этот же родитель 89 у вас участвует в выборке, которая должна выводить новости.
Что-то странное у вас твориться и я по прежнему считаю, что пока вы детально со скринами не расскажите, что вы там напридумывали, никто вам не сможет помочь.
Виноградов Тимур
11 февраля 2021, 13:47
0
Моя почта:
mechmedia@yandex.ru
Телеграм:
@Timurkin

Если кто-то готов помочь за вознаграждение.
Виноградов Тимур
11 февраля 2021, 13:44
0
В шаблоне статьи автор выводится вот так:
<div class="row">
            [[#[[*autor-res]].autor-image:!empty=`
            	<div class="col-md-2 col-sm-2 col-xs-4">
            		<div class="autor-article">
            		<a href="[[~[[*autor-res]]]]"><img src="[[#[[*autor-res]].autor-image]]" class="img-circle"></a>
            		</div>
            	</div>
            `]]
            <div class="col-md-5 col-sm-5 col-xs-8">
            	<span itemprop="author" itemscope itemtype="http://schema.org/Person" class="author-title publishedby">
            		<a href="[[~[[*autor-res]]]]"><span itemprop="name">[[#[[*autor-res]].pagetitle]]</span></a>
            	</span>
            	[[#[[*autor-res]].autor-subject:!empty=`
            		<p>[[#[[*autor-res]].autor-subject]]</p>
            	`]]
            </div>
            <div class="col-md-5 col-sm-5 col-xs-12">
                <div class="info-article">
                   <div class="category">
                       <span itemprop="datePublished" class="publishedon">[[*publishedon:strtotime:date=`%d-%m-%Y`]]</span>
                    [[getCategoryLink]]
                  </div>
                </div>
            </div>    
            </div>
Виноградов Тимур
11 февраля 2021, 13:43
0
Пробовал ставить "=" по документации с where, не работает
Виноградов Тимур
11 февраля 2021, 13:42
0
Да, дело в том что автор как отдельное TV-поле используется, не как родная сущность users
Виноградов Тимур
11 февраля 2021, 13:41
0
&parents=`4,89`
4 — это родитель ресурсов автора — страницы автора
89 — это родитель(ресурс блог) — страницы блога, т.е. да, список статей
Nik
Nik
11 февраля 2021, 10:54
0
«Вывести статьи автора на странице автора» может быть так:
[[!pdoResources?                    
&parents=`8`                       
&depth=`10`                       
&limit=`6`                       
&includeTVs=`authors`                      
&tpl=`@INLINE  
<h2><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h2>
<ul>
<li>Автор(ы): [[+tv.authors]]</li>  
</ul>`                      
&where=`{"createdby":[[!+modx.user.id]]}`                  
]]
Выводит список статей автора Сергей Н. на его странице, только значения свои подставьте. Или что-то другое имелось ввиду?
Наумов Алексей
11 февраля 2021, 10:54
0
ну вот, отлично!
Это правильно хранить свой кеш в отдельной папочке и управлять им как нужно!
Аркадий
11 февраля 2021, 10:47
0
Наумов Алексей, спасибо больше, у меня отдельного класса нет, но ответ помог реализовать то, что хотелось, сделал так:
$cacheName = "asn1cache-" . basename($file) . "-" . filesize($file) . "-" . date('d.m.Y-H.i.s', filemtime($file));
$cachePartition = "asn1";
$output = $modx->cacheManager->get($cacheName,array(xPDO::OPT_CACHE_KEY=>$cachePartition));
if (empty($output))
{
....

    // Устанавливаем бессрочный кэш
    $modx->cacheManager->set($cacheName, $output, 0,array(xPDO::OPT_CACHE_KEY=>$cachePartition));
}
return $output;
И соответственно плагин, чтобы кэш очищался:
<?php
switch ($modx->event->name) {
    case 'OnSiteRefresh':
        if ($modx->cacheManager->refresh(array('asn1' => array()))) {
            $modx->log(modX::LOG_LEVEL_INFO, $modx->lexicon('refresh_default') . ': ASN1');
        }
        break;
}
Кэш теперь сохраняется в папке /core/asn1 и очищается только при очистке всего кэша
Александр Мельник
10 февраля 2021, 21:43
0
У вас видимо есть страница автора
и вы хотите чтобы перейдя на нее, были видны и 6 новостей, написанных этим автором.
Но совершенно не ясно, что в вашей логике — имя автора?
Плюс Вы же понимаете, что у вас [[*autor-res]] — это число? Это идентификатор.
Поэтому выборка LIKE применительно к числу, будет давать непредсказуемые результаты.
Александр Мельник
10 февраля 2021, 21:34
0
Что-то такое странное у вас написано, хаос какой-то.
Если вы четко распишите как у вас все организовано и что хотите добиться, вероятность что вам помогут сильно увеличится.

Вы говорите -имя автора, но судя по этому
@EVAL return $modx->runSnippet('pdoResources',array('parents'=>89,'depth'=>0,'limit'=>0,'sortby'=>'menuindex','sortdir'=>'ASC','tpl'=>'@INLINE [[+pagetitle]]==[[+id]]||','tplLast'=>'@INLINE [[+pagetitle]]==[[+id]]'));
у вас имя автора — это просто названия каких-то ресурсов.
А для большинства людей, это имена пользователей (users). В modx есть сущность user и именно он подразумевается как автор.
Не понятно, как и написал Артур, зачем вы используете LIKE
Не понятно где именно вы вызываете сниппет pdoResources, а следовательно непонятно есть ли там ТВ [[*autor-res]] которое вы так лихо поместили в where.
Артур Шевченко
10 февраля 2021, 20:25
0
В возможных параметрах у вас заголовок и id страницы статьи? 'parents'=>89 — это что? список статей? список авторов? И вообще почему LIKE? Вам же нужно точное совпадение, должно быть =
Баха Волков
10 февраля 2021, 15:01
0
2. Хочу получить возможность удалять свои заметки и вопросы. Сейчас их можно только снять с публикации
Эх авторы-авторы, Вася давно уже добавил возможность удалять заметки
Андрей
10 февраля 2021, 14:28
0
Попробуй написать @tolanych, он выпускал последние версии тикетов.
Pavel
10 февраля 2021, 14:05
0
вопрос решился после комментирования строки 384 в файле
core/components/tickets/model/tickets/tickets.class.php

а именно
$ms2Gallery->syncFiles('tickets', $id, true);
Два раза синхронизация делалась. один раз в ms2gallery и еще раз в тикетах

@Василий Наумкин Василий, с этим ничего не сделать? Я бы уже воспользовался встроенным загрузчиком файлов, но мне нужно ограничить кол-во файлов на загрузку и на разные категории разный лимит
Елизавета
10 февраля 2021, 14:05
0
Спасибо за помощь.

Проблема была в подключенной библиотеке jQuery.
Роман
10 февраля 2021, 13:38
0
А можно, чуть более подробно? Сможете реализовать? Ссылка: modx.pro/work/21477
Роман
10 февраля 2021, 13:09
0
Примерно, как-то так нужно делать, но вообще я бы вам рекомендовал добавить кастомное поле в товары.
[[!mFilter2?
    &parents=`0`
    &element=`msProducts`
    &leftJoin=`{
        "Test1": {
            "class": "msProductOption",
            "on": "Test1.key = 'test1' and Test1.product_id = msProduct.id"
        }
    }`
    &sortAliases=`{"test1":"Test1"}`
    &aliases=`test1|value==test1`
    &sort=`test1:desc`
]]
Егор
10 февраля 2021, 12:54
0
Я так понял, что пример в документации распространяется на поля, которые уже «под капотом» есть, такие как price,color, publishedon и т.д. А на опции товара, которые создаются дополнительно, нужно что-то еще кастануть )
Приведенный пример:
msoption|availability:asc,ms|price:asc
Пробовал, но получаю ошибку в логах:
pdotools/pdofetch.class.php : 172) [pdoTools] Error 42S22: Unknown column 'availability' in 'order clause'