2012年1月6日金曜日

カスタム投稿タイプ、カスタムタクソノミー

う~ん、掲題使って作ってましたが、まだ駄目っぽそうです。
たぶん私の設定がわるいのだと思いますが・・・
これ等枯れていないどころか、WordPress3でリリースされた最新機能(だったかな?)
※ちなみにVer3.3.1–ja 3.2も使いました


functions.php内に設定するカスタム投稿とカスタムタクソノミー各種パラメーター
本やnetの例を使って何通りか試してみたのですが、

記事投稿や、カテゴリー関係、
何をやっても(新規、replace)クリックすると白い画面が出てしまいます。
本当は、登録しました!と出てくるはずなのにね。

が、←で戻ってみると、全て登録や変更は行われていたので、
このまま客に、こうなるけどとりあえず我慢して!
そう言うかな?と思ってましたが、、、やめました。


理由は・・
WordPress側の仕様変更が怖い。
気を付けないとある時突然動かなくなった・・とかHPが表示できない、となりそう。

また、どうもパラメーターの設定をトライアンドキャッチで調べてゆかないと動きが見えないのと、
見えたところで、パラメーターの仕変が怖い(動きが変わる)ので使用中止!

残念です。

でもこういうのがオープンソースの怖い所ですね。
なんだか仕様がかっちり決まらないまま(or仕様がこちらに見えないまま)
結構ラフなUpdateがどんどん入る気がする。
それにWordPress内部は・・・基本的にブラックボックスと考えた方が良いから触れないし。

結局、カテゴリを入れ子にして、ごく一般的なサイトにすることにしました。


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

そういえば、怖い事がありました。WordPress初級者の失敗談です。

 設定 → 一般設定
 「WordPress アドレス (URL)」、サイトアドレス (URL)
 これ等は共に http://~~.com/wp になっています
 私はWordPressを/wp内にインストールしたからです。

しかしHPのルートは.com/wpではなく、.com/にしたい(する)と思います。
その時、サイトアドレス (URL)から/wpを取り除くと、ルートがサイトのアドレスになりますが、
私は間違って「WordPress アドレス (URL)」から/wpを取ってしまいました。
そして保存。

そしたら・・・

当たり前ですが管理画面開こうとするとエラーになり開けなりました!
WordPress本体のプログラム群をインストールした場所の「情報だけ」変更してしまったので(~.com/)、WordPressが実際の場所(~.com/wp)を見つけられなくなったからです。
ログインページが見つからないなどとメッセージが出ます。

これにはちょっと焦りました。

まさか再インストール!?今までの変更がおじゃん!?と焦りましたが。
冷静に考えDBのテーブル内のデータを触ってみたところ無事に管理画面が出るようになりました。


復旧方法は、phpmyadminを使って、WordPressのDBを開く
wp_optionsと言うWordPressが設定情報の保管用に使っているテーブルがあるのでクリックし、表示タブをクリックして開くと、200レコード近くの設定情報が保管されている

その中のカラム option_name を見てゆくと siteurl があり、option_valueが「http://~~.com」となっていたので、これの最後に /wp を追加し「http://~~.com/wp」として保存。
これで正しいWordPressをインストールしたディレクトリを指定し直す事ができ、ことなきを得ました。
危なかった・・・

homeはワードプレスのホームディレクトリ(url)の場所、blog_charsetがUTF-8になっていたりと、色々な情報が入っている、重要で面白いテーブルです。
設定画面で色々変えると何処かに保管されているので、壊れるの覚悟で色々遊んでみても面白いと思います。

生データの編集は鉛筆マークを押すと、編集モードになるので変更して保管(実行するボタンクリック)。

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

WordPressの良い所は、DBの構造が非常に簡単なこと。
普通ならぐちゃぐちゃ状態でしょうが、これは大変良い事です。設計者>素晴らしい

DBは多分デザイナーだと不明と思いますが、
暇な時にでも中身のデータを見たり、いじったり!(壊れるかもしれないけど)遊んだ方が良いです。
すると机上ではなく、実際にどこ何が入っているか見えますし、何したらどうなるかとか、これやると壊れるとか実際にわかりますので。

頭でなく、体で覚える非効率な方法ですが、実はこういうのがトラブル時に役立ったりします。
トラブル時の焦った状態だと、冷静になれない事が多く(客のプレッシャー、隣で仁王立ち「今すぐ直せ!」など)。冷静でない場合は頭で覚えた操作はあまり役に立ちません(焦って思い出せない)。

ところが体で覚えた操作はこの時大変役に立ちます。無意識で手が動かせるからです。
新人の頃はシステム開発の時に、よく色々いじって遊んでました。
誤って壊して始末書もありますが、損害賠償に発展しクビになった人もいるので注意が必要ですが。

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

あと、初級者の私には嬉しい発見をしました。
普通常識なのかな・・?

/WPディレクトリにWordPressをインストールし、サイトのルートも/wpにしていて、使っているテーマファイルと、実際にTOPページが入っているwwwルートの場所が異なっているので、
(全てにテーマファイルを使用しておらず、TOPやプロダクトの拡張子はhtmlのままで、中にWprdPressタグや関数を書いて表示させている)
各種テーマファイル内で指定する相対ディレクトリの位置関係が良くわからなかったのです。
例えばsingle.phpで指定している画像ファイルを何処に置けば良いの?とか。

