SPaiS Inc. >プロダクト - Product | WordPress > wp.Vicuna テーマ

Mar 14, 2010

wp.Vicuna テーマ

WordPress テーマ wp.Vicuna 2.0 開発版を配布しています。

序文

開発版は一部挙動が不安定な場合があります。
ご了承の上、ダウンロードして下さい。
バグ報告、ご要望などは http://vicuna.jp/forum/ までお願いします。

動作環境

WordPress 2.9 以降のバージョンで使用して下さい。

ライセンス

従来の wp.Vicuna と同様です。
詳しくは http://wp.vicuna.jp/ を確認して下さい。

対応

ご質問、バグ報告などはコメント、もしくはお問い合わせよりお願いします。

ダウンロード

リリースノート

2010/04/06 - wp.Vicuna - 2.0.3 beta - 145.37 KB
  • 検索結果ページの HTML を修正
  • サイドバーの属性を修正
  • タグページのテンプレートを修正
  • 設定ページをタブ化
  • カラーを追加
2010/03/19 - wp.Vicuna - 2.0.2 beta - 108.5 KB
  • グローバルナビゲーションの位置、説明文の表示が保存されないバグを修正
  • 単一ページのタイトルが正しく表示されないバグを修正
  • コメントの投稿にログインが必要な場合、コメントフォームではなくログインページへのリンクを表示する
  • ページングの HTML が正しく表示されないバグを修正
  • 最近の反応、最近のコメント、最近のピンバックとトラックバックのウィジェットのキャッシュが正しく削除されていないバグを修正
  • 記事の投稿者の表示、非表示を切り替える機能を追加
  • 自動でコメントを閉じた場合にリンクに (Close) が表記されないバグを修正
2010/03/15 - wp.Vicuna - 2.0.1 beta - 107.5 KB
  • wp.Vicuna のクラス群のインスタンスを生成するメソッドでリファレンスに関する notice が出ていた点を修正。
  • sidebar.php の wp_list_cats() を wp_list_categories() に変更。
  • カレンダーウィジェットのキャッシュを翻訳前で保存しておき、キャッシュ取得後に翻訳するよう変更。
  • アーカイブリンクのキャッシュを言語ごと行うよう変更。
2010/03/13 - wp.Vicuna - 2.0.0 beta - 107.44 KB
  • ベータリリース

wp.Vicuna 2.0 の新機能

新しくなった wp.Vicuna にはいくつかの機能が追加されました。

テーママネージャー

wp.Vicuna ext に実装されていたいくつかの設定を行えるよう、管理画面にテーマ管理機能が追加されました。

レイアウトマネージャー

管理画面のレイアウトマネージャーでは、実際のブログを確認しながらレイアウトの編集が行えるようになりました。

スタイルシートの自動読み込み

スキンディレクトリにあるスタイルシートは自動で読み込まれるようになりました。

キャッシュ

カレンダーウィジェットやアーカイブリストなど、いくつかの重い処理は自動的にキャッシュされるようになりました。

カラー

Adobe kuler のカラー情報を使ってスキンに色付けができるようになりました。

インストールと使い方

wp.Vicuna をダウンロードしてテーマをアップロードして下さい。
アップロードしたテーマを有効化すればテーマのインストールは完了です。

テーママネージャー

管理画面のツールバーに追加された Vicuna の項目からテーママネージャーにアクセスします。
テーママネージャーでは wp.Vicuna の言語とタイトル、ページングの設定が行えます。
ページングは wp.Vicuna 2 で新たに追加された設定で、従来の「新しい記事、古い記事」というページングと新たに追加されたページ番号をリストアップするページングのどちらかを選べます。

また、wp.Vicuna 2 の機能の多くは wp.Vicuna.ext を参考に作られており、wp.Vicuna.ext の設定を引き継ぐ事が出来ます。
wp.Vicuna.ext の設定を引き継ぐと、それまで wp.Vicuna 2 で設定した内容は wp.Vicuna.ext の設定で上書きされ、元に戻すことは出来ません。

レイアウトマネージャー

