如何解决Drupal:视图合并多个块输出
| 我正在考虑创建三个不同的块,将它们组合在一起,然后将输出随机化。 例如: 区块1:<div id=\"col1\">
区块2:<div id=\"col2\">
区块3:<div id=\"col3\">
合并三个并随机化,这样输出看起来像
<div id=\"col2\">,<div id=\"col1\">,<div id=\"col2\">,<div id=\"col3\">
等...
显然,我削减了很多代码,所以请不要对此发表评论。
解决方法
/**
* Implementation of hook_block().
*/
function _report_block($op = \'list\',$delta = 0,$edit = array()) {
if ($op == \'list\') {
$blocks[\'custom_block\'] = array(
\'info\' => t(\'My custom block\'),\'weight\' => 0,\'status\' => 1,\'cache\' => BLOCK_CACHE_PER_ROLE | BLOCK_CACHE_PER_PAGE,);
return $blocks;
}
else if ($op == \'view\') {
switch($delta){
case \'custom_block\':
$data[\'subject\'] = t(\'Enjoy your life :)\');
$data[\'content\'] = my_block_content();
return $data;
break;
}
}
}
function my_block_content(){
$blocks = array(\'block_1\',\'block_2\',\'block_3\');
$items = array();
$view = views_get_view(\'my_view\');
foreach($blocks AS $block){
$view->set_display($block);
$view->execute();
$items[] = $view->result;
}
shuffle($items);
return $items;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。