Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Вызов макроса из кастомного макроса.

Автор niakrissРаздел Макросы UMI.CMS

Ответов: 4
Просмотров: 3923
Последний ответ 21 Октября 2013, 10:47:10
от niakriss
XSLT: вызов существующего раздела из вновь созданной пустой старницы

Автор samРаздел Шаблоны XSLT

Ответов: 9
Просмотров: 3261
Последний ответ 16 Ноября 2014, 23:19:20
от admin
Вызов рубрики и alt-name в новость, разделение на прошедшие и действующие

Автор SumrakrndРаздел Шаблоны XSLT

Ответов: 6
Просмотров: 2810
Последний ответ 01 Июня 2017, 13:06:43
от Sumrakrnd
Вызов шаблона работает только под админом

Автор idu.kuruРаздел Шаблоны XSLT

Ответов: 2
Просмотров: 2771
Последний ответ 22 Марта 2015, 18:34:19
от admin
Вызов макроса в макросе. Порядок интерпретации.

Автор psw2020Раздел Макросы UMI.CMS

Ответов: 7
Просмотров: 3281
Последний ответ 28 Декабря 2015, 16:53:22
от psw2020

0 Пользователей и 2 Гостей просматривают эту тему.

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
вызов метода
« : 10 Апреля 2013, 10:36:38 »
Подскажите пожалуйста, как можно в отдельном файле php, который я вызываю при нажатии на кнопку визивига, вызвать метод из файла /my_module/class.php

либо как иначе можно сформировать список объектов модуля my_module в этом файле?

*

Vladimir

  • ****
  • 279
  • +48/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #1 : 10 Апреля 2013, 13:11:02 »
<?php
require_once('./standalone.php');

$c = cmsController::getInstance();
$module = $c->getModule('my_module');
$result = $module->имя_метода(парам1, парам2);

?>

Как-то так

*

Vladimir

  • ****
  • 279
  • +48/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #2 : 10 Апреля 2013, 13:12:04 »
Это  если php-файл лежит в корне сайта. Не знаю, что будет с путями в системе, если он не в корне

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #3 : 10 Апреля 2013, 13:35:11 »
ну да.. с путями беда...
а можно по-подробнее? standalone я так поняла это мой файлик...
а куда весь этот код писать? в class.php? если да, то в какой форме? public function или просто?

и парам1 и парам 2 это что?
« Последнее редактирование: 10 Апреля 2013, 13:38:04 от niakriss »

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #4 : 10 Апреля 2013, 14:05:17 »
вроде поняла... сделала.. но result пустой получается... возникает такой вопрос... если в браузере я набираю мой_сайт/udata://my_module/my_method и он мне выдает список в xml формате... то как мне такое проделать в этом файле?

*

Vladimir

  • ****
  • 279
  • +48/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #5 : 10 Апреля 2013, 14:57:25 »
standalone - это системный файл ЮМИ, он в корне и содержит в себе подключение системы. Его следует вызывать в начале вашего файла.

Весь код писать в ваш php-файл в любом виде, как вам удобнее.

парам1 и парам 2  - это параметры, передаваемые в метод

"result пустой получается" - права доступа?

"мой_сайт/udata://my_module/my_method и он мне выдает список в xml формате... то как мне такое проделать в этом файле?" -
Не знаю( Скорее всего, так и запрашивать, вернется тот же xml.
Возможно, еще пригодится http://umi-cms.spb.su/api/101/279/



*

Vladimir

  • ****
  • 279
  • +48/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #6 : 10 Апреля 2013, 14:59:17 »
а в таком случае...  зачем вам внешний php? Почему не вызывать методы ЮМИ напрямую?

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
Re:вызов метода
« Ответ #7 : 10 Апреля 2013, 15:38:43 »
у меня плагин для визивига... там вызывается этот файлик при нажатии на кнопку этого плагина... и появляется форма... в этой форме должен быть список объектов моего модуля, которые я могу выбрать и добавить. а плагин в правильном хтмл добавит их в визивиг.
так как вы посоветовали не получается((( он не находит файла /classes/modules/my_module/class.php (((

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:вызов метода
« Ответ #8 : 20 Мая 2013, 15:10:23 »
у меня плагин для визивига... там вызывается этот файлик при нажатии на кнопку этого плагина... и появляется форма... в этой форме должен быть список объектов моего модуля, которые я могу выбрать и добавить. а плагин в правильном хтмл добавит их в визивиг.
так как вы посоветовали не получается((( он не находит файла /classes/modules/my_module/class.php (((

Если вы пишете плагин для tinyMCE, то вы скорее всего знакомы с принципом его работы, все формы и функциональность кнопок задается при помощи js кода. То есть вам в этом js и надо достучаться до вашего макроса, а там вполне должен подойти стандартный способ типа ajax запросов

Или я не верно понял вашу задачу?