WordPress(
RSS)を好んで使用しますのでソフトウェアとは別にトピックを独立させています
WordPressプラグインContact Form 7のメールフォームのデザインカスタマイズ
カテゴリ » WordPress, カスタマイズ, プラグイン

WordPressのプラグインのContact Form 7というメールフォームプラグインを利用しているのですが、デザインカスタマイズのチュートリアル記事的なものがなかなか見つからなかったので変更ついでに覚書します。
まずはContact Form 7インストール方法から。ご存知の方はここは飛ばしてください。
Contact Form 7のインストール
- Contact Form 7をダウンロードし、解凍
- wp-content/wp-plugins/以下にフォルダごとコピーしアップロード
- 管理画面で有効化
- 設定画面でフォーム作成
メールフォームのスタイリング
僕の方法は多分正しくないと思いますが参考になれば幸いです。Contact Form 7のphpファイルの変更はしていません。
STEP:1
まず、Contact Form 7の設定画面で以下のようにそれぞれの項目にclass属性を付けてあげます。

既に作成してあるのを変更する時は
[text* your-name]
を
[text* your-name class:con]
のようにしてあげればclassが加わります。「*」は入力必須項目を指します。
class名は何でも結構です。僕は「名前」「メールアドレス」「Webサイト」「題名」の入力項目をclass:con、メッセージ本文をclass:messとしました。変更したら一旦保存します。
STEP:2
「名前」「メールアドレス」「Webサイト」「題名」にあてたclass:conをcssでスタイリングします。cssはテーマのcssに記述しました。Contact Form 7のcssに記述するとアップグレードした時に再設定しないといけなくなってしまいます。
記述内容は以下。#wpcf7-f2-p18-o1はメールフォームごとに異なりますのでご自身のメールフォームのソースをチェックしてください。
#wpcf7-f2-p18-o1 .con{
height:17px;
padding:0 0 8px 0;
width:250px;
border:0;
font-size:14px;
background:url(名前やWebサイト項目の背景画像のURLを指定) no-repeat;
color:#fff;
align:left;
}
#wpcf7-f2-p18-o1 .mess{
height:200px;
padding:0 0 15px 0;
width:400px;
border:0;
font-size:14px;
background:url(メッセージ本文項目の背景画像のURLを指定) no-repeat;
color:#fff;
overflow-y:auto;
_overflow-y:hidden; /* IEでスクロールバーを消す為に記述 */
}
サイトに合わせて変更してください。
STEP:3
フォームの背景は画像でも良かったのですが、作るの面倒だったのでcssで噴出しを作りました。
記述は以下。
#box{
width: 450px;
background: #FBA957;
padding: 25px;
position: relative;
}
#box .arrow{
width: 0;
height: 0;
line-height: 0;
border-bottom: 25px solid #FBA957;
border-right: 50px solid white;
position: absolute;
top: -24px;
left: 20px;
}
さらにContact Form 7の管理画面に以下のように変更を加えます。

STEP:4
送信ボタンもついでに変えます。IEだと画像が表示されず使えませんでしたのでハック(html>/**/bodyを使用)。
Contact Form 7の管理画面ではvalue=”送信”が消せなかった(設定画面で消したけどソースには残ってしまう)のでcssでスタイリングします。まず、管理画面で送信ボタンに以下のようにidを加えます。僕は[submit id:b]としました。

cssで「送信」と出てしまうテキストをtext-indentで飛ばして画像ボタンを指定します。cssの記述は以下。
html>/**/body #b { border: 0px; width: 100px; height: 30px; background: url(送信ボタンの画像のURL) left top no-repeat; text-indent: -9999px; /* 「送信」のテキストを飛ばす */ }
テキストが表示されないようにするのに他にいい方法あるのかな?よく調べてません。。。
実装
こんな感じでカスタマイズ完了です。

ここまでで画像の作成時間も含めて30分前後です。ちょっとテストなので画像適当。確認したブラウザはFirefox3.5、GoogleChrome、IE6、IE7です。IEは送信ボタンに画像を使っていません。
以上、WordPressプラグインContact Form 7のメールフォームのデザインカスタマイズ方法でした。ご参考までに。
因みに、スパムメールにお悩みならAkismetを使う事も出来るようですので合わせてご参照下さいませ。
【WordPressプラグインContact Form 7のメールフォームのデザインカスタマイズ】へのコメント 5
トラックバック
お気軽にコメントして下さい
*は必須です
サイト内検索
- WordPressプラグインを使わずに記事ごとにcssを加えられるようにするカスタマイズ
- Webでよく見るアレの落書き・・・
- (3月14日)今日の「簡単海外記事」
- 高いところから地面を見下ろすとこんな感じ
- AmazonアソシエイトのツールはAZlinkが一番シンプルで使いやすい
- 日本語を完璧に使いこなすタイ人デベロッパー・タムタム氏のTwitterサービス3つ
- シンプル、ミニマルなサイトを作りたい時に役立ちそうなアイコンやフォント、ギャラリーなどのまとめ
- WordPressユーザーにお勧め。管理メニューを表示するブックマークレット・WP Toolbar
- 無料でユーザー登録も不要。Webサイトのモックアップを直感で作成、PDFやjpgで保存できるLumzy
- アメリカで宗教団体に属している人の所得の差が分かる(かもしれない)1枚の図
Twitter Counter
ads

Follow me
Bookmark
RSS講読
RSSフィード
ブックマーク
Twitter
Web Tips on Twitter
まとめ記事 on Twitter




いつも貴重な情報ありがとうございます。
Contact Form 7 はものすごく便利なプラグインですし、フォームのカスタマイズって楽しいですよね。
ところで、色盲/色弱の方には赤と黒が同じに見えるらしいので、黒地に赤字はやめたほうがいいかもしれません。
引用
09-10-28 » 7:01 AM »
Takuさん>
コメント有難う御座います
Contact Form 7、便利ですねー!僕もこれ以外は今のところ考えていません
えっ、そうなんですか
始めて知りました・・・貴重な情報有難う御座います!変更しておきますー
引用
09-10-28 » 7:05 AM »