お知らせ

PHPによるWordPressカスタマイズブック2009年9月8日

PHPによるWordPressカスタマイズブック」が発売されました。
WordPressのテンプレートにPHPのプログラムを書いてカスタマイズする方法や、WordPressのデータベースにPHPでアクセスする方法、またWordPressのプラグインの開発方法など、WordPressをより深く活用したい方に最適な一冊です。

他にも多数書籍を執筆しています。
こちらもぜひご覧ください。

FC2ブログでLiteboxを使う

| コメント(7) | トラックバック(2)

ブログ簡単パワーアップ FC2ブログスーパーカスタマイズテクニック拙著「FC2ブログスーパーカスタマイズテクニック」の中で、FC2ブログでLiteboxを使う方法を解説しています。
ただ、書籍が出てからFC2ブログの仕様が変わり、書籍に書いてある手順ではLiteboxを導入することができなくなりました。
そこで、現在の仕様にあわせた導入方法を解説します。

1.Liteboxをダウンロードする

LiteboxはTyler Mulligan氏が作ったJavaScriptで、以下のページで配布されています。

http://www.doknowevil.net/litebox/

このページに接続し、ページを下の方にスクロールしていくと、「Download」の箇所がありますので、リンクをクリックします。
ダウンロードが終わったら、ファイルを解凍しておきます。

2.ファイルのアップロード

litebox-1.0.zipを展開すると、以下のようなフォルダとファイルができます。

├ index.html
├ cssフォルダ
│├ □lightbox.css
│└ ●styles.css
├ imagesフォルダ
│├ ●blank.gif
│├ ●closelabel.gif
│├ image-1.gif
│├ image-2.gif
│├ image-3.gif
│├ ●loading.gif
│├ ●nextlabel.gif
│├ ●prevlabel.gif
│├ thumb-1.gif
│├ thumb-2.gif
│└ thumb-3.gif
└ jsフォルダ
 ├ □litebox-1.0.js
 ├ ★moo.fx.js
 └ ★protype.lite.js

先頭に「●」がついているファイルは、そのままFC2ブログにアップロードします。
ファイルをアップロードし終わると、「ファイルをアップロードしました」と表示され、その後にファイルのアドレスが表示されます。
そのアドレスをコピーして、メモ帳等に貼り付けておきます。

↓ファイルのアドレスの表示
fc2upload.png

先頭に「★」がついている「moo.fx.js」と「prototype.lite.js」は、ご自分のパソコンで、ファイル名をそれぞれ「moofx.js」「prototypelite.js」に変更してから、FC2ブログにアップロードします。
これらのファイルも、アップロードが終わったら、ファイルのアドレスをメモ帳等にコピーしておきます。

先頭に「□」がついている「lightbox.css」と「litebox-1.0.js」は、この後の手順でファイルの内容を書き換えてからアップロードします。

残りのマークがついていないファイルは、このカスタマイズでは使いません。

3.ligttbox.cssファイルの書き換えとアップロード

次に、「ligttbox.css」ファイルをメモ帳等で開いて、内容を書き換えます。

ligttbox.cssの45行目~55行目付近に、以下のリストのような部分があります。

・
・(略)
・
#prevLink, #nextLink{
	width: 49%;
	height: 100%;
	background: transparent url(../images/blank.gif) no-repeat; /* Trick IE into showing hover */
	display: block;
	}
#prevLink { left: 0; float: left;}
#nextLink { right: 0; float: right;}
#prevLink:hover, #prevLink:visited:hover { background: url(../images/prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(../images/nextlabel.gif) right 15% no-repeat; }
・
・(略)
・

赤字の3箇所を、FC2ブログにアップロードしたファイルのアドレスに合わせて書き換えます。
例えば、これら3つのファイルのアドレスが、それぞれ以下のようになったとします。

  • http://blog-imgs-1.fc2.com/f/o/o/foo/blank.gif
  • http://blog-imgs-1.fc2.com/f/o/o/foo/nextlabel.gif
  • http://blog-imgs-1.fc2.com/f/o/o/foo/prevlabel.gif

この場合、前述の部分を以下のように書き換えます。

・
・(略)
・
#prevLink, #nextLink{
	width: 49%;
	height: 100%;
	background: transparent url(http://blog-imgs-1.fc2.com/f/o/o/foo/blank.gif) no-repeat; /* Trick IE into showing hover */
	display: block;
	}
