definition['theme'] = 'views_view_row_node'; } function option_definition() { $options = parent::option_definition(); $options['render_anything'] = array('default' => FALSE); return $options; } function options_form(&$form, &$form_state) { parent::options_form($form, $form_state); $form['render_anything'] = array( '#type' => 'checkbox', '#title' => t('Display content that is not handled by Panelizer.'), '#description' => t('If content is not panelized it will be hidden unless this is checked.'), '#default_value' => $this->options['render_anything'], '#weight' => 1, ); } function render($row) { $node = node_load($row->nid); if (empty($node)) { return; } if (empty($this->options['view_mode'])) { $view_mode = 'page_manager'; } else { $view_mode = $this->options['view_mode']; } $handler = panelizer_entity_plugin_get_handler('node'); $info = $handler->render_entity($node, $view_mode); if (empty($info)) { if (!empty($this->options['render_anything'])) { return parent::render($row); } } elseif (!empty($info['content'])) { return $info['content']; } return NULL; } }