Modx как получить TV ресурса

Я пытаюсь создать подключаемый модуль, который будет принимать значение телевизора списка и устанавливать поле документа createdby в соответствии с настройкой onDocFormSave этого телевизора. Телевизор автоматически заполняет себя всеми активными пользователями и выводит их ID.

У меня есть следующий код для плагина, но когда я пытаюсь сохранить какой-либо ресурс, он просто зависает и никогда не сохраняется. setCreatedBy – это имя списка TV:

switch ($modx->event->name) < case ‘onDocFormSave’: $created_by = $resource->getTVValue(‘setCreatedBy’) if ($resource->get(‘createdby’) != $created_by) < $modx->resource->set(‘createdby’, $created_by)); > break; >
Benjamin Morrison 23 Апр 2014 в 03:51

Я следил за вашим вопросом на форумах. Если кому интересно, проблема была в переключателе. Имя события OnDocFormSave , а не onDocFormSave .

OptimusCrime
24 Апр 2014 в 02:03

3 ответа

Похоже, настройку тоже надо делать на ресурсе, а не через Modx-класс.

MODX. Как реализовать текстовые блоки на TV и MIGX. Сравнение.


$resource->set(‘createdby’, $created_by); // You also have a ) too much in your code.
OptimusCrime 23 Апр 2014 в 03:56

Я исправил проблему с лишним) и изменил строку на то, что вы предложили, но, к сожалению, она все еще зависает при сохранении ресурса и не изменении поля createdby для ресурса.

Источник: question-it.com

Modx как получить tv ресурса

Если вы тут, значит вы уже знаете что такое если же нет, то вот немного теории.

Поэтому сразу приступим к настройке в MODX.

Первым делом создадим «Дополнительное поле TV»

  1. Имя*: canonical
  2. Подпись: Добавляет тэг canonical
  3. Описание: Добавляет тэг
  4. Тип ввода: Текст
  5. Необязательно: Да
  6. Тип вывода: По умолчанию
  7. На вкладке «Доступно для шаблонов» указать свой шаблон (Поставить галочку).
Еще по теме:  Что такое ик приемник для ТВ приставки

В итоге мы получили дополнительное поле TV в теле ресурса. Благодаря этому мы можем указать адрес каноничного материала.

Если мы его оставим пустым, то MODX должен настраивать href на текущий URL страницы.

Итак продолжим настройки.

Откроем чанк в котором у нас описывается тег

У меня всё разделено на дополнительные чанки, т.е. для каждого типа тегов в создан чанк, чанк для CSS, для Скриптов, для META и т.д.

Добавляем следующий код. (Внимание! у вас должен быть установлен плагин pdoTools)

modx tv

  1. если для ресурса в TV «canonical» указан URL, то берём данные для rel=»canonical» href из него.
  2. если для ресурса TV «canonical» — пусто, то указываем для rel=»canonical» href текущей страницы.

Источник: 3dlan.ru

Основы и термины в MODx

Параметры (TV) — используются в шаблонах, позволяют расширить функционал шаблона, параметры становятся доступны при редактировании ресурса которому назначен шаблон с параметрами.

Чанки — чистый HTML-код, и любые php-скрипты выполняться в них не будут (можно в нем использовать чанки и сниппеты).

Сниппеты — это чистый PHP-код, и если вы хотите вывести данные сниппета в определенном месте в шаблоне, вам необходимо возвращать данные из самого сниппета.

Плагины — это фактически PHP-код, который создает некую универсальную функцию, которую можно включать в сниппеты, чанки, шаблоны. Одна из особенностей плагина это вешать его на системные события, что не доступно для сниппета.

Список параметров ресурса

[[*longtitle]] — Расширенный заголовок

[[*introtext]] — Аннотация (введение)

[[*content]] — содержимое ресурса

Список дополнительных команд

[[~100~]] — получить урл ресурса по номеру

[[++site_url]] — получить урл сайта, главной страницы (MODx Revolution 2.7.0-pl)

[[++site_name]] — получить имя сайта (MODx Revolution 2.7.0-pl)

Еще по теме:  ТВ каналы про космос список лучших

Источник: small-whale.org

Оцените статью
Добавить комментарий