#prevLink { left: 0; float: left;}
#nextLink { right: 0; float: right;}
#prevLink:hover, #prevLink:visited:hover { background: url(http://blog-imgs-1.fc2.com/f/o/o/foo/prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(http://blog-imgs-1.fc2.com/f/o/o/foo/nextlabel.gif) right 15% no-repeat; }
・
・(略)
・

書き換えが終わったら、lightbox.cssファイルをFC2ブログにアップロードします。
また、アップロードが終わったら、ファイルのアドレスをメモ帳等にコピーしておきます。

4.litebox-1.0.jsの書き換えとアップロード

次に、litebox-1.0.jsの中で、以下の3箇所を書き換え、その後でファイルをアップロードします。

4-1.20行目付近の書き換え

litebox-1.0.jsの先頭から20行目付近に、以下のリストのような部分があります。
赤字の部分を、アップロードしたファイルのアドレスに合わせて書き換えます。

・
・(略)
・
//
//	Configuration
//
var fileLoadingImage = "images/loading.gif";
var fileBottomNavCloseImage = "images/closelabel.gif";
var resizeSpeed = 6;	// controls the speed of the image resizing (1=slowest and 10=fastest)
var borderSize = 10;	//if you adjust the padding in the CSS, you will need to update this variable
・
・(略)
・

例えば、アップロード後のファイルのアドレスが、それぞれ以下のようになったとします。

  • http://blog-imgs-1.fc2.com/f/o/o/foo/loading.gif
  • http://blog-imgs-1.fc2.com/f/o/o/foo/closelabel.gif

この場合、前述の部分を以下のように書き換えます。

・
・(略)
・
//
//	Configuration
//
var fileLoadingImage = "http://blog-imgs-1.fc2.com/f/o/o/foo/loading.gif";
var fileBottomNavCloseImage = "http://blog-imgs-1.fc2.com/f/o/o/foo/closelabel.gif";
var resizeSpeed = 6;	// controls the speed of the image resizing (1=slowest and 10=fastest)
var borderSize = 10;	//if you adjust the padding in the CSS, you will need to update this variable
・
・(略)
・

4-2.20行目付近の書き換え

次に、litebox-1.0.jsの先頭から130行目付近に、以下のリストの赤字の行を追加します。

