Как в MODx Evolution использовать чанки в своих сниппетах — parseChunk()

Далее будет показан краткий демонстрационный пример использования функции / метода parseChunk() из MODx Evolution API для использования чанка с плейсхолдерами в своем собственном / самописном / рукотворном сниппете.

Фрагмент сниппета: (далее…)

Опубликовано 11-06-2014 в 16:14

Как создать новый плейсхолдер в MODx Evolution

Итак, объяснять, что такое плейсхолдеры я не буду, — если читатели не по наслышке знают, то такое CMS / CMF MODx Evolution, то это должно им итак быть давно уже известно. Потому начну сразу с темы заметки.

Чтобы создать а-ля объявить новый плейсхолдер нужно использовать метод setPlaceholder(). Например так, как это показано ниже:

<?php
global $modx;
$modx -> setPlaceholder('imya_pleisholdera', 'znachenie_pleisholdera');
?>

(далее…)

Опубликовано 5-06-2014 в 13:10

Как программно обновить значение TV-параметра в MODX Evolution

Итак, предположим, что вы уже создали  себе TV-параметр, прикрепили / прилепили его к определенным шаблонам, и теперь стоит задача в программном обновлении значения этого Template Variable. Тогда далее в статье вас ожидает решение данного вопроса.

Сниппет, обновляющий значение TV параметра в MODX Evolution

1. Создайте сниппет, заполните его примерно следующим содержимым:

<?php
$tv_id = 6; // TV, hits - мой TV-параметр.
$hits = $modx->getTemplateVar('hits');//print_r($hits);
$tv = array(
  'contentid' => $modx->documentObject['id'],
  'value' => ++$hits['value'],
);
$updateResult = $modx->db->update( $tv, $modx->getFullTableName('site_tmplvar_contentvalues'), 'tmplvarid = "' . $tv_id . '"' );
print 'Просмотров: '. ++$hits['value'];
?>

(далее…)

Опубликовано 5-12-2013 в 12:27

MODX Evolution: как вернуть массив названий колонок таблицы

Вернуть названия колонок таблицы в MODX Evolution можно с помощью метода под названием getColumnNames. Последний возвращает их в виде массива.

Пример 1. Пусть в качестве входного параметра выступит набор данных полученный в результате выполнения запроса SELECT.

<?php
global $modx;
$result = $modx->db->select( 'id, value', $modx->getFullTableName('site_tmplvar_contentvalues') );
$cols = $modx->db->getColumnNames( $result );    // - получаем имена столбцов в порядке их выбора.
print '<pre>' . print_r($cols, true) . '</pre>';
?>

При этом на экран будет выведено следующее: (далее…)

Опубликовано 30-08-2013 в 14:17

Простые SQL запросы в MODX Evolution

Чуть ниже представляю вам несколько примеров простых SQL запросов к базе данных CMS / CMF MODX Evolution, используя API оного движка для сайтов.

Пример 1. Подсчет количества записей в таблице site_content произвольным запросом. Результат будет находится в переменной $total_rows:

<?php
global $modx;
$result = $modx->db->select('*', $modx->getFullTableName('site_content'));
$total_rows = $modx->db->getRecordCount($result);
?>

Пример 2.  Вставка записей в таблицу, программное создание ресурса. В переменной $newDocId окажется идентификатор сгенерированного материала.

<?php
global $modx;
$new_document = array(
  'pagetitle' => 'Где скачать MODX',
  'content' => 'Скачать MODX можно на http://modx.com.',

(далее…)

Опубликовано 29-08-2013 в 15:50

Как добавить страницу с TV параметрами в MODX Evolution [программно]

Данная статья содержит пример программного кода, который можно вставить в сниппет, ориентированный на MODX Evolution (проверял на версии 1.0.10), и он будет генерировать новые документы а-ля страницы с заданным или заданными TV параметрами, заблаговременно подготовленными посредством админки CMS.

<?php
include_once "manager/processors/cache_sync.class.processor.php";
global $modx;

// Установка свойств нового ресурса:
$new_document = array(
  'pagetitle' => 'Авто-статья',
  'content' => 'Данная страница сгенерирована автоматически.';
  'longtitle' => '',
  'description' => '',
  'alias' => '',

(далее…)

Опубликовано 29-08-2013 в 11:20

Проверка на авторизованного пользователя в CMS / CMF MODX Evolution

Сформированная мною в предыдущей статье форма регистрации пользователей на сайте имеет один существенный недостаток — там нет функции скрытия после того, как посетитель авторизовался. Потому придется нам с вами написать небольшой сниппет для MODX Evolution, используя getLoginUserName(). Я назвал его is_user_logged_in:

<?php
$output = (isset($output)) ? $output : '';
if (!$modx->getLoginUserName()) {
  return $output;
}
?>

(далее…)

Опубликовано 28-08-2013 в 15:17



Свежие комментарии

PORNOSEKSXXX

  • Администратор: к записи VK.Api.call('wall.post') создает окно (подтвержден »
  • Администратор: к записи Да, я тоже заметил такой косяк... на рабочем проек »
  • nob: к записи Спасибо за код. Но скажите, почему браузеры блокир »
  • Петр: к записи скажите, а можно ли поменять e-mail учетной записи »
  • Алексей: к записи Для того чтобы окно не закрывалось при нажатии на »
  • Владимир: к записи Сайт при этом доступен по адресу http://mr/ »
  • Владимир: к записи При использовании в качестве сервера "OpenServer" »

Статистика спама

Akismet заблокировал 39 522 спамеров

Последние твиты

Твиты пользователя @red_book_cms