Nikita

Nikita

С нами с 18 февраля 2013; Место в рейтинге пользователей: #388
Максим Кузнецов
10 апреля 2017, 08:29
2
+3
Не нужно 2 раза вызывать один и тот же сниппет:

{set $result = $_modx->runSnippet('!pdoResources', [
	'parents' => id родителя
])}

{if $result | length > 0}
	{$result}
{else}
	//если вывода нет
{/if}
Василий Stepanov
02 апреля 2017, 04:18
2
+1
Сделал вот так. Работает.
//собираем заголовки из категории ресурсов
$docfind = $modx->getCollection('modResource',array('parent' => '19'));
foreach ($docfind as $k => $res) {
    $title_m = $res->get('pagetitle');
    $titles[] = $title_m;
}

$path = 'http://www.amur.info/index.rss';
$ctx = stream_context_create(array('http' => array('timeout' => 6)));
$file = file_get_contents($path, 0, $ctx);

if ($file) {
    $rss = simplexml_load_string($file);
    $i = 0;
    foreach ($rss->channel->item as $item){
        $namespaces = $item->getNameSpaces(true);
        $yandex = $item->children($namespaces['yandex']); 
        
        $full_text = (string)$yandex->{'full-text'};       //полный текст статьи
        $title = $item->title;                             //заголовок статьи
        $pubdate = $item->pubDate;                         //дата публикации
        $link = $item->link;                               //ссылка на новость
        
	//создаем ресурсы в MODX, если ресурсов с такими заголовками еще нет
        if (in_array($title, $titles) == false) {
            $response = $modx->runProcessor('resource/create', array(
                'pagetitle' => $title,
                'longtitle' => $pubdate,
                'description' => $link,
                'introtext' => '',
                'content' => $full,
                'template' => $template,
            	'hidemenu' => 1,
            	'published' => 1,
            	'parent' => '19'
            ));
        }
        
        $i++;
        if ($i == 5) break;
    }
}
Aleksandr Suslov
15 февраля 2017, 14:51
1
0
Спасибо большое. Ссылка помогла.
Если вдруг найдется такой же неуч, как я вот правильный код вывода:

$user = $modx->getObject('modUser', 3);
$profile = $user->getOne('Profile');
$extended = $profile->get('extended');
$comn = $extended['company_name'];
print($comn);
ck
ck
31 января 2017, 14:27
1
0
Сам себе отвечу: в текущей версии msProductOptions есть параметр &onlyOptions. Его и нужно использовать.
charset
21 декабря 2016, 22:29
2
+1
уже не нужно. Нашел в коде, если кому интересно:

Телефон покупателя: {$address.phone}
Email покупателя: {$user.email}
Способ доставки: {$delivery.name}
Тип оплаты: {$payment.name}
Комментарий к заказу: {$address.comment}
but1head
08 ноября 2016, 20:58
2
0
<?php
if($modx->event->name != 'msOnGetProductPrice') return;

if($modx->user  && $modx->user->isMember('Wholesaler')){
    $values = & $modx->event->returnedValues;
    $resource = $modx->getObject('msProduct', $product->id);
    $wholesale_price = $resource->getTVValue('price_opt');
    if($wholesale_price){
        $values['old_price'] = $values['price'];
        $values['price'] = $wholesale_price;
    }
}
Элементарная оптовая цена для юзеров в группе «оптовик», сделаная через tv, 3 минуты работы. Очень сложно?
Важное качество программиста «гуглить», а не просить сделать других его работу. Не умеете — не беритесь.
Аля
07 октября 2016, 12:31
1
0
Получила в итоге свой id шник
$resurses = $modx->runSnippet('pdoResources',array(
   'parents' => 37,
   'tvFilters' => 'status==1,code=='."$code",
   'tpl' => '@INLINE [[+id]]'

));
echo $resurses;
Виталий Валерьевич
08 июля 2016, 13:02
2
+1
[[!pdoPage?
	&element=`pdoResources`
	&loadModels=`ms2gallery`
	&class=`msResourceFile`
	&tpl=`@INLINE <a href="[[+url]]" target="_blank"><img src="[[+120x90]]" /></a>`
	&where=`{"parent": СЮДА ID РОДИТЕЛЯ,"active":1}`
	&limit=`10`
	&sortby=`id`
	&sortdir=`ASC`
	&leftJoin=`{
		"120x90":{"class":"msResourceFile","alias":"120x90", "on":"120x90.parent=msResourceFile.id AND 120x90.path LIKE '%/120x90/'"}
	}`
	&select=`{
		"msResourceFile":"*",
		"120x90":"120x90.url as 120x90"
	}`
]]
[[!+page.nav]]

Заменить «СЮДА ID РОДИТЕЛЯ» на реальный ID, подставить свои значения по размерам изображений.

Да, это пример взятый из документации с pdoPage (постраничной навигацией), можно вывести просто через pdoResources
Сергей Фещуков
13 марта 2016, 12:24
2
0
Обработчик события успешного добавления товара в корзину:
miniShop2.Callbacks.Cart.add.response.success = function(response) {
    //здесь ваш js-код
}
/* Но не забывайте, что есть событие изменения количества товара в корзине */
miniShop2.Callbacks.Cart.change.response.success = function(response) {
    //здесь ваш js-код
}