Я создал собственный модуль с помощью конструктора модулей.
Я хочу изменить шаблоны моего модуля (редактировать, подробно, подпанель).
Как я могу указать Suitecrm использовать другой шаблон?
Спасибо
(Suiterm 7.7)
Я создал собственный модуль с помощью конструктора модулей.
Я хочу изменить шаблоны моего модуля (редактировать, подробно, подпанель).
Как я могу указать Suitecrm использовать другой шаблон?
Спасибо
(Suiterm 7.7)
это работа для меня.
<?php
require_once('include/MVC/View/SugarView.php');
class AccountsViewEdit extends SugarView {
private $smarty;
public function __construct() {
}
public function display() {
$this->smarty = new Sugar_Smarty();
$data = ['a'=> 'a', 'b'=>'b'];
$this->smarty->assign($data);
$this->smarty->display('path/custom/template.tpl');
}
}
Вам нужно создать SugarView в модуле, а затем переопределить метод display(), чтобы вернуть путь к вашему пользовательскому шаблону. Соглашение заключается в том, чтобы хранить ваши шаблоны в папке «tpl» в модуле.
Например, если вы посмотрите на «modules/Accounts/views/view.edit.php», вам просто нужно добавить
class AccountsViewEdit extends ViewEdit
{
public function __construct()
{
parent::__construct();
$this->useForSubpanel = true;
$this->useModuleQuickCreateTemplate = true;
}
public function display() {
parent::display(); // TODO: Change the autogenerated stub
return $this->ss->fetch('path/to/your/smarty/template.tpl');
}
}
это почти то же самое для подпанелей, за исключением того, что они находятся в папке Dashlets. Взгляните, например, на modules/Accounts/Dashlets/MyAccountsDashlet/MyAccountsDashlet.php.