wp.Vicuna.ext に実装されていたレイアウトの設定を、より直感的に操作できるよう新たに作られたのがレイアウトマネージャーです。
実際のブログ画面を確認しながらレイアウトに関する各種の設定が行えるようになっています。
設定項目を変更するとページ下部にある見本がダイレクトに切り替わりますが、変更を保存しない限り実際のブログに設定が反映されることはありません。
また、各テンプレート(カテゴリアーカイブや検索結果画面など)をそれぞれ表示できるよう、見本部分にボタンを配置しています。
確認したいテンプレートのボタンをクリックして切り替えて下さい。

Vicuna
http://vicuna.jp/
Vicuna :: Board Index
http://vicuna.jp/forum/

技術的なお話

以下は通常使用する上では必要の無い情報です。
開発者、スキン制作者、または興味津々丸な方向けの wp.Vicuna 2 の技術情報です

ファイル構造

従来の wp.Vicuna ではスキンをテーマディレクトリに置いていましたが、wp.Vicuna 2 では新たに skins ディレクトリを作成し、その中へスキンファイルを設置しています。レイアウトマネージャーで選択できるスキンは、この skins ディレクトリに設置したスキンが対象となります。
また、スキンとしての認識には特別な配慮を設けておらず、skins ディレクトリにある先頭がドット以外のディレクトリをスキンとみなしています。

スタイルシートの自動読み込み

wp アクションにフックする形で設定されたスキンのディレクトリを走査してスタイルシートを検索し、見つかったスタイルシートを自動的に HTML に読み込ませています。従来のように import.css を読み込む必要が無くなり、レガシーなブラウザにおける「HTML を完全にロードしてからスタイルシートを読み込んでしまう問題」を解決しています。
また、style.php で読み込んだスタイルシートがキャッシュされない問題も同時に解決しています。
スキンのスタイルシートは一度検索されると、WordPress のオプションとして保存され、次回以降は保存されたオプションから読み込むスタイルシートを判別します。
このオプションはレイアウトマネージャー画面で設定内容を保存するたびに削除され、再度スタイルシートの検索が行われるようになっています。

キャッシュ

wp.Vicuna で長年ネックとされてきた処理の重さを解消すべく、新たに wp.Vicuna 独自のキャッシュ機構を設けました。
インターフェースは WordPress コアから提供されているオブジェクトキャッシュ(WP_Object_Cache クラス)と似ていますが、キャッシュした内容を WordPress のオプションとして永続的に保存しています。autoload オプションとして保存するため、データベースへのアクセスは減りますが、メモリにキャッシュしたデータを展開しているため、余りにも大きなキャッシュを行うには向いていません。
また、キャッシュ対象の HTML をリクエストされた時点でキャッシュするため、今後は各言語ごとにキャッシュするなどの処理を追加する必要があるかもしれません。
現在キャッシュしているのはカレンダーウィジェット、タグクラウド、日付アーカイブそれぞれの HTML です。
タグクラウド、日付アーカイブはそれぞれ単一の HTML をキャッシュしていますが、カレンダーウィジェットの HTML は月ごとにキャッシュしています。
尚、記事やコメントを投稿、削除するなどのアクションにキャッシュ削除メソッドがフックされています。

カレンダーウィジェット、タグクラウド、日付アーカイブはそれぞれキャッシュグループとして、独立したレコードとしてデータベースに保存されており、カレンダーウィジェットは年月をキーとした連想配列として定義されています。
このように、現状では運用期間が長期にわたるブログの場合、リクエストのたびにキャッシュされたカレンダーウィジェット全てが展開されるという富豪的な実装になっているため、将来的にはこの部分も見直す必要があるかも知れません。
2010/03/15 追記
カレンダーウィジェットは翻訳前の HTML をキャッシュし、取得したキャッシュを最後に翻訳するよう変更しました。
また、アーカイブリンクは各言語ごとにキャッシュするよう変更しました。

テンプレートファイル

テンプレートファイル上に散在していた wp.Vicuna の処理を極力アクションやフィルタにフックさせ、テンプレートをシンプルに作り変えました。
wp.Vicuna 2 はそれまでのバージョンの出力される HTML を極力崩さないよう、ほぼゼロから作り直していますが、HTML コードのインデントは現時点で考慮していません。無駄に処理が重くなってしまう点と、WordPress 本体もインデントを考慮していない部分が多くあることから出力される HTML コードの成型は今後も検討される可能性は低いです。処理が重くならない程度に考慮する可能性もあるかもしれませんが、優先順位は低いです。

