how to display a river item without elgg_list_river($options)

I want to show a river post,

$options = array('object_guid'=>$guid);

but if I use elgg_list_river($options), the result is =  river content + menu:river (comment, likes, delete, etc) , 

i don't want the menu to be displayed , is there the alternative way?

  • Get the ElggRiverItem object using elgg_get_river(), which returns an array.

    Then use elgg_view_river_item($item)

  • i don't want the menu to be displayed

    This is more difficult because the river/elements/body view renders the "river" menu. You could try this:

    // hide river menu
    $handler = function ($hook, $type, $value, $params) {
        if ($params['vars']['name'] === 'river') {
            return "";
        }
    };
    elgg_register_plugin_hook_handler('view', 'navigation/menu/default', $handler);
    
    echo elgg_view_river_item($item);
    
    elgg_unregister_plugin_hook_handler('view', 'navigation/menu/default', $handler);