チュートリアルとAPIを読み、コード例を確認しました。しかし、実装に関しては、思ったとおりに機能しませんでした。
今のところ、学習目的で、Viewsモジュールの使用を避けようとしています。
function mymodule_menu() {
$items['groups'] = array(
'title' => t('Groups list'),
'page callback' => 'mymodule_groups_overview',
'access callback' => TRUE
);
return $items;
}
function mymodule_groups_overview() {
$build = array();
$query = db_select('og', 'og')->extend('PagerDefault');
$query->fields('og', array('gid'));
$result = $query
->limit(10)
->orderBy('og.gid')
->execute();
if ($result) {
$gids = $result->fetchCol();
$entities = og_load_multiple($gids);
$build = entity_view('group', $entities, 'teaser');
}
return $build;
}
問題は、entity_view(..)
何も返さず、og_load_multiple(..)
エンティティの配列を返すことですが、コンテンツもフィールドもありません。
これが機能する場合は、おそらくコントローラーをオーバーライドし、で宣言しmymodule_entity_info_alter(..)
、新しいビューモード'list'を追加します。
エンティティのリストを表示するための作業コードをポケットベルと共有できますか?
PS私はグループを例にとりましたが、他のタイプのエンティティは気にしません。