|
|
Drupal example source code file (views_plugin_row_aggregator_rss.inc)
The views_plugin_row_aggregator_rss.inc Drupal example source code<?php // $Id: views_plugin_row_aggregator_rss.inc,v 1.1 2009/01/07 19:38:08 merlinofchaos Exp $ /** * @file * Contains the Aggregator Item RSS row style plugin. */ /** * Plugin which loads an aggregator item and formats it as an RSS item. */ class views_plugin_row_aggregator_rss extends views_plugin_row { function option_definition() { $options = parent::option_definition(); $options['item_length'] = array('default' => 'default'); return $options; } function options_form(&$form, &$form_state) { $form['item_length'] = array( '#type' => 'select', '#title' => t('Display type'), '#options' => array( 'fulltext' => t('Full text'), 'teaser' => t('Title plus teaser'), 'title' => t('Title only'), 'default' => t('Use default RSS settings'), ), '#default_value' => $this->options['item_length'], ); } function render($row) { $sql = "SELECT ai.iid, ai.fid, ai.title, ai.link, ai.author, ai.description, "; $sql .= "ai.timestamp, ai.guid, af.title AS feed_title, ai.link AS feed_LINK "; $sql .= "FROM {aggregator_item} ai LEFT JOIN {aggregator_feed} af ON ai.fid = af.fid "; $sql .= "WHERE ai.iid = %d"; $item = db_fetch_object(db_query($sql, $row->iid)); $item->elements = array( array('key' => 'pubDate', 'value' => gmdate('r', $item->timestamp)), array( 'key' => 'dc:creator', 'value' => $item->author, 'namespace' => array('xmlns:dc' => 'http://purl.org/dc/elements/1.1/'), ), array( 'key' => 'guid', 'value' => $item->guid, 'attributes' => array('isPermaLink' => 'false') ), ); foreach ($item->elements as $element) { if (isset($element['namespace'])) { $this->view->style_plugin->namespaces = array_merge($this->view->style_plugin->namespaces, $element['namespace']); } } return theme($this->theme_functions(), $this->view, $this->options, $item); } } Other Drupal examples (source code examples)Here is a short list of links related to this Drupal views_plugin_row_aggregator_rss.inc source code file: |
"Drupal" is a registered trademark of Dries Buytaert.
my drupal tutorials and examples
Copyright
1998-2016 Alvin Alexander, alvinalexander.com
All Rights Reserved.
Beginning in 2016, a portion of the proceeds from pages under the '/drupal-code-examples/' URI will be donated to charity.