在 vtiger 项目侧边栏中添加自定义模块
Add costum module in vtiger project sidebar
我已经创建了一个自定义示例模块(一个简单的 Hello world),现在我将 link 添加到 vtiger 项目中的这个模块。
我尝试使用模块设计器但它没有用,所以我在 vtiger/modules/project/models/
的 module.php 文件中找到了这段代码
public function getSideBarLinks($linkParams) {
$linkTypes = array('SIDEBARLINK', 'SIDEBARWIDGET');
$links = parent::getSideBarLinks($linkParams);
$quickLinks = array(
array(
'linktype' => 'SIDEBARLINK',
'linklabel' => 'LBL_TASKS_LIST',
'linkurl' => $this->getTasksListUrl(),
'linkicon' => '',
),
array(
'linktype' => 'SIDEBARLINK',
'linklabel' => 'LBL_MILESTONES_LIST',
'linkurl' => $this->getMilestonesListUrl(),
'linkicon' => '',
),
);
foreach($quickLinks as $quickLink) {
$links['SIDEBARLINK'][] = Vtiger_Link_Model::getInstanceFromValues($quickLink);
}
return $links;
}
但即使我在此处添加我的自定义 link 或者如果我删除 $quickLinks 数组中的所有内容,边栏也不会改变。我怎样才能做到这一点?谢谢
您可以参考下方link或按照以下步骤在项目模块下添加新的link。
创建一个新文件并在该 .PHP 文件中添加以下代码并将其放置在 CRM 根目录位置和 运行 在浏览器中。
$Crm_Utils_Log = true;
include_once('vtlib/Crm/Menu.php');
include_once('vtlib/Crm/Module.php');
$module = Crm_Module::getInstance('Project');
$targetmodule = Crm_Module::getInstance('NewModule');
$relationLabel = 'Link Label';
$function_name = 'get_related_list';
$module->setRelatedList( $targetmodule, $relationLabel, Array(), $function_name );
我已经创建了一个自定义示例模块(一个简单的 Hello world),现在我将 link 添加到 vtiger 项目中的这个模块。 我尝试使用模块设计器但它没有用,所以我在 vtiger/modules/project/models/
的 module.php 文件中找到了这段代码public function getSideBarLinks($linkParams) {
$linkTypes = array('SIDEBARLINK', 'SIDEBARWIDGET');
$links = parent::getSideBarLinks($linkParams);
$quickLinks = array(
array(
'linktype' => 'SIDEBARLINK',
'linklabel' => 'LBL_TASKS_LIST',
'linkurl' => $this->getTasksListUrl(),
'linkicon' => '',
),
array(
'linktype' => 'SIDEBARLINK',
'linklabel' => 'LBL_MILESTONES_LIST',
'linkurl' => $this->getMilestonesListUrl(),
'linkicon' => '',
),
);
foreach($quickLinks as $quickLink) {
$links['SIDEBARLINK'][] = Vtiger_Link_Model::getInstanceFromValues($quickLink);
}
return $links;
}
但即使我在此处添加我的自定义 link 或者如果我删除 $quickLinks 数组中的所有内容,边栏也不会改变。我怎样才能做到这一点?谢谢
您可以参考下方link或按照以下步骤在项目模块下添加新的link。
创建一个新文件并在该 .PHP 文件中添加以下代码并将其放置在 CRM 根目录位置和 运行 在浏览器中。
$Crm_Utils_Log = true;
include_once('vtlib/Crm/Menu.php');
include_once('vtlib/Crm/Module.php');
$module = Crm_Module::getInstance('Project');
$targetmodule = Crm_Module::getInstance('NewModule');
$relationLabel = 'Link Label';
$function_name = 'get_related_list';
$module->setRelatedList( $targetmodule, $relationLabel, Array(), $function_name );