Я создал пользовательский пример модуля (простой мир Hello), и теперь я бы добавил ссылку на этот модуль в проектах на vtiger.
Я пытался использовать конструктор модулей, но он не работал, поэтому я нашел этот кусок кода в файле module.php в vtiger / modules / project / models /
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;
}
Но даже если я добавлю сюда свою пользовательскую ссылку или удаляю все содержимое в массиве $ quickLinks, боковая панель не изменится. Как я могу это сделать? Спасибо
Вы можете обратиться по ссылке ниже или выполнить следующие шаги, чтобы добавить новую ссылку в модуле проекта.
Добавить новую пользовательскую ссылку
Создайте новый файл и добавьте приведенный ниже код в этот файл .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 );
Других решений пока нет …