pegasus2011のブログ
Amebaでブログを始めよう!

アメブロカスタマイズーAjaxMailをアメブロに設置


「AjaxMail」はスクリプトをサーバーにアップロードして使うことになります。
サーバーをお持ちで且つ使った経験のある方には導入はさほど難しいものではありません。
※わたしはScriptをハッスルサーバーにアップロードして利用しています。

以下にその設定手順を説明します。



手順

1.AjaxMailのプログラムを入手する。
  アメブロで利用しますのでver1.2(UTF-8版)をダウンロードします。

2.入手ファイルは圧縮されていますので解凍します。
  展開されたファイルは以下のような構成となっています。
  
ajxmail1

  赤枠で示した「ajaxmail」フォルダーを開くと以下のフォルダー、ファイルがあります。

ajxmail2

3.上記の「ajaxmail」フォルダー内にある「sendmail.php」をサクラエディタあるいはTeraPad
エディタで開いて編集します。

  編集する内容は以下です。
  ○送信されたメールを受け取る自分のメールアドレス
  ○メールフォームへの必須入力項目の設定
  ○メールフォームのタイトルの編集
  ○表示をする、しないの選択

ajxmail3

  上図に示した①~③の部分は、
  ①あなたのメールアドレス
  ②あなたに送信されてくるメールのタイトル
  ③送信終了後にリダイレクトさせたい場合のURL

  赤丸を付した部分は表示をするかしないかの選択です、好みに応じて選択して下さい(0か1)。

  赤の四角で示した部分は、メールフォームの設定項目の内、必須入力項目を指定する部分です。
  わたしは、'お名前','E-mail','内容'の3つを必須入力項目に指定。

  編集が終わったら必ず「UTF-8」エンコードで保存します。

4.編集は上記のファイルだけです。
  編集が終了したらFFFTPなどを使ってサーバーにアップロードします。
  ルートに「AjaxMail」といった名前のフォルダーを作成してアップロードしてもOK。
  なお、「sample.html」はアップロードしなくてよいファイルです。

5.アメブロの記事内で「AjaxMail」を利用する場合、以下のように記述をします。
  (上記した「sample.html」に書かれている内容です)記は、わたしがアメブロで設定している
  内容です。 参考にして下さい。
------------------------------------------------------------------------------------------
<a class="lightview" title="ペガサスへのコンタクト :: このウィンドウを閉じるには右上隅をクリックして下さい。::width:750,height:600" rel="iframe" href="ajaxmailのindex.htmlのURL"><img class="floatright" height="150" width="150" alt="pegasus_ajaxmail" src="設置した画像のURL" /></a>
------------------------------------------------------------------------------------------ 

6.アメブロでAjaxMailを動かすためには、手順4.でサーバーにアップロードしたスクリプト
ファイルのいくつかを外部jsファイルとしてアメブロに読み込むことが必要となります。

  プラグインに以下の必要なスクリプトを記述します。
------------------------------------------------------------------------------------------
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js"></script>
<script type="text/javascript" charset="utf-8">$(document).ready(function(){$("a.moreReader").attr('href','javascript:void(0);').click(function(){$("div." + this.title).slideToggle();});});</script>
<script language="javascript"><!--
window.onload = function(){enThickbox();}
// --></script>
<script type="text/javascript">
(function() {
var codes = document.body.innerHTML.match(/<pre [\w\s:;"=]*class="?eval"?[\w\s:;"=]*>((.|\n)*)<\/pre>/gi);
if (codes == null) return;
for (var i = 0; i < codes.length; i++) {
eval(codes[i].replace(/<\/pre>/i, "").replace(/<pre [\w\s:;"=]*class="?eval"?[\w\s:;"=]*>/i, ""));
}
})();
</script>
<link rel="stylesheet" type="text/css" href="~~/ajaxmail/css/lightview.css" />
<script type="text/javascript" src="http://~~/ajaxmail/js/protoculous-effects-packer.js"></script>
<script type="text/javascript" src="http://~~/ajaxmail/js/lightview.js"></script>
<script src="http://~~/ajaxmail/check.js" type="text/javascript"></script>

------------------------------------------------------------------------------------------

外部jsファイルとして呼び込むものは以下の4つです。
①lightview.css
②protoculous-effects-packer.js
③lightview.js
④check.js

上記コード中で、href="http://~~/ajaxmail/css/lightview.css" のように書いている部分は、
サーバーアップロードした各ファイルのURLの意味です。

以上でアメブロでAjaxMailを動かすことができます。

アメブロカスタマイズ-AjaxMailをアメブロで使う


今回は新たにAjaxを活用したフリーPHPメールフォーム「AjaxMail」を紹介します。
まずは、どんなメールフォームなのか?を体感してみて下さい。



以下の画像をクリックしてみて下さい。「AjaxMail」が起動します。

pegasus_ajaxmail
「AjaxMail」はAjaxとPHPを使ったシンプルでスマートなメールフォームです。 起動させると「LightBox風にフォーム画面が出現してきますが、これって結構インパクトありますね。「ewebのPHPメールフォーム」、「AjaxZip2.0」「AdobeSpry」「Lightview」と様々なソースコードを複合して作り上げられているもので、動作もphpなので重たく感じません。「SHIFT-JIS版」「UTF~8版」「EUC版」が用意されていますので、どんなサイトでも違和感なく使えると思います。

 

個人でも商用でもフリーで使えるというのも素晴らしいところです。
入力項目もhtml編集を加えることで増やすことができます。私は住所入力項目は設定して
いませんが、住所入力を設定している場合、郵便番号からの住所補助機能がついているので
ユーザビリティも優れています。 
こういうメールフォームがフリーで提供されていることに感謝です。

今回、この「AjaxMail」を姉妹アメブロ「ホームページ作成便利ツール」に設置してみましたが 
以下のような動作不良が起きて、ちょっと苦労しました。

■プラグインへの設定をしたものの最初はLightBox風のフォーム画面が出現せず。
 スクリプトの記述に注意を要することがわかりました。
最終的には正常動作するようになりました。

■IE8では動作不安定
 解決するためにIE7互換モードをすることに。「AjaxMail」のindex.htmlにIE7互換とする
ための記述を加えました。 これでIE8でも正常に稼働するようになりました。

■既に設定しているスクリプトとコンフリクトしているものがありました。
① 「メッセージボード、記事下にメールフォーム設置」のスクリプトとは共存できず。
② 「メッセージボードに設置したスライドショー(Simplest Slideshowで作成)」が動かず。
③ 「続きを読む」が動作せず。

と、こんな風に動作不良を引き起こしてしまうスクリプトが複数ありました。
この点は、1つ1つチェックすることが必要になりますが、解決しない場合は・・・・
「AjaxMail」か、これらスクリプトのいずれかを諦めるしかありません。

AjaxMailを最初は「ホームページ作成便利ツール」に設置しましたが、上記の①~③の
動作不良が伴ったため、こちらのブログに移すことにした次第です。

この「AjaxMail」をアメブロに設置する方法については次回の記事で紹介します。
上記の「AjaxMail」は実働していますのでお便りなどありましたらお寄せ下さい。
お待ちしています。