function theme_node_preview

Returns HTML for a node preview for display during node creation and editing.

Parameters

$variables: An associative array containing:

  • node: The node entity which is being previewed.

See also

NodeFormController::preview()

node_preview()

Related topics

1 theme call to theme_node_preview()
node_preview in drupal/core/modules/node/node.pages.inc
Generates a node preview.

File

drupal/core/modules/node/node.pages.inc, line 159
Callbacks for adding, editing, and deleting content and managing revisions.

Code

function theme_node_preview($variables) {
  $node = $variables['node'];
  $output = '';
  $elements = node_view($node, 'teaser');
  $elements['#attached']['library'][] = array(
    'node',
    'drupal.node.preview',
  );
  $trimmed = drupal_render($elements);
  $elements = node_view($node, 'full');
  $full = drupal_render($elements);

  // Do we need to preview trimmed version of post as well as full version?
  if ($trimmed != $full) {
    drupal_set_message(t('The trimmed version of your post shows what your post looks like when promoted to the main page or when exported for syndication.<span class="no-js"> You can insert the delimiter "&lt;!--break--&gt;" (without the quotes) to fine-tune where your post gets split.</span>'));
    $output .= '<h3>' . t('Preview trimmed version') . '</h3>';
    $output .= $trimmed;
    $output .= '<h3>' . t('Preview full version') . '</h3>';
    $output .= $full;
  }
  else {
    $output .= $full;
  }
  return $output;
}