CMS, Coding

Drupal’s default template rendere

This are the directory for theming drupal website explore and go ahead. You can also learn more in lynda tutorials.

Go to module/system/page.tpl

page.tpl to access and edit and add a variable files.

Drupal’s default template renderer is a simple PHP parsing engine that includes the template and stores the output. Drupal’s theme engines can provide alternate template engines, such as XTemplate, Smarty and PHPTal. The most common template engine is PHPTemplate (included with Drupal and implemented in phptemplate.engine, which uses Drupal’s default template renderer.

 

Example Code:

Code

function hook_theme($existing, $type, $theme, $path) {
  return array(
    'forum_display' => array(
      'variables' => array(
        'forums' => NULL,
        'topics' => NULL,
        'parents' => NULL,
        'tid' => NULL,
        'sortby' => NULL,
        'forum_per_page' => NULL,
      ),
    ),
    'forum_list' => array(
      'variables' => array(
        'forums' => NULL,
        'parents' => NULL,
        'tid' => NULL,
      ),
    ),
    'forum_topic_list' => array(
      'variables' => array(
        'tid' => NULL,
        'topics' => NULL,
        'sortby' => NULL,
        'forum_per_page' => NULL,
      ),
    ),
    'forum_icon' => array(
      'variables' => array(
        'new_posts' => NULL,
        'num_posts' => 0,
        'comment_mode' => 0,
        'sticky' => 0,
      ),
    ),
    'status_report' => array(
      'render element' => 'requirements',
      'file' => 'system.admin.inc',
    ),
    'system_date_time_settings' => array(
      'render element' => 'form',
      'file' => 'system.admin.inc',
    ),
  );
}

This are the useful path_variables that you need to get familiar with as you go further in drupal

  • $base_path: The base URL path of the Drupal installation. At the very least, this will always default to /.
  • $directory: The directory the template is located in, e.g. modules/system or themes/bartik.
  • $is_front: TRUE if the current page is the front page.
  • $logged_in: TRUE if the user is registered and signed in.
  • $is_admin: TRUE if the user has permission to access administration pages.

Site identity:

  • $front_page: The URL of the front page. Use this instead of $base_path, when linking to the front page. This includes the language domain or prefix.
  • $logo: The path to the logo image, as defined in theme configuration.
  • $site_name: The name of the site, empty when display has been disabled in theme settings.
  • $site_slogan: The slogan of the site, empty when display has been disabled in theme settings.
  • $hide_site_name: TRUE if the site name has been toggled off on the theme settings page. If hidden, the “element-invisible” class is added to make the site name visually hidden, but still accessible.
  • $hide_site_slogan: TRUE if the site slogan has been toggled off on the theme settings page. If hidden, the “element-invisible” class is added to make the site slogan visually hidden, but still accessible.

Navigation:

  • $main_menu (array): An array containing the Main menu links for the site, if they have been configured.
  • $secondary_menu (array): An array containing the Secondary menu links for the site, if they have been configured.
  • $breadcrumb: The breadcrumb trail for the current page.

Page content (in order of occurrence in the default page.tpl.php):

  • $title_prefix (array): An array containing additional output populated by modules, intended to be displayed in front of the main title tag that appears in the template.
  • $title: The page title, for use in the actual HTML content.
  • $title_suffix (array): An array containing additional output populated by modules, intended to be displayed after the main title tag that appears in the template.
  • $messages: HTML for status and error messages. Should be displayed prominently.
  • $tabs (array): Tabs linking to any sub-pages beneath the current page (e.g., the view and edit tabs when displaying a node).
  • $action_links (array): Actions local to the page, such as ‘Add menu’ on the menu administration interface.
  • $feed_icons: A string of all feed icons for the current page.
  • $node: The node object, if there is an automatically-loaded node associated with the page, and the node ID is the second argument in the page’s path (e.g. node/12345 and node/12345/revisions, but not comment/reply/12345).

Regions:

  • $page[‘header’]: Items for the header region.
  • $page[‘featured’]: Items for the featured region.
  • $page[‘highlighted’]: Items for the highlighted content region.
  • $page[‘help’]: Dynamic help text, mostly for admin pages.
  • $page[‘content’]: The main content of the current page.
  • $page[‘sidebar_first’]: Items for the first sidebar.
  • $page[‘triptych_first’]: Items for the first triptych.
  • $page[‘triptych_middle’]: Items for the middle triptych.
  • $page[‘triptych_last’]: Items for the last triptych.
  • $page[‘footer_firstcolumn’]: Items for the first footer column.
  • $page[‘footer_secondcolumn’]: Items for the second footer column.
  • $page[‘footer_thirdcolumn’]: Items for the third footer column.
  • $page[‘footer_fourthcolumn’]: Items for the fourth footer column.
  • $page[‘footer’]: Items for the footer region.

 sources: https://api.drupal.org/api/drupal

https://api.drupal.org/api/drupal/7/search/page.tpl.php

Add your comments

Loading Facebook Comments ...
Loading Disqus Comments ...