Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz Siriusb #143 üzenetére

    Csak most látom a postodat.

    1.) na, azt semmiképp. :D Csak agyonbonyolítja, meg finoman szólva nem túl szép.
    2.) hát, végül is lehet, ha nagyon akarod.
    3.) $variables["page"]['header']["block_4"]["myfrontpage"] = $variables['front_page'];
    Ennek nem nagyon látom értelmét, ha már ott van a $variables['front_page']. :D
    Azt pedig a $front_page változóval tudod elérni.

    Szerintem értelmesebb egy nagyon egyszerű modullal létrehozni egy blokkot, meg is mutatom, Drupal 7 alatt hogyan tudod ezt megtenni:

    Blokk létrehozása modulból Drupal 7 alatt (legegyszerűbb példa)

    MYMODULE mindenhol behelyettesítendő a saját modulunk nevével.

    1.) MYMODULE.info létrehozása:

    name = Test Module
    description = Description of my test module...
    core = 7.x
    package = MYMODULES

    2.) MYMODULE.module fájl létrehozása (<?php nyitótaggel)

    3.) hook_block_info() implementálása:

    /**
    * Implements hook_block_info().
    */
    function MYMODULE_block_info() {
    $blocks = array();

    $blocks['my_test_block'] = array(
    'info' => t('My test block'), // The name that will appear in the block list.
    'cache' => DRUPAL_CACHE_GLOBAL, // The block is the same for every user on every page where it is visible. (the default is DRUPAL_CACHE_PER_ROLE)
    );

    return $blocks;
    }

    4.) hook_block_view() implementálása:

    /**
    * Implements hook_block_view().
    *
    * Prepares the contents of the block.
    */
    function MYMODULE_block_view($delta = '')
    {
    $block = array();
    switch ($delta) {
    case 'my_test_block':
    $block['subject'] = t('Test block blabla');
    $items = array();
    $items[] = array(
    'data' => l(t('Home'), '<front>'),
    'class' => array(
    'test-block-front-page'
    ),
    'id' => array(
    'test-block-front-page'
    )
    );

    $items[] = array(
    'data' => l(t('Email'), 'contact'),
    'class' => array(
    'test-block-links test-block-email'
    ),
    'id' => array(
    'test-block-links-email'
    )
    );

    $block['content'] = theme('item_list', array(
    'items' => $items,
    'attributes' => array(
    'class' => 'test-block links inline clearfix'
    ),
    'type' => 'ul'
    ));
    break;
    }
    return $block;
    }

    5.) /admin/structure/block oldalon engedélyezni a blokkot.

    Screenshotok a végeredményről:

    ANGOL:
    Drupal 7 block - English

    MAGYAR:
    Drupal 7 block - Hungarian

    NÉMET
    Drupal 7 block - German

    [ Szerkesztve ]

    Sk8erPeter

Új hozzászólás Aktív témák