Всем привет!
Решил поделиться своей небольшой доработкой, а точнее небольшим хаком.
Задача была в следующем, чтобы заголовки модулей стали активными ссылками.
Приступаем к изменениям!
1. Добавляем дополнительное поле module_link в таблицу cms_modules
2. Вносим изменения в файл /www/admin/applets/modules.php
В блоке: if ($do == 'update'){ //строка 266
после строки:
добавляем строку:
далее в SQL-запрос: $sql = "UPDATE cms_modules //строка 290
после строки:
title='$title',
добавляем:
module_link='$module_link',
Далее делаем тоже самое в блоке: if ($do == 'submit'){ //строка 346
после строки:
добавляем строку:
далее в SQL-запрос в блоке if ($operate == 'user'){ //строка 375
в $sql перед position добавляем module_link,
и перед '$position' добавляем '$module_link',
и чуть ниже в блоке if ($operate == 'clone'){ //строка 381
в $sql перед position добавляем module_link,
и перед '{$position}', добавляем '{$module_link}',
Добавляем вывод input, после блока:
после закрывающего </div>
перед
вставляем блок:
3. Вносим изменения в шаблон модуля /templates/_default_/modules/module.tpl
строку {$mod.title} //строка 4
меняем на {if $mod.module_link!=''}<a href="{$mod.module_link}" title="{$mod.title}">{$mod.title}</a>{else}{$mod.title}{/if}
После данных манипуляций мы получаем дополнительное поле в админке
Кто не вносил изменения в данные файлы, то можно просто заменить их на мои из архива:
http://instantcms.ru/users/files/download4258.html
Всем хорошего весеннего настроения!
Ну и вдруг кому захочется поблагодарить за работу:
Яндекс.Деньги — 41001235605991
WMR — R291063117803
Решил поделиться своей небольшой доработкой, а точнее небольшим хаком.
Задача была в следующем, чтобы заголовки модулей стали активными ссылками.
Приступаем к изменениям!
1. Добавляем дополнительное поле module_link в таблицу cms_modules
ALTER TABLE `cms_modules` ADD `module_link` VARCHAR( 200 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ;
В блоке: if ($do == 'update'){ //строка 266
после строки:
$title = cmsCore::request('title', 'str', ''); //строка 271
$module_link = cmsCore::request('module_link', 'str', '');
после строки:
title='$title',
добавляем:
module_link='$module_link',
Далее делаем тоже самое в блоке: if ($do == 'submit'){ //строка 346
после строки:
$title = cmsCore::request('title', 'str', ''); //строка 354
$module_link = cmsCore::request('module_link', 'str', '');
в $sql перед position добавляем module_link,
и перед '$position' добавляем '$module_link',
и чуть ниже в блоке if ($operate == 'clone'){ //строка 381
в $sql перед position добавляем module_link,
и перед '{$position}', добавляем '{$module_link}',
Добавляем вывод input, после блока:
<div><strong><?php echo $_LANG['AD_MODULE_TITLE'];?></strong> //строка 513
перед
<table width="100%" cellpadding="0" cellspacing="0" style="margin-top:5px;"> //строка 525
<div><strong>Ссылка заголовка модуля</strong> <span class="hinttext">— активная ссылка заголовка</span></div> <div> <table width="100%" cellpadding="0" cellspacing="0" > <tr> <td><input name="module_link" type="text" id="module_link" style="width:100%" value="<?php echo htmlspecialchars($mod['module_link']);?>" /></td> </tr> </table> </div>
строку {$mod.title} //строка 4
меняем на {if $mod.module_link!=''}<a href="{$mod.module_link}" title="{$mod.title}">{$mod.title}</a>{else}{$mod.title}{/if}
После данных манипуляций мы получаем дополнительное поле в админке
Кто не вносил изменения в данные файлы, то можно просто заменить их на мои из архива:
http://instantcms.ru/users/files/download4258.html
Всем хорошего весеннего настроения!
Ну и вдруг кому захочется поблагодарить за работу:
Яндекс.Деньги — 41001235605991
WMR — R291063117803
Реклама #
Олег Васильевич я 10 лет назад #
Денис Васильевич 10 лет назад #
п.с. да нужная штука. я такую доработку уже давненько включаю в свои шаблоны.
Майкл 10 лет назад #
irbis 10 лет назад #
lezginka.ru 10 лет назад #
irbis , а плагином нельзя это сделать...хак не то
irbis 10 лет назад #
Max 10 лет назад #