Вебасист позволяет в исходном коде одного приложения вызывать методы другого приложения. Это допускается делать и в PHP-коде, и в коде шаблонов (включая темы дизайна), как показано в следующих примерах.
PHP
//прежде всего убеждаемся в том, что стороннее приложение установлено //вызов функции wa() с идентификатором стороннего приложения необходим для того, //чтобы сделать его классы доступными в коде вашего собственного приложения или плагина if (wa()->appExists('blog')) { wa('blog'); $blog_authors = blogHelper::getAuthors(1); }
Smarty
//для того чтобы сделать классы другого приложения доступными в шаблоне Smarty, //необходимо обратиться к полю объекта $wa, имя которого совпадает с ID приложения, //чтобы убедиться, что это поле не пустое {if $wa->blog} {$blog_authors = blogHelper::getAuthors(1)} {/if}
Вызов методов плагинов
Помимо методов другого приложения допускается вызывать и методы плагинов другого приложения. Для этого нужно немного усложнить проверку в вашем коде:
PHP
if (wa()->appExists('blog')) { wa('blog'); //проверяем, доступен ли статический метод с именем getData класса некоторого плагина с идентификатором some if (method_exists('blogSomePlugin', 'getData')) { $data = blogSomePlugin::getData(); } }
Smarty
{if $wa->blog} //проверяем, доступен ли статический метод с именем getData класса некоторого плагина с идентификатором some {if method_exists('blogSomePlugin', 'getData')} {$data = blogSomePlugin::getData()} {/if} {/if}
0 комментариев
No comments yet.