いらいらPHP
コードを読めば読むほど嫌いになっていく……。
何故PHP言語を使用しなければならないのか。
使用目的としてはもっぱらBlog投稿した際にページを自動的に生成するためであり、デザイン他の部分については全く必要としていない。ほとんどプラグインも使用しない。したくない。
ブログが広まってからひたすらPHPが使われたことによりWordpressという巨大なCMSが構築されていきテンプレート化され、それらを再利用するのが一番素早くWebサイト構築に最低限必要な機能を追加出来るようになった。なってしまった。もう引き返せない……。
テンプレートも有料化されているものが多くある。私は一度も有料のものは使用したことはない。
でもやはり利点はどうしてもあるから使われる。
Apache2等のWebサーバで動作させることを前提として設計されているので、MySQL/MariaDBとの接続も容易である。
LinuxでWebサーバを公開するためには、Apache、MySQL、PHP言語処理系と、それぞれをインストールしなければならないのだけれども、比較的お決まりの手順が示されているのでどうにか公開することは出来る。
ただ、jQueryが気持ち悪かったのと同じようにPHPも気持ち悪い。書いていると一語一句関数を覚えたくないと思ってしまう。でも出来上がればクオリティは高いものとなるし、他の方法で構築するのは調べるのもまた面倒なのでやはり使用することとなる。なんとも……嫌な気持ちになりながら、それでも使う。仕方がないのだ……。
まだ小規模なものだから良いけれども、大規模なサイトとなればきっと……もっと嫌になるだろうな。
例: ログインユーザー毎に投稿時デフォルトカテゴリを変更する
/wordpress/wp-content/themes/(theme名)/functions.phpに書きます。子テーマを作って、そのテーマの方に書いたほうが良さそうです。
function set_user_default_category($post_ID) { // ログインユーザーの情報を取得 $user_id = get_current_user_id(); // 以下の配列はUserID 1のユーザーはカテゴリ5, 2のユーザはカテゴリ6としている $user_categories = array(1 => 5, 2 => 6); // デフォルトカテゴリを設定 if(array_key_exists($user_id, $user_categories)) { $default_cat_id = $user_categories[$user_id]; } else { $default_cat_id = 1; // デフォルトのカテゴリID } // 投稿にカテゴリを設定 wp_set_post_categories($post_ID, array($default_cat_id)); return $post_ID; } add_action('save_post', 'set_user_default_category');
上記コードは、Blog投稿する人物が複数人居る場合に使えるかもしれないもので、これを設定することでカテゴリ(著者として考えます)毎に絞り込みが出来るようになる。
当サイトの場合、RocheとYoshioとが居て、カテゴリを指定するほどの投稿をする訳ではないので、著者別で絞り込んだほうが良いだろうと思いこのようにした。プラグインを入れてもどうにか出来るとは思うのだけれども、それはそれで余計なことを覚えなければいけないのでコードを書いたほうが良い気がした。参考までに。