昨日リリースしたCMS運用のための13のシンプル化機能について早速バグが見つかってしまいました。
もともと管理画面モードの判定は甘かったので、もっと良い対処方法がありそうですが、取り急ぎの追加機能とともにv.0.59をリリースしました。

そのほか、わかりずらい箇所やバグ等ありましたら、ご指摘いただけますと幸いです。

13+1のシンプル化機能解説

  1. メールヘッダ(From)を任意に書き換え可能
    [解説]パスワードを忘れた場合のリマインド機能等で送信されるメールの差出人欄がデフォルトだとwordpress@~になってしまうので、そこを任意に変更可能としました。
  2. プロフィール編集をパスワード変更のみに限定
    [解説]CMS運用ユーザは不特定多数を想定していません。またSNS的な機能も冗長ではないかと考えているのでパスワードのみ変更可能としました。(jQueryで無理やり非表示にしているので、一瞬見えてしまう点はご了承ください。)
  3. ダッシュボード左上のWordPressロゴを隠す
    [解説]ゆくゆくはロゴを指定できるように考えています。
  4. ダッシュボード左上のタイトルをすべて表示
    [解説]デフォルトは30文字でカットされてしまうので、すべて表示するように対応しました。
  5. ダッシュボードのフッターを隠す
    [解説]ロゴ等も同様ですが、WordPressがベースであること、WordPressフォーラム等へのリンクを削除しました。
  6. ダッシュボードの「ヘルプ」タブから「ドキュメント」リンクを削除
    [解説]CMSとして運用するためのマニュアルを作って、リンクを貼っておきましょう。
  7. ダッシュボードトップに「現在の状況」ウィジェットのみを表示
    [解説]本来は便利なウィジェットですが、CMS運用担当者にはコンテンツ更新に専念してもらうために不要と判断し、削除しています。
  8. 同ウィジェット下部で表示される「テーマで使用中のウィジェット」「WordPress」バージョンの表示を削除
    [解説]かなり細かい箇所ですが「現在の状況」ウィジェットの下のほうに記載されているリンクや情報を削除しました。
  9. 表示オプションタブを削除
    [解説]ダッシュボードトップや投稿、ページの編集画面右上にある「表示オプション」タブを非表示にしました。さらに細かいですが投稿、ページの編集画面では「カスタムフィールド」等の高度な情報(ウェジェット?)も削除しています。
  10. 投稿/ページ/メディアの一覧で「コメント」列を削除
    [解説]前提として触れていませんが、コメントやトラックバックは現状では不要の方向です。(そこにブログツールを流用する意味があるか・・・ちょっと思案中です。)
  11. ダッシュボードメニューの「コメント」も削除
    [解説]WordPress2.7から左袖に移動し、一部リファクタリングされたメニューの「コメント」を削除しています。
  12. ダッシュボードメニューの「ツール」も削除
    [解説]同様に左袖メニューの「ツール」も削除しています。
  13. ダッシュボードメニューの順番入れ替え(投稿→ページ→メディアの順)
    [解説]上記のメニューを削除していくと、デフォルトの名残として「投稿」→「メディア」→「ページ」の並び順になってしまいますので、「メディア」を1番下に移動しました。
  14. トラックバック送信、ピンバック送信の無効化
    [解説]ディスカッション設定等で回避可能なので不要かも知れません。(今後廃止する可能性もあります。)

使い方

  1. niche-patch.0.59.zipをダウンロード
    (最新版はhttp://typista.it-creates.com/wp-content/uploads/niche-patch.zip)
  2. プラグインディレクトリに解凍
  3. ダッシュボードからアクティベート
  4. ONにしたい機能は「ダッシュボード」→「設定」→「Niche Patch Plugin」から。

その他、バージョン非表示機能、投稿&ページの作成画面で、一番下に「スラッグ」を表示する機能、投稿タイムスタンプのチェック機能、カテゴリー未選択 or 未分類のチェック機能などを追加することができます。

制限事項

  1. 動作検証はWordPress2.7でのみです。(今後明示的に2.7以降のサポートに切り替えていく予定です。)
  2. まだ実装は不十分ですが、Niche PatchはJavaScriptがONの状態でのみ正しく動作します。OFFの場合はサイトトップにリダイレクト処理しています。(今後はリダイレクト先を指定可能なように対応予定)
  3. バージョン(v.0.58)のメインとなるCMS運用のためのシンプル化機能は、オプションがONであると同時に、便宜上「ユーザ作成権限」が無い(つまり管理者でない)場合に動作します。
    ※細かい機能ごとのオプション設定は要望があれば検討します。
  4. wp_list_pages()で実際に表示されるページ一覧は、menu_order(=ページ順序)の次にpost_title(=ページタイトル)の文字コード順のようですので、同じmenu_orderの場合、並び順のパっと見では順番操作できていないように勘違いしやすいので注意してください。(順番操作ボタンを+/-ではなく↑/↓のように1件ずつ確実に入れ替えていく処理も考えましたが、post_statusとの関連でダッシュボードのページ管理一覧を表示しているモードによって隠れているページとの順序性をどうするかという点で仕様を詰め切れそうにないので見送りました。)
  5. 投稿タイムスタンプのチェックは、ページの場合に動作しません。(今後調査します)
  6. 「保存」「公開」ボタンのonclickイベントを利用していますが、他プラグインとの競合は未検証です。(こちらも追って、調査していきます)
  7. なお、本来はonclickイベントへのハンドラ登録ではなく、リスナー登録のほうが美しいようですが、チェックNGの場合にPOST処理を中断する手段の実装にひと手間、ふた手間かかりそうなので、現状はonclickハンドラがすでに登録済みの場合のみ、当ニッチパッチハンドラ実行後(さらにいうと結果がtrueの場合)にコールするようにしています。

改修履歴

[v.0.59]2009.01.28

  1. CMS運用のための+1のシンプル機能リリース
  2. サーバ(PHPバージョン or 設定?)によってはCMSシンプル化機能が動作しなかった不具合(strposの問題?)の修正

[v.0.58]2009.01.27

  1. CMS運用のための13のシンプル機能リリース
  2. ページの場合に「カテゴリチェック無し」 or 「未選択のみ」が不正に動作していた不具合の修正
    Page Category Plus(v.2.2で検証)を利用している場合に、当該オプションがONであれば正しく動作します。

[v.0.51]2009.01.15

  1. WordPress2.7不具合対応(投稿タイムスタンプチェックとカテゴリチェック)

[v.0.50]2009.01.10

  1. ページの表示順操作の対応
  2. テーマディレクトリを隠蔽するためにindex.html生成機能追加

今後の対応

プラグインの配布方法、とくにバージョンアップ時の通知方法を調べる。
その他、思いつきでニッチにふさわしいパッチがあれば、プラグイン実装していく。
日本語決め打ちではなく、多国語対応方法も気長に調べていきたい。
SPaiS WordPress プラグインの作り方(3) ステップ1:翻訳の仕組み