画像ブログの構築-その3

前回の続きで、今回は「カスタマイズ」について、つらつらと述べていきます。

3.カスタマイズ

今回画像サイトの構築にあたって一番難しかったのが、「検索」です。

各投稿に対して、二つの属性情報の設定が求められていました。

 

・種別 ⇒ ~類、~科みたいなものです
・地域 ⇒ 日本の地域

 

「種別」と「地域」。属性として、全く意味合いが異なりましたので、カテゴリでの管理はこの時点で、ダメ。また、各投稿に対して、属性の付加はざっくりとこんな感じでした。

 

・種別 ⇒ 各投稿に対して一つ
・地域 ⇒ 画像は色んな地域で撮られているので一つとは限らない。

ま、二つの属性情報を簡単に管理するには、シロウトの私にすれば、「カスタムフィールド」一択だね!となりました。

で、各投稿に対して「種別」と「地域」をAND条件で検索かければいいよね、と最初使用していたのが、

カスタムフィールドサーチ

が、振る舞い的に良い回答は得られず。

サイト全体に「地域」感を出したいとのことで、求められたのが以下です。

1.トップページに地域情報のボタンを配置
2.ボタンを押したらページ遷移をせずに
2-1.背景を地域を連想させるものに変える
2-2.「種別」の第一段階に投稿数を「地域」にヒットした数だけ総数表示

「2-1.」は簡単でした。カスタムフィールドの値をCSSのクラスに登録すればいいだけで解決。

「2-2.」は地域情報を絞り込んで総数表示でしたので、プラグインのSQLをがっつりいじりました。PHPは不慣れでしたので、クエリのデバッグだけでも苦労しました。

「2.」のページ遷移せずに。が難しかった。。。単にクリックしてトップページをリロードするだけでいいかな、と軽く見ていたら、リロードしても欲しい情報であるカスタムフィールドの「地域」の情報が取得できない。

ボタンのURLとして、

http://www.hoge.co.jp/?カスタムフィールド名=helloworld

で「helloworld」が取得できない、ということです。

えらいこっちゃ!となって方々に聞いて、カスタムフィールド名ではなくて、別名で書いて、PHPの処理で内部的に「カスタムフィールド名」の値として扱うというやりかたで対処しました。

【修正前】http://www.hoge.co.jp/?カスタムフィールド名=helloworld

↓

【修正後】http://www.hoge.co.jp/?疑似カスタムフィールド名=helloworld

ふー、やりたいことは簡単なのに、WEBはややこしい。。。

でも、WORDPRESSだけでも結構大きな技術領域だと勉強できましたし、得るものは大きかったです。サイト自体もよりよくしていきたいな、と思います。

次回から全く違う投稿をしていきます。

コメントを残す

メールアドレスが公開されることはありません。