・
・(略)
・
// loop through all anchor tags
for (var i=0; i<anchors.length; i++){
	var anchor = anchors[i];
	if (anchor.getAttribute('href') && anchor.getAttribute('href').match(/jpg$|gif$|png$/) && !anchor.getAttribute('rel')) {
		anchor.setAttribute('rel', 'lightbox');
	}

	var relAttribute = String(anchor.getAttribute('rel'));
・
・(略)
・

4-3.ファイルのアップロード

ここまでが終わったら、litebox-1.0.jsを「litebox.js」というファイル名で保存します。
そして、そのファイルをFC2ブログにアップロードします。
アップロードが終わったら、ファイルのアドレスをメモ帳等にコピーしておきます。

5.テンプレートの書き換え

最後に、FC2ブログのテンプレートを書き換えます。

5-1.</head>タグの箇所の書き換え

まず、HTMLのテンプレートを編集する状態にして、テンプレートの中で「</head>」のタグを探します。
そして、そのタグの直前に、以下のリストの赤字の3行を追加します。
ただし、各ファイルのアドレスは、アップロード先に合わせて書き換える必要があります。

<link rel="stylesheet" href="http://・・・/lightbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="http://・・・/prototypelite.js"></script>
<script type="text/javascript" src="http://・・・/moofx.js"></script>
<script type="text/javascript" src="http://・・・/file/litebox.js"></script>

例えば、これら3つのファイルのアドレスが、それぞれ以下のようになったとします。

  • http://blog-imgs-1.fc2.com/f/o/o/foo/lightbox.css
  • http://blog-imgs-1.fc2.com/f/o/o/foo/prototypelite.js
  • http://blog-imgs-1.fc2.com/f/o/o/foo/moofx.js
  • http://blog-imgs-1.fc2.com/f/o/o/foo/litebox.js

この場合、前述の部分は以下のようにします。

<link rel="stylesheet" href="http://blog-imgs-1.fc2.com/f/o/o/foo/lightbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="http://blog-imgs-1.fc2.com/f/o/o/foo/prototypelite.js"></script>
<script type="text/javascript" src="http://blog-imgs-1.fc2.com/f/o/o/foo/moofx.js"></script>
<script type="text/javascript" src="http://blog-imgs-1.fc2.com/f/o/o/foo/litebox.js"></script>

5-2.<body>タグの書き換え

次に、「<bodygtl」のタグを探して、そのタグに以下の赤字の部分を追加します。
そして、テンプレートを保存します。

<body onload="initLightbox()">

6.記事に画像を入れる

ここまでが終わったら、あとは記事に画像を入れるだけです。
サムネイル画像のimg要素をリンクのa要素で囲み、リンク先を画像のアドレスにします

はてなブックマークの情報

トラックバック(2)

トラックバックURL: http://www.h-fj.com/mt/mt-tb.cgi/1346.

日々流転的備忘録 - Liteboxを入れてみた (2008年9月28日 21:07)

が,当ブログには合わなかったので,元に戻しました。これだけでは何のことか分からないので,少し解説を。  「Litebox」とは,サイトにアッ... 続きを読む

The blog of H.Fujimotoというサイトさまで紹介されていた Liteboxなるもの入れてみた。 大きなままのも結構好きな... 続きを読む

コメント(スレッド2件,コメント7件)

コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。

No.1 keiko : 設置できました。

初めまして。
この1週間ほど、Liteboxの導入を試みていたんですが上手くいかず、
あきらめかけていたところ、こちらの解説を読み何とか設置できました。

丁寧でわかりやすく教えていただきありがとうございました。

4-2で「リストの赤字の行を追加します」という箇所は、他のブログ解説では抜けていた部分で、大変助かりました。
お礼申し上げます。

ひとつ質問ですがよろしいでしょうか?
私はIE6.0で確認しましたが、他のブラウザでもほぼ大丈夫でしょうか?よろしくお願いいたします。

No.2  Author Profile Page: Re:設置できました。

>keikoさん
こんにちは。

Liteboxは、IE6以外だけでなく、いまどきのブラウザなら問題なく表示できます。
ご自分のパソコンにFirefox等の他のWebブラウザをインストールして、表示できるかどうかを確認されると良いと思います。

No.3 かまた : お助け願います。

はじめまして。
FC2ブログスーパーテクニックを購読してLiteboxに挑戦したところ,
上手く動作せずに,こちらの解説を見つけて早速,取り組んでみたところ何故かまだ上手く行きません.

5-1./head>タグの箇所の書き換えの解説の中で,
・・・以下のリストの赤字の3行を追加します。との項がありますが,
私の使っているテンプレートのHTML文には既に
" type="text/css" rel="stylesheet" />
の記述があり,これを解説通りに
link rel="stylesheet" href=http・・・text/css"
に書き換えるとテンプレート自体が動作不良になり,また,
link rel="stylesheet" href=http・・・text/css"
を別に追記した場合テンプレートは正常ですが,Liteboxが未動作のままです。
それ以外の箇所は、解説通りに書き換えたつもりですが、
よいアドバイスをいただけませんか?

No.4  Author Profile Page: Re:お助け願います。

>かまたさん
拙著をお買い求めいただき、ありがとうございます。

ご質問の件ですが、そちらのブログのアドレスをお知らせいただきたく思います。

No.5 匿名 : (無題)

壱さん
かまたです。返信が遅れて失礼しました。
当方のブログアドレスは、以下の通りです。
http://skyscrapernyc.blog45.fc2.com/
宜しくお願いいたします。

No.6  Author Profile Page: (無題)

>かまたさん
そちらのページを拝見したところ、litebox-1.0.jsの書き換えを間違われていました。
以下のリストの赤字で示した「href」が「herf」になっていました(「e」と「r」の順序が逆)。

if (anchor.getAttribute('href') && anchor.getAttribute('href').match(/jpg$|gif$|png$/) && !anchor.getAttribute('rel')) {
No.7 かまた : 動きましたっ!!

>壱さん メリークリスマス!!

アドバイスありがとうございます。
単純なスペルミスでお手を煩わせてスミマセンでした。
おかげさまで正常にLiteboxが作動しまして大喜びです!
また、色々なワザに挑戦してパワーアップしたいと思います。

コメントする