添加新功能到Elgg River

时间:2016-05-30 06:41:44

标签: php content-management-system elgg

我尝试在我自定义mod / myplugin / views / default / page / layouts / content.php中添加的新标签中添加功能,并根据主要活动中的标记删除一些元素。< / p>

    $tabs = array(
    'all' => array(
        'text' => elgg_echo('all'),
        'href' => (isset($vars['all_link'])) ? $vars['all_link'] : "$context/all",
        'selected' => ($filter_context == 'all'),
        'priority' => 200,
    ),
    'mine' => array(
        'text' => elgg_echo('mine'),
        'href' => (isset($vars['mine_link'])) ? $vars['mine_link'] : "$context/owner/$username",
        'selected' => ($filter_context == 'mine'),
        'priority' => 300,
    ),
    'anime' => array(
        'text' => elgg_echo('Anime'),
        'href' => (isset($vars['anime_link'])) ? $vars['anime_link'] : "$context/anime",
        'selected' => ($filter_context == 'anime'),
        'priority' => 500,
    ),
        );

该标签已经显示在我的活动页面中,但是我不知道在哪里可以添加我的新功能以仅加载某些具有动画&#34;标签

所以我的问题是:

我可以在哪里添加代码: example.com/activity/anime

我在哪里可以编辑此查询(因此它会显示包含&#34;动漫&#34;标记的所有内容): example.com/activity/all

我是否需要添加过滤器才能实现此目的?我应该在哪里添加它或者我应该覆盖哪些文件?

问候。

1 个答案:

答案 0 :(得分:0)

有两种方法可以解决这个问题:

  1. 使用自定义页面处理程序并将其用作新标签的网址,例如sub class

    anime/activity
  2. 使用elgg_register_page_handler('anime', 'anime_page_handler'); function anime_page_handler($segments) { $page = array_shift($segments); switch ($page) { case 'activity': // render a page using elgg_view_resource() // or generate your list here and pass it into elgg_view_layout() then // then pass the layout into elgg_view_page() return true; } return false; } 挂钩劫持route

    的路线
    activity/anime