毎日モザイク

White Room Layout Works

2009-04-23T06:51:47+09:00 [Thu]
--> [労働]

MDComicsNeo進捗状況。

screenshot

会社のMDComicsNEOシリーズのホームページを作ってます。まだやってんのかw。と笑われ風ですが、紙と違って、なかなか諦めがつかないのが人情というものです。

一応、形になったところで、データ入力を始めたんですが、中身が入ってくると、いろいろいじりたくなるのがCMS系の宿命。ダミーデータではいまいち伝わりきらないんですよね……。

で、色々要望を満たすために、プラグインを探して追加したり、テンプレートタグをいじったり、PHP書いたりして、なんとか要求仕様を満たしました。WordPressで遊んできた甲斐があったというものです。

画像は、制作中の画面です。権利的に塩梅が悪そうなところはGIMPでモザイクかけました。

見た目、どうってことない、ありきたりなものですが、トップページには、表紙画像をトリミングしたものがあって、これにはlightboxが仕込んであって、トリミングなしの大きな画像が出るようになっています。

このトリミングされたサムネールはScissorsを使って作っています。

間違いなく同じ大きさになるように、設定→メデイアで、サムネイルのサイズを指定して、下にある、「サムネイルを実寸法にトリミングする (通常は相対的な縮小によりサムネイルを作ります)」にチェック。普通の使い方では非常に鬱陶しい機能ですが、Scissorsと組み合わせて使うと、常に同じ形のサムネイルを好きなようにトリミングして作れるので、便利になります。

と、ここまでは簡単なんですが、「詳細ページへ」っていう地味なボタンをクリックした先は、ふつうに、<!–more–>タグで区切ったpermalinkに飛ぶだけなんですが、飛んだ先では、大きな表紙画像が出したい。他にも、既刊のリスト表示も作ったんですが、そちらは、トリミングなしの小さな表紙画像を並べたい。

これは、デフォルトの機能ではできません。プラグインも探しましたが、いい塩梅のが無くて……。

仕方ないので、画像のリンクをそれぞれ、カスタムフィールドに入れ、Get Custom Field Valuesを使ってイメージタグを生成という手口で、使うテンプレートごとに表示するサムネールを変更するようにしました。

この辺は標準状態で3種類のサムネールを勝手に作ってくれるので、便利です。

トップページは3〜5件だけ表示して、リスト表示は20〜50件ずつ表示したいってことになったので、デフォルトを40件出力(4行*10列)にして、index.phpに、

<?php $paged = get_query_var('paged'); ?> /* これを忘れると正しく改ページしない */
<?php query_posts('&posts_per_page=5&paged='.$paged);?>
<?php if (have_posts()) :?>

を書いて終了。

ひとまず、動くようにはなっていますが、もちょっとテスト。さらに要求もあるだろうしw