如果您查看管理面板中的侧边栏,您会看到默认情况下,其中列出的所有项目都放置在两个组中。
所有常规的前端模板都在“模板”下,而所有系统模块(例如用户、草稿和评论)都在“管理”下。
在内部,这两个组分别称为“_templates_”和“_modules_”。
默认添加的模板都在_templates_组中,如果我们想让他在_modules_组中的话,需要这样指定:
<cms:template clonable='1' title='Test' parent='_modules_' >
这样新添加模板将会出现在_modules_组中。
如果要添加新的组,编辑“couch/addons/kfunctions.php”文件添加以下内容
if( defined('K_ADMIN') ){ $FUNCS->add_event_listener( 'register_admin_menuitems', 'my_register_admin_menuitems' ); function my_register_admin_menuitems(){ global $FUNCS; $FUNCS->register_admin_menuitem( array('name'=>'_my_test_', 'title'=>'Test', 'is_header'=>'1', 'weight'=>'1') ); $FUNCS->register_admin_menuitem( array('name'=>'_my_another_test_', 'title'=>'Another Test', 'is_header'=>'1', 'weight'=>'2') ); } }
默认情况下,如果模板的条目是可克隆模板,则会显示“图层”图标,如果不是,则根本没有图标。
您可以通过在 <cms:template> 标记中设置它来指定要使用的图标,例如如下:
<cms:template clonable='1' title='Test' parent='_my_test_' icon='audio-spectrum' >
这里是所有可用图标名称:https://useiconic.com/open#icons
以上!
在管理侧边栏中显示大量模板时,以下方法对于使事情更易于管理可能非常有用
我最近遇到了类似的情况。我的解决方案是完全取消“模板”组,然后创建多个自定义类别,这些类别以折叠状态显示,并在用户单击打开时保留其折叠/打开状态。
以下是截图
任何未明确放置在这些组之一中的模板都将出现在根本身中(与默认情况下放在“模板”组中相反)。
如果您对解决方案感兴趣,以下是需要做的事情 -
1. 编辑“couch/config.php”,删除此行前面的注释斜杠
//define( 'K_ADMIN_THEME', 'sample' );
2. 如您所知,激活示例主题后,放置在“couch\theme\sample”文件夹中的任何模板都将被 Couch 使用,而不是默认的系统模板。
在随附的 zip 中,您会找到三个这样的模板,提取它们并将它们放在“couch\theme\sample”中。
3. 最后编辑已经存在于 'couch\theme\sample' 中的 kfunctions.php 文件并将以下代码附加到它 -
// 添加新的面板组条目 if( defined('K_ADMIN') ){ $FUNCS->add_event_listener( 'register_admin_menuitems', 'my_register_admin_menuitems' ); $FUNCS->add_event_listener( 'alter_admin_menuitems', 'my_alter_admin_menuitems' ); function my_register_admin_menuitems(){ global $FUNCS; $FUNCS->register_admin_menuitem( array('name'=>'company', 'title'=>'Company', 'is_header'=>'1', 'weight'=>'1') ); $FUNCS->register_admin_menuitem( array('name'=>'calendar', 'title'=>'Calendar', 'is_header'=>'1', 'weight'=>'2') ); $FUNCS->register_admin_menuitem( array('name'=>'programs', 'title'=>'Programs', 'is_header'=>'1', 'weight'=>'3') ); $FUNCS->register_admin_menuitem( array('name'=>'support', 'title'=>'Support', 'is_header'=>'1', 'weight'=>'4') ); $FUNCS->register_admin_menuitem( array('name'=>'archive', 'title'=>'Archive', 'is_header'=>'1', 'weight'=>'5') ); } function my_alter_admin_menuitems( &$items ){ global $FUNCS; if( array_key_exists('_templates_', $items) ){ unset( $items['_templates_'] ); // removed this so now all templates by default go in '_root_'. } $items['_modules_']['weight']=100; // move administration group further down } }
应该就是这样。您应该可以在侧边栏中找到上面代码中定义的菜单项。
您现在可以编辑/添加/删除它们以适合您的用例。
不用说,任何前端模板都可以放在上面定义的任何类别中,方法是使用它们的 <cms:template> 块的“父”参数,例如:
<cms:template title='Items' parent='company' order='0' clonable='1'>
以下是附件:https://www.couchcms.com/forum/download/file.php?id=2060