web-dev-qa-db-ja.com

テーマログインページ--user--login.tpl.php

ログインユーザーページのテーマを設定しようとしていますが、何か不足しているようで、それが何なのかわかりません。

これが私がしたことです:

このコードをtemplate.phpに追加しました。

 function mxblog_theme(){
 $ items = array(); 
 //カスタムuser-login.tpl.php 
 $ items ['user_login'] = array(
 'render element' => 'form'、
 'path' => drupal_get_path( 'theme'、 'mxblog')。 '/templates',
' template '=>' page--user--login '、
' preprocess functions '=> array(
' mxblog_preprocess_user_login '
)、
); 
 return $ items; 
} 

これは、ページでレンダリングしようとしている--user--login.tpl.php

   print drupal_render($ form ['name']); 
 print drupal_render($ form ['pass']); 
    print drupal_render($ form ['form_build_id']); 
 print drupal_render($ form ['form_id']); 
 print drupal_render($ form ['actions']);
3
Kitty77

Page--user--login.tpl.phpを使用する場合、フォームだけでなくページテンプレート全体をオーバーライドするため、ユーザーログインフォームを手動でフェッチする必要があります。

これを(他のマークアップとともに)テンプレートに直接含めることができます。

print drupal_render(drupal_get_form('user_login'));

または、mxblog_preprocess_user_login()関数で次の形式を返す必要があります。

function mxblog_preprocess_user_login(&$variables){
  $variables['form'] = drupal_get_form('user_login');
}

次に、テンプレートであなたが望むようにできるはずです:

print drupal_render($form['name']);
print drupal_render($form['pass']);
print drupal_render($form['form_build_id']);
print drupal_render($form['form_id']);
print drupal_render($form['actions']);
1
tobynew

あなたの答えてくれてありがとう:)興味がある人のために、ここに私がやったことがあります:

User-login.tpl.php(単一の「-」に注意)を作成してから、背景画像を追加しました。

.page-user-login {position:fixed;左:0;上:0;幅:100%;高さ:100%;

背景:url( 'xxx/login_BG_rezised.jpg')繰り返しのない中心が修正されました。背景サイズ:カバー;

}

<div class="login-page">
<form class="login-form">

<span class = "login-form-info"> Inscription rapide et GRATUITE. </span>
 <input type="text" placeholder="Nom utilisateur" name="name" id="edit-name" required="required" class="form-text required"/>
 <input type="password" placeholder="Mot de passe" name="pass" id="edit-pass" required="required" class="form-text required" />

<input type="hidden" name="form_id" id="edit-user-login" value="user_login"  />
<input type="submit" name="op" id="edit-submit" value="Connectez-vous" class="form-submit" />

<p class="message">Pas de compte? <a target="_blank" href="https://xxx/user/register">Créez votre compte</a></p>
<p class="message">Mot de passe oublié? <a target="_blank" href="https://xxx/user/password">Renvoyez le moi</a></p>

フォームにcssスタイルを追加して、私が望む方法で表示できるようにしました。

0
Kitty77