Как отсортировать опции в админке
Как отсортировать опции в админке
Хотел бы спросить у знающих: можно ли отсортировать по своему усмотрению категории в левой панели админки: чтобы после меню Администрирование было меню Общие настройки.А, скажем внутри после меню Резервная копия БД следовало меню Восстановить БД , а не то что сейчас: до идет Rebuild Search а после...Смайлики
-
- Former team member
- Сообщения: 1139
- Стаж: 19 лет 2 месяца
- Откуда: Ленинград
-
- phpBB 1.4.4
- Сообщения: 195
- Стаж: 19 лет
- Откуда: Москва
Нет, ну это, если нужно внутри опции (скажем опции конфигурация или смайлики) что-то поменять местами, а вот как быть с общей левой панелью в АЦ.Ведь нет такого скрипта как например в IPB - это admin_pages.php (версии 1.х).MNK писал(а):dnk
Скорее, в /templates/стиль/admin надо смотреть, ИМХО. Только, боюсь, там не один файл придётся редактировать.
Добавлено спустя 17 минут 28 секунд:
MNK
Скорее нужно так:
В начале содержимого всех скриптов в папке admin есть записи о том, как и где должен находится тот или иной пункт:
Например, для admin_groups.php
это запись:
Код: Выделить всё
define('IN_PHPBB', 1);
if ( !empty($setmodules) )
{
$filename = basename(__FILE__);
$module['Groups']['Manage'] = $filename;
return;
}
Это:
Код: Выделить всё
define('IN_PHPBB', 1);
//
// First we do the setmodules stuff for the admin cp.
//
if( !empty($setmodules) )
{
$filename = basename(__FILE__);
$module['General']['Smilies'] = $filename;
return;
}
General - это как раз раздел "Общие настройки"
Да, эта часть выглядит так:rxu писал(а):Посмотрите admin/index.php. Ключевое слово - ksort.
Код: Выделить всё
ksort($module);
while( list($cat, $action_array) = each($module) )
{
$cat = ( !empty($lang[$cat]) ) ? $lang[$cat] : preg_replace("/_/", " ", $cat);
$template->assign_block_vars("catrow", array(
"ADMIN_CATEGORY" => $cat)
);
ksort($action_array);
$row_count = 0;
while( list($action, $file) = each($action_array) )
{
$row_color = ( !($row_count%2) ) ? $theme['td_color1'] : $theme['td_color2'];
$row_class = ( !($row_count%2) ) ? $theme['td_class1'] : $theme['td_class2'];
$action = ( !empty($lang[$action]) ) ? $lang[$action] : preg_replace("/_/", " ", $action);
$template->assign_block_vars("catrow.modulerow", array(
"ROW_COLOR" => "#" . $row_color,
"ROW_CLASS" => $row_class,
"ADMIN_MODULE" => $action,
"U_ADMIN_MODULE" => append_sid($file))
);
$row_count++;
}
}
Мне просто не очень понятны эти выражения, в часттности это
$cat = ( !empty($lang[$cat]) ) ? $lang[$cat] : preg_replace("/_/", " ", $cat);
-
- Former team member
- Сообщения: 1139
- Стаж: 19 лет 2 месяца
- Откуда: Ленинград
Если элемент хеша $lang[$cat] не пустой, то присвоить его значение переменной $cat, иначе заменить по правилам регулярных выражений в переменной $cat первый показанный элемент на второй.dnk писал(а):$cat = ( !empty($lang[$cat]) ) ? $lang[$cat] : preg_replace("/_/", " ", $cat);
И если я неправ, пусть старшие товарищи поправят меня
1) Требуется перенести меню Общие настройки с середины страницы и вставить его после меню Администрирование, то есть, чтобы после опции Предварительный просмотр форума шло меню Общие настройки с опциями Резервная копия БД итдrxu писал(а):dnk, эта строка Вам и не требуется. Работайте с массивами $module и $action_array.
2) Требуется внутри меню Общие настройки перенести опцию Резервная копия БД к опции Восстановить БД
Вот собственно основные запрашиваемые мной комбинации.Только вот как на примере данного случая технологически правильно прооперировать с массивами $module и $action_array я не в курсе.Вот мне и хотелось бы получить подсказку у гуру по этим вопросам.
-
- Former team member
- Сообщения: 9683
- Стаж: 18 лет 11 месяцев
- Откуда: Питер
- Благодарил (а): 1 раз
- Поблагодарили: 27 раз
Сортировка, имхо.rxu писал(а):dnk, эта строка Вам и не требуется. Работайте с массивами $module и $action_array.
Переименуйте Restore_DB в Brestore_DB, например (не забудьте и в lang_admin.php) и получите ее рядом с Backup_DB...dnk писал(а):Требуется внутри меню Общие настройки перенести опцию Резервная копия БД к опции Восстановить БД
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
ПалычПалыч писал(а):Переименуйте Restore_DB в Brestore_DB, например (не забудьте и в lang_admin.php) и получите ее рядом с Backup_DB...
Ну, я так и понял, что в admin/index.php все опции сортируются по первой букве в алфавитном порядке, а какое выражение непосредственно отвечает за такую сортировку?