node_type.module in Util 7
Simple Content Type Summary.
File
contribs/node_type/node_type.moduleView source
<?php
/**
 * @file
 * Simple Content Type Summary.
 */
/**
 * Implements hook_menu().
 */
function node_type_menu() {
  $items = array();
  $items['node/type/%'] = array(
    'title' => 'Node Type',
    'title callback' => 'node_type_title',
    'title arguments' => array(
      2,
    ),
    'description' => 'List nodes of the specified type.',
    'page callback' => 'node_type_list',
    'page arguments' => array(
      2,
    ),
    'access arguments' => array(
      'access content',
    ),
    'type' => MENU_CALLBACK,
  );
  return $items;
}
/**
 * Menu title callback.
 */
function node_type_title($type) {
  $type_info = node_type_get_type($type);
  return $type_info->name . ' Content';
}
/**
 * Menu callback.
 */
function node_type_list($type) {
  $css = '.node {border-top: 1px solid #ccc; margin-bottom: 1em;}
    .node.even {background-color: #f4f4f4;}
    .node-type-description {font-style: italic; margin: 0 2em;}';
  drupal_add_css($css, 'inline');
  $view_mode = 'teaser';
  $type_info = node_type_get_type($type);
  $output = array(
    'description' => array(
      '#type' => 'markup',
      '#markup' => '<p class="node-type-description">' . filter_xss($type_info->description) . '</p>',
    ),
  );
  $query = new EntityFieldQuery();
  $query
    ->entityCondition('entity_type', 'node')
    ->entityCondition('bundle', $type)
    ->propertyCondition('status', NODE_PUBLISHED)
    ->propertyOrderBy('sticky', 'DESC')
    ->propertyOrderBy('changed', 'DESC')
    ->range(0, 10)
    ->addMetaData('account', user_load(1));
  // Run the query as user 1.
  $result = $query
    ->execute();
  $output['nodes'] = node_view_multiple(node_load_multiple(array_keys($result['node'])), $view_mode);
  $output['pager']['#markup'] = theme('pager', $query->pager);
  return $output;
}
/**
 * Implements hook_preprocess_node().
 * Add zebra striping.
 */
function node_type_preprocess_node(&$variables) {
  static $class = 'even';
  $zebra = array(
    'even' => 'odd',
    'odd' => 'even',
  );
  $class = $zebra[$class];
  $variables['classes_array'][] = $class;
}Functions
| 
            Name | 
                  Description | 
|---|---|
| node_type_list | Menu callback. | 
| node_type_menu | Implements hook_menu(). | 
| node_type_preprocess_node | Implements hook_preprocess_node(). Add zebra striping. | 
| node_type_title | Menu title callback. |