views-view-table.tpl.php

Template to display a view as a table.

  • $title : The title of this group of rows. May be empty.
  • $header: An array of header labels keyed by field id.
  • $header_classes: An array of header classes keyed by field id.
  • $fields: An array of CSS IDs to use for each field id.
  • $classes: A class or classes to apply to the table, based on settings.
  • $row_classes: An array of classes to apply to each row, indexed by row number. This matches the index in $rows.
  • $rows: An array of row items. Each row is an array of content. $rows are keyed by row number, fields within rows are keyed by field ID.
  • $field_classes: An array of classes to apply to each field, indexed by field id, then row number. This matches the index in $rows.

File

drupal/core/modules/views/theme/views-view-table.tpl.php
View source
<?php

/**
 * @file
 * Template to display a view as a table.
 *
 * - $title : The title of this group of rows.  May be empty.
 * - $header: An array of header labels keyed by field id.
 * - $header_classes: An array of header classes keyed by field id.
 * - $fields: An array of CSS IDs to use for each field id.
 * - $classes: A class or classes to apply to the table, based on settings.
 * - $row_classes: An array of classes to apply to each row, indexed by row
 *   number. This matches the index in $rows.
 * - $rows: An array of row items. Each row is an array of content.
 *   $rows are keyed by row number, fields within rows are keyed by field ID.
 * - $field_classes: An array of classes to apply to each field, indexed by
 *   field id, then row number. This matches the index in $rows.
 * @ingroup views_templates
 */
use Drupal\Core\Template\Attribute;
?>
<table <?php

print $attributes;
?>>
  <?php

if (!empty($title)) {
  ?>
    <caption><?php

  print $title;
  ?></caption>
  <?php

}
?>
  <?php

if (!empty($header)) {
  ?>
    <thead>
      <tr>
        <?php

  foreach ($header as $field => $label) {
    ?>
          <th <?php

    if ($header_classes[$field]) {
      print 'class="' . $header_classes[$field] . '" ';
    }
    ?> scope="col">
            <?php

    print $label;
    ?>
          </th>
        <?php

  }
  ?>
      </tr>
    </thead>
  <?php

}
?>
  <tbody>
    <?php

foreach ($rows as $row_count => $row) {
  ?>
      <tr <?php

  if ($row_classes[$row_count]) {
    print 'class="' . implode(' ', $row_classes[$row_count]) . '"';
  }
  ?>>
        <?php

  foreach ($row as $field => $content) {
    ?>
          <td <?php

    if ($field_classes[$field][$row_count]) {
      print 'class="' . $field_classes[$field][$row_count] . '" ';
    }
    print new Attribute($field_attributes[$field][$row_count]);
    ?>>
            <?php

    print $content;
    ?>
          </td>
        <?php

  }
  ?>
      </tr>
    <?php

}
?>
  </tbody>
</table>

Related topics