そしたらこれって相対ディレクトリー指定の最初に / を付けると上手くいくのですね!
 これまで : images/~.gif
 つけた  : /images/~.gif
つけたらhttp://~~.com/images/~.gif と、見れるようになりました。
1日嵌っていたので見つけたときは喜びました。

/ をつけないと、記事ページを開いたときに、
その記事ページurlの最後に/images/~.gifがついてしまい、
当然そんなディレクトリーは存在しないので画像が×に。



ただ・・・
これもWordPressの仕様変更が怖いです。
相対ディレクトリーに対する/の仕様が変わったら、画像全滅です。
絶対urlにすれば良いですが、普通は相対url指定ですもんね。

それにテーマの相対urlこれって、なんだか本に書いてる事と上記の操作は違う気がします。
正しい運用方法は設定画面でサイトアドレス をwwwルートにするのが正しいと思いますが、WordPressにルートを色々いじくられたくないのでそうしています。
ただこうするとイメージファイルがダブってしまうので、こうするとダブらなくなるので良かったと思ってますが、本当に正しい指定方法なのか?調べないとですね。

こういう突然の仕変はマイクロソフトが得意ですが、
・・・先日もexcelのグラフがいきなり壊れた・・のはMSのアップデートが原因。


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

と、こんな感じで使っていると、そのうちWordPressの事が好きになるのでしょうね。
ただ・・・
私はソフト屋なので、WprdPressを使うようなHPの仕事はない!です。
ただ1回のHPリニューアルの為にWordPress覚えた今回は、費用対効果としては最悪です。

が、一般常識としてのWordPress情報を入手できるので良しとしてます。
でも今の所、なんだかややこしいですけど、WordPress。。


_

2012年1月2日月曜日

WordPress

ソフト屋が、他人の作ったプログラムを使うのは、少々辛いものがあります。
・・なんでこうしないの?とか、何でそんな使いづらくしてるの?とか、裏が見えてしまいます。

今回知人店舗のHPリニューアルをやる事になり、
WordPressを使う事になったので、仕方なく?利用者側として使ってます。


WordPressはブログシステムと思われてますが、
エンドユーザーに動的更新可能な機能を提供するシステムです。
エンドユーザーにブログ投稿機能を使わせ動的更新機能を与え、デザイナーはいかにそれを感じさせない様HPを作ってゆく。

デザイナーならテーマカスタマイズするのは当たり前で、ちゃかちゃか美的HP作ってしまいます。流石!


が、非常にまれにjsやPHPに首を突っ込んでいるデザイナーを見かけます。
プログラム基礎も分からず適当にやって取り敢えず上手くいっているようなケースで、デザインはプロでもプログラムは 『 素 人 』 ですので、かなり危険な行為と思います。

デザイン業界はMACユーザが多い事からセキュリティーにさほど関心を寄せず。
興味に流され専門外分野にまで首を突っ込まない事をお勧めします。
ホント後で痛い目みますよ。

※これは本物のPHPWebアプリや自作JSの事で、
  WordPressで作ったサイト内phpなら実害出ないので問題ないと思います


そのWordPressですが、数々のバージョンUPにより、
管理機能のカスタマイズもかなり可能になってきました。

優秀なプラグインも多数存在していますし、
お客(ユーザー)は使い易くカスタムされた管理画面より、情報を発信することが可能になっています。

今回、カスタムポストタイプ、カスタムタクソノミーと言う、
新しい管理画面カスタマイズ機能もその一部ですが、面白いですし、結構楽です。

viewばかりに力を入れることが多いですが、
管理画面のカスタマイズ性を向上させる機能追加は、
お客(ユーザー)にとても優しいシステムになります。


またDBの構造が大変シンプルで、
認証等絡む面倒な管理基本機能はWordPressに任せ、
ユーザーには投稿のみ使わせ、
View部分で直接SQLを発行して表示させるプログラムを書く。
その部分のみ汎用化してシステム化を行い他案件に用いても良いかも知れません。


ただ・・拡張子がhtmlでなくphpになる事が、私的には気に入らないですね。
また動的ページはSEOを工夫しないとイケマセンし、
商品UPしてSEO上がる時代でないですし、集客できないHPは死にコンテンツです。プログラマーもデザイナーも、作業の20%はSEO対策に時間を使うべきです。

全工数の1/5とは、とても大きな工数ですよね・・・。
しかし死にコンテンツには何の価値もありませんから。


もう少しいうと、WordPressの管理画面もあまり使いやすいとは思えず、
誰にでも汎用的な管理画面が必要とは思いませんので、
いっそ通常通り自作(通常のWebシステム化)するのも良いかも知れませんね。

ただ・・・すぐこういう発想をする事がシステム屋の悪い癖です。
長いモノに巻かれたくない人々の集まり、ですかね?
良くないですね。私を含めて。


この本がWordPress素人の私にも分かり易かったです。
簡単すぎず、突っ込み過ぎていない。
取り敢えずWordPressの基本部分を抑えれば、プログラマーであれば後はどうにでも出来ます。



※上記はアフリエイトですので、嫌いな方は検索から行って下さい。


_