Константин

Константин

С нами с 24 апреля 2017; Место в рейтинге пользователей: #1041
Константин
09 сентября 2023, 20:15
0
Спасибо, отлично работает на странице товара, но в каталоге в листинге отказывается. Вывожу так:
{set $allpara = $_modx->getChildIds(31,4,['template' => 3])}
{set $allpara2 = $_modx->getChildIds(29,4,['template' => 3])}
{if (($_modx->resource.parent in list $allpara) || ($_modx->resource.parent in list $allpara2))}

{else}
  <div class="reward"><span>Артикул:</span> <span class="item">{$article}</span></div>
{/if}
Пробовал из условия убрать id шаблона, но все равно выводит артикул.
Константин
08 сентября 2023, 15:41
0
Я правильно составил конструкцию? Или чего то не понял, так ка не заработало
{set $allpara = $_modx->getChildIds(31,4,['template' => 3])}
{set $allpara2 = $_modx->getChildIds(29,4,['template' => 3])}

{if !(($_modx->resource.parent in list $allpara) || ($_modx->resource.parent in list $allpara2))}


  <div class="reward"><span>Артикул:</span> <span class="item">{$article}</span></div>
{/if}
Константин
07 сентября 2023, 09:44
0
Да, супер, спасибо, так все работает, а как в этом случае получить все дочерние идентификаторы для ресурса 31 и 29?
Константин
06 сентября 2023, 09:41
0
Пробую таким способом, артикул все таки выводится. На скриншоте проще показать: disk.yandex.ru/i/DiY5_EjPHyfklA
ID=31 — это самая верхняя категория которая в себе содержит десятки подкатегорий разной вложенности, и у товаров всех этих категорий, которые постоянно добавляются и убавляются, не нужно выводить артикул. Что бы не лезть постоянно в шаблон что бы прописать ID новой добавленной категории.
Константин
05 сентября 2023, 18:06
0
Ресурсы с id 29 и 31 — это категории товаров. На самих страницах товаров этих категорий нужно запретить вывод артикула и дочерних подкатегорий каталогов с id 29 и 31
Константин
05 сентября 2023, 10:57
0
Да, именно на странице товара и не получается отключить вывод артикула.
Ни так:
{if $parent != 31 && $id != 31 && $parent != 29 && $id != 29}
Ни так:
{if $_modx->resource.parent != 31 && $_modx->resource.id != 31 && $_modx->resource.parent != 29 && $_modx->resource.id != 29}
Константин
04 сентября 2023, 16:52
0
Товар выводим шаблоном
<!DOCTYPE html>
<html lang="ru">
  <head>
    {$_modx->getChunk('meta')}
  </head>
  <body class="common-home res layout-4">
    <div id="wrapper" class="wrapper-fluid banners-effect-5">
      <!-- Header Container  -->
      <header id="header" class=" typeheader-4">
        {$_modx->getChunk('header')}
      </header>
      <!-- //Header Container  -->
      <!-- Main Container  -->
      <div class="main-container container">
        {$_modx->runSnippet('!pdoCrumbs', [
        'showHome' => '0',
        'exclude' => '24',
        'tplWrapper' => '@INLINE 
        <ul class="breadcrumb" itemscope="" itemtype="http://schema.org/BreadcrumbList">{$output}</ul>
        ',
        'tplHome' => '@INLINE 
        <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem">
          <a itemprop="item" title="{ $menutitle }" href="{$link}">
            <i class="fa fa-home"></i> <span itemprop="name" class="crumb-item">{$menutitle}</span>
            <meta itemprop="position" content="{ $idx }">
          </a>
        </li>
        ',
        'tplCurrent' => '@INLINE 
        <li class="mr-2" itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem">
          <span itemprop="item" class="current">
            <span itemprop="name">{$menutitle}</span>
            <meta itemprop="position" content="{ $idx }">
          </span>
        </li>
        ',
        'tpl' => '@INLINE 
        <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem">
          <a itemprop="item" title="{ $menutitle }" href="{$link}">
            <span itemprop="name" class="crumb-item">{$menutitle}</span>
            <meta itemprop="position" content="{ $idx }">
          </a>
        </li>
        ',
        ])}
        
          {$_modx->runSnippet('!addLooked', [
          'templates' => '3',
          'limit' => '15',
          ])}
          <div class="row">
              
          <div id="content" class="col-md-9 col-sm-8">
            <div class="product-view row">
              <div class="left-content-product">
                <div class="content-product-left class-honizol col-md-5 col-sm-12 col-xs-12">
                  {$_modx->runSnippet('!msGallery', [
                  'tpl' => 'msGalleryProductTpl',
                  ])}
                  {if $_modx->resource.new?}
                  <span class="abel-product label-new">{'ms2_frontend_new' | lexicon}</span>
                  {/if}
                  {if $_modx->resource.popular?}
                  <span class="label-product label-sale">{'ms2_frontend_popular' | lexicon}</span>
                  {/if}
                  {if $_modx->resource.favorite?}
                  <span class="label-product label-new">{'ms2_frontend_favorite' | lexicon}</span>
                  {/if}
                </div>
                <div class="content-product-right col-md-7 col-sm-12 col-xs-12"  itemtype="http://schema.org/AggregateOffer" itemprop="offers" itemscope>
                  <meta itemprop="category" content="{$_modx->resource.parent | resource: "pagetitle"}">
                  <meta itemprop="offerCount" content="1">
                  <meta itemprop="price" content="{$price | replace:" ":""}">
                  <meta itemprop="lowPrice" content="{$price | replace:" ":""}">
                  <meta itemprop="priceCurrency" content="RUR">
                  <div class="title-product">
                    <h1>{$_modx->resource.introtext ?: $_modx->resource.pagetitle}</h1>
                  </div>
                  <!-- Review ---->
                  <form class="form-horizontal ms2_form" method="post">
                    <input type="hidden" name="id" value="[[*id]]"/>
                    <div class="product-label" itemprop="offerDetails" itemscope="" itemtype="http://data-vocabulary.org/Offer">
                      <div class="product_page_price price" itemprop="offers" itemscope="" itemtype="http://schema.org/Offer">
                        <span class="price-new product-price" itemprop="price">{$price} {'ms2_frontend_currency' | lexicon}</span>
                        {if $old_price != 0}
                        <span class="old_price price-old">[[+old_price]] [[%ms2_frontend_currency]]</span>
                        {/if}
                        <meta itemprop="price" content="[[+price]]">
                        <meta itemprop="priceCurrency" content="RUB">
                        <meta itemprop="priceValidUntil" content="[[!+nowdate:default=`now`:strtotime:date=`%Y-%m-%d`]]">
                        <link itemprop="availability" href="http://schema.org/InStock">
                      </div>
                      {if $_modx->resource.available == 1}
                      <div class="stock"><span class="status-stock">В наличии</span></div>
                      {/if}
                      {if $_modx->resource.available == 2}
                      <div class="stock"><span class="status-stock">Нет в наличии</span></div>
                      {/if}
                      {if $_modx->resource.available == 3}
                      <div class="stock"><span class="status-stock">Под заказ</span></div>
                      {/if}
                    </div>
                    <div class="product-box-desc">
                      <div class="inner-box-desc">
                        [[getMarksAndModels]]
  
                        [[*longtitle:notempty=`
                        <div class="price-tax"><span>Примечание:</span> <span class="article">[[*longtitle]]</span></div>
                        `:else=``]]