設計

wp.Vicuna 2 は5つのクラスと、4つのクラスを束ねる1つのクラスにより実装されています。
ウィジェットとテーマと設定と管理画面上での AJAX リクエストを処理する4つのクラスとそれを束ねる Vicuna クラス、管理画面の設定ページを処理する VicunaPager クラスです。
Vicunaクラス以外はシングルトンパターンで実装しており、インスタンスは Vicuna、もしくは VicunaPager クラスの静的な変数に生成されています。
PHP4 でも動くことを前提としているため、アクセス制限などは行っていません。
プラグインから wp.Vicuna にアクセスするような際には Vicuna::config() などのインスタンス取得メソッドでインスタンスを参照して下さい。

コメント:0

Comment Form
入力内容を保存しますか?

トラックバック:8

Trackback URL for this entry
http://spais.co.jp/%e3%83%97%e3%83%ad%e3%83%80%e3%82%af%e3%83%88-product/wordpress/wp-vicuna-%e3%83%86%e3%83%bc%e3%83%9e/trackback/
Listed below are links to weblogs that reference
wp.Vicuna テーマ from SPaiS Inc.
pingback from wp.Vicuna 2.0 開発バージョンをリリースしました | SPaiS Inc. 10-03-14 (日) 12:32
[...] wp.Vicuna 2.0 開発バージョンをリリースしました wp.Vicuna テーマ | SPaiS Inc. にて wp.Vicuna 2.0 の開発バージョンを公開しています。 安定版リリースに向けて、動作報告、バグ報告などにご協 [...]
pingback from wp.Vicuna 2.0.1 にバージョンアップしました。 | SPaiS Inc. 10-03-15 (月) 13:28
[...] にバージョンアップしました。 VicunaWordPressWordPress テーマプロダクト wp.Vicuna テーマ | SPaiS Inc. にて wp.Vicuna 2.0 の開発バージョンを公開しています。 wp.Vicuna 2.0.1 [...]
pingback from ほとめき # プロジェクト ブログ - WordPressの「テーマ選び」がたくさんアリすぎな件。 10-03-17 (水) 0:19
[...] 」ってのに 興味津々なので、ちょっと試してみることに。 WordPress テーマ wp.Vicuna 2.0 ベータ版 http://spais.co.jp/%E3%83%97%E3%83%AD%E3%83%80%E3%82%AF%E3%83%88-product/wordpress/wp-vicuna-%E3%83%86%E3%83%BC%E3%83%9E/ [...]
pingback from [WordPress] wp.Vicuna 2.0.2 にバージョンアップしました。 | SPaiS Inc. 10-03-20 (土) 1:08
[...] にバージョンアップしました。 VicunaWordPressWordPress テーマプロダクト wp.Vicuna テーマ | SPaiS Inc. にて wp.Vicuna 2.0 の開発バージョンを公開しています。 wp.Vicuna 2.0.2 [...]
pingback from ワードプレスにてブログ開始 - 幻想生活フォトグラファー 10-06-16 (水) 15:45
[...] 。今 回は、テーマを新たに入手する事無く、公式にvicunaが入っていますが、最新のwp.Vicuna – 2.0.3 betaをダウンロードし、テーマをアップロード。アップロードしたテーマを有効化すれ [...]
pingback from スピーカーのプレゼン資料及び関連リンク | WordCamp Yokohama 2010 10-06-20 (日) 13:43
[...] wp.Vicuna meets SPaiS Inc. ブログ記事+プレゼン資料: WordCamp YOKOHAMA 2010 で wp.Vicuna について話してきました | SPaiS Inc. 関連URL:wp.Vicuna 開発版 | WordPress テーマ | SPaiS Inc. [...]
pingback from レンタルサーバ試用評価(hostmonsterとxserver編) - blog.yuco.net 10-07-06 (火) 11:28
[...] 前のエントリでは、サーバがアメリカにあるせいか読み込みが遅いと書きましたが、使っていたWordPressのテーマが重かったせいもあるようで、テーマをwp.Vicuna 開発版に変えたらかなり軽くなったので、ページ読み込みという点ではすごく不満ではなくなりました。 [...]
pingback from Vicunaのメモ | WhiteMix 10-07-07 (水) 11:49
[...] ma38su.org – wp.Vicuna Ext [...]