it-swarm-eu.dev

Odstranění divů přidaných renderem a node.tpl.php

Snažím se vytvořit šablonu HTML5 pro Drupal 7, 7) a jsem velmi čistý na čistý kód. Chci plnou kontrolu nad HTML a CSS, které většinou využívám svůj Vlastní vlastní téma. Jinými slovy, mám sadu HTML5 a CSS, kterou chci použít přesně tak, jak je to v Drupalu. Nejsem příliš stopován, jak funguje celá funkce před zpracováním.

Když v mém souboru page.tpl.php použiji „print render ($ page ['content'])“ ', přidá se

<div class="region region-content"> 
    <div id="block-system-main" class="block block-system"> 
        <div class="content">

A pak, když přidám 'print render ($ content)' do uzlu - custom.tpl.php, přidá se

<div class="field field-name-body field-type-text-with-summary field-label-hidden">
    <div class="field-items">
        <div class="field-item even" property="content:encoded">

Nechci žádné z těchto divů. Jak se jich zbavím?

15
Jack McKenzie

ID div a třídy, které vidíte uvnitř $ page ['content'], pocházejí z region.tpl.php> block.tpl.php> node.tpl.php Drupal obsah prochází těmito soubory šablon , každý krok přidá divs.

  • Krok 1

soubor region.tpl.php obsahuje následující kód

       <?php if ($content): ?>
  <div class="<?php print $classes; ?>">
    <?php print $content; ?>
  </div>
<?php endif; ?>

nyní, pokud provedete změny v tomto souboru, bude mít vliv na všechny oblasti vaší stránky. Pokud chcete ovládat pouze oblast obsahu, vytvořte nový název souboru it region - content.tpl.php pouze v tomto vložení souboru

<?php if ($content): ?>

    <?php print $content; ?>

<?php endif; ?>

Tím se zbavíte div vytvořeného pouze pro oblast obsahu.

  • Krok dva

Vytvořte kopii (pokud provedeme změny v bloku.tpl.php, všechny bloky se projeví) bloku.t.t.php a pojmenujte ho blok - content.tpl.php a odeberte nebo změňte divs. Bez divs bude soubor obsahovat následující kód pro výstup obsahu.

<?php print render($title_prefix); ?>
    <?php if ($block->subject): ?>
      <h2 class="block-title"<?php print $title_attributes; ?>><?php print $block->subject ?></h2>
    <?php endif;?>
      <?php print render($title_suffix); ?>
      <?php print $content; ?>

Tím se zbavíte div vytvořeného pomocí bock.tpl.php

  • Krok tři

Nyní upravte soubor node.tpl.php a odstraňte nebo změňte divs. Bez divs bude soubor obsahovat následující kód pro výstup obsahu. > ">

    <?php print $user_picture; ?>

    <?php if ($display_submitted): ?>
      <span class="submitted"><?php print $date; ?> — <?php print $name; ?></span>
    <?php endif; ?>


        <?php
          // We hide the comments and links now so that we can render them later.
        hide($content['comments']);
        hide($content['links']);
        print render($content);
       ?>


    <?php if (!empty($content['links']['terms'])): ?>
      <?php print render($content['links']['terms']); ?>
    <?php endif;?>

    <?php if (!empty($content['links'])): ?>
        <?php print render($content['links']); ?>
      <?php endif; ?>




<?php print render($content['comments']); ?>

Tím se zbavíte všech div a tříd. Nyní můžete obsah zabalit do svých vlastních děl. Prosím, dejte mi vědět, jestli to funguje pro vás.

16
15dk51