Skip to content

Instantly share code, notes, and snippets.

@OlegShchavelev
OlegShchavelev / prepareData
Created January 15, 2020 18:28
Распечатать все данные prepareSnippet
echo '<pre>';print_r($row);die;
@OlegShchavelev
OlegShchavelev / msVendorHeader
Created December 24, 2019 03:28
Работаем с SeoFilter2
<?php
$pdo = $modx->getService('pdoFetch');
$modx->addPackage('seofilter', $modx->getOption('core_path') . 'components/seofilter/model/');
$id = $modx->resource->id;
$seo_id = $modx->getPlaceholder('sf.seo_id');
$tpl = '@INLINE <div class="filter_item filter_logo_item">
<p><img src="{$logo}" alt="" /><span>{$name}</span></p>
</div>';
@OlegShchavelev
OlegShchavelev / index.tpl
Created December 2, 2019 15:15
where выборка TV по датам pdoResources
{set $today_date = '' | date : 'Y-m-d'}
{'!pdoResources' | snippet : [
'parents' => 40437,
'tplWrapper' => 'wrapper.article.sale',
'tpl' => 'row.article.sale',
'includeTVs' => 'img_article,date_start,date_finish',
'tvPrefix' => ''
'where' => [
'date_finish:>' => $today_date,
@OlegShchavelev
OlegShchavelev / index.tpl
Last active December 2, 2019 13:15
Выводим дату на Modx с русским названием месяца
{$publishedon | date : "d M Y" | rus_months}
@OlegShchavelev
OlegShchavelev / class_key
Last active November 28, 2019 09:20
Консольные скрипты для редактирования
$resources = $modx->getCollection('modResource',array('parent' => 22));
foreach ($resources as $res) {
$res->set('class_key', msProduct);
$res->save();
}
@OlegShchavelev
OlegShchavelev / category.php
Created November 16, 2019 11:29
Вывод мультикатегорий в MS2
$id = $modx->resource->id;
$tpl = '@INLINE <a href="[[~[[+id]]]]">[[+pagetitle]]</a>';
$pdo = $modx->getService('pdoFetch');
$options = array(
'innerJoin' => array(
'msCategory' => array('on' => 'msCategoryMember.category_id = msCategory.id')
),
@OlegShchavelev
OlegShchavelev / printPlaceholders
Created November 12, 2019 23:29
Распечатать плейсхолдеры
<?php
if (!$modx->user->isAuthenticated('mgr')) return;
$placeholders = $prefix ? array() : $modx->placeholders;
if ($prefix) {
foreach ($modx->placeholders as $key => $ph) {
if (strpos($key, $prefix) === 0) {
$placeholders[$key] = $ph;
}
@OlegShchavelev
OlegShchavelev / index.tpl
Created October 30, 2019 14:37
prepareData процент между price и old_price
{'!mFilter2' | snippet : [
'prepareSnippet' => 'prepareData'
]}
@OlegShchavelev
OlegShchavelev / translit.php
Created October 6, 2019 20:31
Модификатор трансолирации
<?php
$output = $input;
$output = strtr($output,
array(
'а' => 'a', 'б' => 'b', 'в' => 'v',
'г' => 'g', 'д' => 'd', 'е' => 'e',
'ё' => 'e', 'ж' => 'zh', 'з' => 'z',
'и' => 'i', 'й' => 'ij', 'к' => 'k',
'л' => 'l', 'м' => 'm', 'н' => 'n',
@OlegShchavelev
OlegShchavelev / cat_option.tpl
Last active May 1, 2025 12:07
Выводим сгруппированные характеристики товара msProductOptions
{foreach $cats as $cat}
<div class="section-option">
<h5 class="mb-3">{$cat.name}</h5>
<ul class="list-group list-group-flush mb-3">
{foreach $cat.items as $option}
<li class="list-group-item d-flex justify-content-between border-0 px-0 py-2">
<span>
{$option.caption}
</span>
<span>