{if $parent != 31 && $id != 31 && $parent != 29 && $id != 29}
  <div class="reward"><span>Артикул:</span> <span class="item">[[+article]]</span></div>
{/if}

                        [[-*article:gt=`0`:then=`<span>Артикул:</span> <span class="item">[[*article]]</span>`:else=``]]
                        [[msProductOptions?tpl=`msProductOptionsTpl` &onlyOptions=`orign_n`]]
                        [[msProductOptions?tpl=`msProductOptionsTpl` &onlyOptions=`dop_n`]]
                        [[+vendor.name:gt=`0`:then=`
                        <div class="price-tax"><span>Производитель:</span> <span class="article">[[+vendor.name]]</span></div>
                        `:else=``]]
                        [[+vendor.country:gt=`0`:then=`
                        <div class="price-tax"><span>Страна производителя:</span> <span class="article">[[+vendor.country]]</span></div>
                        `:else=``]]
                        <div class="vendor-status">
                          <div class="price-tax">
                            <span>Статус производителя:</span>
                            <span class="article">
                            {if $_pls['vendor.description']?}{$_pls['vendor.description']}{else}Неоригинал{/if}
                            </span>
                          </div>
                          {if $_pls['vendor.logo']?}
                          <div class="vendor-logo">
                            <img src="{$_pls['vendor.logo']}" title="{$_pls['vendor.description']}" class="img-responsive" data-toggle="tooltip"/>
                          </div>
                          {else}
                          <div class="vendor-logo">
                            <img src="assets/images/vendors/no orign_2.png" title="Неоригинал" class="img-responsive" data-toggle="tooltip"/>
                          </div>
                          {/if}
                        </div>
                        [[msProductOptions?tpl=`msProductOptionsTpl` &onlyOptions=`synonym`]]
                      </div>
                    </div>
                    <div id="product">
                      <div class="box-info-product">
                        <button type="submit" class="btn btn-mega btn-lg" name="ms2_action" value="cart/add">
                        {'ms2_frontend_add_to_cart' | lexicon}
                        </button>
                        <div class="input-group">
                          <input type="number" name="count" id="product_price" class="form-control col-md-6" value="1"/>
                          <div class="input-group-append">
                            <span class="input-group-text">{'ms2_frontend_count_unit' | lexicon}</span>
                          </div>
                        </div>
                        [[!msOneClick?
                        &tplBtn=`msoneclickBtnTpl`
                        &tplForm=`msOneClickFormTpl`
                        ]]
                      </div>
                    </div>
                </div>
                <!-- end box info product -->
                </form>
              </div>
            </div>
          </div>
          
          <div class="producttab ">
            <div class="tabsslider horizontal-tabs  col-xs-12">
              <ul class="nav nav-tabs">
                <li class="active"><a data-toggle="tab" href="#tab-1">Описание</a></li>
                <li class="item_nonactive"><a data-toggle="tab" href="#tab-2">Доставка и оплата</a></li>
                <li class="item_nonactive"><a data-toggle="tab" href="#tab-review">Задать вопрос</a></li>
              </ul>
              <div class="tab-content col-xs-12">
                <div id="tab-1" class="tab-pane fade active in">
                  [[*content:default=`
                  <h2>[[*description]] в наличии в магазине Рио</h2>
                  `]]
                </div>
                <div id="tab-2" class="tab-pane fade">
                  [[#41.content]]
                </div>
                <div id="tab-review" class="tab-pane fade">
                  <h3>Запрос по VIN, задать вопрос</h3>
                  [[#815.content]]
                  [[!AjaxForm? 
                  &form=`questionFormTpl` 
                  &snippet=`FormIt` 
                  &hooks=`validate,FormItSaveForm,email`
                  &formName=`Сообщение с сайта`
                  &emailSubject=`Сообщение с сайта`
                  &emailTo=`ekbsanteh@mail.ru`
                  &emailFrom=`no-reply@ekb-santeh.ru`
                  &emailTpl=`tpl.email`
                  &validate=`name:minLength=^2^`
                  &fieldNames=`name==Имя,phone==Телефон,pageurl==Страница отправки,vin==VIN,email==Email,city==Город,marka==Марка,model==Модель,year==Год выпуска,upload==Файл`
                  &validationErrorMessage=`В форме содержатся ошибки!`
                  &successMessage=`Сообщение успешно отправлено`
                  ]]
                </div>
              </div>
            </div>
          </div>
          
          [[!msProducts?
          &tpl=`recentlyViewedTpl`
          &includeThumbs=`medium`
          &parents=`0`
          &link=`1`
          &master=`[[*id]]`
          &wrapIfEmpty=`0`
          &tplWrapper=`@INLINE
          <div class="related titleLine products-list grid module">
            <h3 class="">Аналоги:</h3>
            <div class="releate-products yt-content-slider products-list" data-rtl="no" data-loop="yes" data-autoplay="no" data-autoheight="no" data-autowidth="no" data-delay="4" data-speed="0.6" data-margin="30" data-items_column00="4" data-items_column0="4" data-items_column1="3" data-items_column2="2" data-items_column3="2" data-items_column4="1" data-arrows="yes" data-pagination="no" data-lazyload="yes" data-hoverpause="yes">
              [[+output]]
            </div>
          </div>
          `]]
        
        <aside class="col-sm-4 col-md-3 content-aside" id="column-left">
          [[!looked?
          &limit=`3`
          &tpl=`lookedViewedTpl`
          &tplOuter=`lookedOuterMyTpl`
          &includeThumbs=`medium`
          ]]
          <!--<div class="module banner-left hidden-xs ">
            <div class="banner-sidebar banners">
              <div>
                <a title="Banner Image" href="#"> 
                <img src="assets/images/slider/banner-sidebar.jpg" alt="Banner Image"> 
                </a>
              </div>
            </div>
          </div>-->
          
        </aside>
        
        </div>
      </div>
    </div>
    <!--Middle Part End-->
    <!-- //Main Container -->
    {$_modx->getChunk('footer')}
    <!-- //end Footer Container -->
    </div>
    <!-- End Color Scheme
      ============================================ -->
    {$_modx->getChunk('scripts')}
  </body>
</html>
Константин
04 сентября 2023, 16:32
0
В карточке пробую так:
{if $parent != 31 && $id != 31 && $parent != 29 && $id != 29}
  <div class="reward"><span>Артикул:</span> <span class="item">[[+article]]</span></div>
{/if}
И так:
{if $_modx->resource.parent != 31 && $_modx->resource.id != 31 && $_modx->resource.parent != 29 && $_modx->resource.id != 29}
  <div class="reward"><span>Артикул:</span> <span class="item">{$article}</span></div>
{/if}
Все равно выводит артикул
Константин
04 сентября 2023, 16:07
0
А как в карточке товара реализовать данное условие?
Константин
04 сентября 2023, 15:22
0
Спасибо большое, так работает, а как в карточке товара реализовать данное условие? Скопировал — не срабатывает
Константин
04 сентября 2023, 14:54
0
Так выводится артикул везде и в родителе 31 и в подкаталогах
Константин
20 июля 2023, 09:32
0
Спасибо, решили вопрос сменой поставщика.
Константин
20 июля 2023, 09:08
0
На modstore.pro пишут:

«По работе бесплатных дополнений вы можете задать вопрос на modx.pro. Здесь мы можем лишь помочь разобраться с использованием сервиса modstore.»
Константин
20 июля 2023, 09:06
0
1. Поставщик привязан, ключ создан: disk.yandex.ru/i/nEwdY8W5uNpowA и disk.yandex.ru/i/k5bgDoy72X8DMA
2. Версия 7.4 disk.yandex.ru/i/dB-lHbSw1zwTAg
Константин
19 апреля 2023, 12:34
0
Спасибо, получилось
&sortOptionValues=`powerr:SORT_ASC:SORT_NUMERIC`
Константин
15 апреля 2023, 21:36
0
А как в него смотреть? Как это сделать? То есть массив фотографий? Не совсем понятно
Константин
10 февраля 2023, 14:38
0
Спасибо! Получилось!!!
Константин
10 февраля 2023, 12:12
0
Пробовал так. Не работает: скриншот 1 disk.yandex.ru/i/5ZKtbaX5XPiSAQ скриншот 2 disk.yandex.ru/i/x2C8ZMmwiAoTkQ
Константин
07 февраля 2023, 15:00
0
Есть какой либо пример? Я новичок в этом, не умею пока на таком языке глаголить))) В условие завернуть — это примерно понятно что, а как время записывать и как это делать, 0)
Константин
07 февраля 2023, 07:58
0
Вот сниппет, судя по всему, в нем происходит подсчет:

$page =  $modx->getObject('modResource', $modx->resource->get('id'));
$view = 0;
// Check the option to record in TV
if($saveTv == 'true') {
    // get the required TV object by name (or id)
    $tv = $modx->getObject('modTemplateVar',array('name'=>'HitsPage'));
    if($tv) {
        $tvs = $modx->getObject('modTemplateVarResource',array('tmplvarid'=>$tv->id, 'contentid'=>$page->get('id')));
        if($tvs) {
            $viewTv = $tvs->get('value');
            $tvs->set('value',intval($viewTv) + 1);
            if($tvs->save()) $view = $viewTv;
        } else {
            $tvn = $modx->newObject('modTemplateVarResource');
            $tvn->set('tmplvarid',$tv->id);
            $tvn->set('contentid',$page->get('id'));
            $tvn->set('value',1);
            if($tvn->save()) $view = 1;
        }       
    } 
} else {
    $view = $page->getProperty('hitts','hitspage',$view);
}
$page->setProperty('hitts',intval($view) + 1,'hitspage');
$page->save();
return $view;
А как его модифицировать, что бы уникальных только считал?