× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
WordPressインストールして使ってみた。
インストールの参考 /var/www/wordpress 以下に作成したとして話を進める。 カスタマイズの参考 好きなテンプレートを探して使ってもいいけど、やっぱ自分で作りたいよね。 プラグインを入れてみる まずは参考になるかと一つプラグインを入れてみた recent-posts-plus これは、最近の投稿をサイドバーに出すことができるプラグイン。カテゴリーやタグを選んで表示できるとかの機能がある。 READMEを読むと、以下の場所にファイルを置けばいいらしい。 /var/www/wordpress/wp-content/plugins/recent-posts-plus.php サイト名にマウスオーバー→ウィジェット の項目を選ぶと、確かに追加されている。 設定すると、ブログページのサイドバーにRecentPostが表示された。 自作への道 じゃあ、自分で作ってみよう。 ウィジェットを作るのに必要なコードは何か。 ここが詳しい。 Codex 要するに3つの関数を定義する必要があって、 - widget() 実際のウィジェットのコンテンツを出力する。つまり、実際のブログページに出力するhtml文をechoする関数。 - update() 設定の保存を処理する。つまり、ウィジェット画面の設定を保存するボタンを押したときに走る処理。 - form() 設定フォームを出力する。つまり、ウィジェット画面のhtml文をechoする関数。 という訳だ。 自作のウィジェットクラスは、WP_Widgetを継承して作ることになっている。
update()関数は割と分かりやすくて、
新設定を書き込んだインスタンスをreturnするだけ。 form()関数も難しいことは別になくて、設定用の入力フォームを並べるだけ。 <input id="XXX" type="text" /> というふうに書いたフォームの値が、update()に $new_instance['XXX'] という形で渡されてくるだけ。 一番大切なのがwidget()関数。 ここでは、update()で設定した値を使用しながら、サイドバーに実際に表示するhtmlを作らないといけない。 DBにアクセスすることにもなるだろう。 ここで作ったhtml(やjavascriptやjQueryとか)は、決まった場所(サイドバー用のdiv, "primary-sidebar"の後)に出力される。 じゃあ、cssとか使いたいときはどうする?ここには書けない。 ブログページのhtmlを見てみると、
と書いてある。 ここに書いたら動くのかな? PR |
|