login form темизация (очередная) [Решено]

Главные вкладки

Аватар пользователя NX-74205 NX-74205 19 мая 2010 в 17:28

Вроде бы много документации и примеров по этому вопросу. А нет. Все равно возникают вопросы ответы на которые находятся.

Хочу сделать темезированую форму входа

Соответственно в template.php

<?phpfunction a1_theme()
{
  return array(
    'user_login_block' => array(
      'template' => 'user-login',
      'arguments' => array('form' => NULL),
    ),
    'user_login' => array(
      'template' => 'user-login',
      'arguments' => array('form' => NULL),
    ),
    // other theme registration code...
  );
}

function a1_preprocess_user_login_block(&$variables)
{
  $variables['intro_text'] = t('This is my awesome login BLOCK');
  $variables['rendered'] = drupal_render($variables['form']);
}

function a1_preprocess_user_login(&$variables)
{
  $variables['intro_text'] = t('This is my awesome login PAGE');
  $variables['rendered'] = drupal_render($variables['form']);
}?>

В user-login.tpl.php

<?php<p><?php print $intro_text?></p>
<div class="my-form-wrapper">
  <?php print $rendered?>
</div>?>

Очищаю кеш.
Эфекта абсолютный ноль. Уже по всякому пробовал.
Тема: измененная http://drupal.org/project/acquia_marina

Комментарии

Аватар пользователя wazzup wazzup 19 мая 2010 в 21:29
function a1_theme() {
  return array(
    'user_login_block' => array(
    'arguments' => array('form' => NULL),
    ),
  );
}

preprocess в названии функций лишний
вот так попробуйте

function a1_user_login_block($form) {
  $output = '';
  $form['links']=array();
  if (variable_get('user_register', 1)) {
  $form['links']['#value'] =l(t('Create new account'), 'user/register', array('attributes' => array('title' => t('Create a new user account.'))));;
  }
  $form['submit']['#type'] = 'submit';
  $form['submit']['#value']= t('Entrance');
  $form['name']['#title'] = t('Login');
  $output .= drupal_render($form['links']);
  $output .= drupal_render($form);
  return $output;
}
Аватар пользователя NX-74205 NX-74205 20 мая 2010 в 8:11

мимо теметизация не работает...

function a1_theme() {
  return array(
    'user_login_block' => array(
    'arguments' => array('form' => NULL),
    ),
  );
}

function a1_user_login_block($form) {
  $output = '';
  $form['links']=array();
  if (variable_get('user_register', 1)) {
  $form['links']['#value'] =l(t('bla bla bla'), 'user/register', array('attributes' => array('title' => t('Create a new user account.'))));;
  }
  $form['submit']['#type'] = 'submit';
  $form['submit']['#value']= t('vhod');
  $form['name']['#title'] = t('loginsy');
  $output .= drupal_render($form['links']);
  $output .= drupal_render($form);
  return $output;
}

Аватар пользователя NX-74205 NX-74205 20 мая 2010 в 8:30

Решено

function a1_theme() {
  return array(
    'user_login' => array(
      'template' => 'user-login',
      'arguments' => array('form' => NULL),
    ),
    'user_register' => array(
      'template' => 'user-register',
      'arguments' => array('form' => NULL),
    ),
    'user_pass' => array(
      'template' => 'user-pass',
      'arguments' => array('form' => NULL),
    ),
  );
}

function a1_preprocess_user_login(&$variables) {
  $variables['intro_text'] = t('This is my awesome login form');
  $variables['rendered'] = drupal_render($variables['form']);
}

function a1_preprocess_user_register(&$variables) {
  $variables['intro_text'] = t('This is my super awesome reg form');
  $variables['rendered'] = drupal_render($variables['form']);
}

function a1_preprocess_user_pass(&$variables) {
  $variables['intro_text'] = t('This is my super awesome insane password form');
  $variables['rendered'] = drupal_render($variables['form']);
}