ウィジェットを作ってカスタマイズを楽にする【WordPress】

私の今まで紹介してきたカスタマイズ方法は直接functions.phpや各phpファイルに書き込んでカスタマイズする方法でした。

しかし、毎回直接ファイルを修正するのは面倒臭い。

ウィジェットみたいにできないの?ってことで調べました(‘ω’)ノ

ウィジェットの作り方

まず、例によって私ではちゃんと説明できないので私が参考にしたサイトを紹介します。

https://lblevery.com/sfn/create/wordpress-tips/wordpress-theming/make-your-own-widgets/

基本的にこの記事の通りやればウィジェットが作れます。

 

「 完 」

 

ウソです(;´∀`)

確かに記事の通りやればできるんですけどせっかくなので私なりの使い方を紹介したいと思います。

自分専用ウィジェットなので細かいことは気にしない

ウィジェットを作成する関数でform()とupdate()というものがあります。この二つは管理画面にどう表示されるか、また表示されたものに入力があった際にそれを保存したりします。

だけど自分専用なら全部最初から決めとけばここ作らなくて良くね?(・∀・)

そう。これを誰かお客さんとかのために作っているのならともかく自分専用であるならそんなとこ作らんでいいでしょ。めんどくさいし(´Д`)

このブログは自分のゲームサイトを作るのがテーマだからね。

あ、客や会社のために作ってる方は知らんよ。よそ行ってどうぞ(‘ω’)ノ(嘘です)

最小限のウィジェット

とにかく最小限の努力でウィジェットを作りたい。

正直ウィジェットとしてサイドバーやフッターに自由に配置できることが最大の目的で万が一内容を変えたかったらfunctions.php修正すりゃいいや、という私のような適当人間の作る最小のウィジェットがこちら。

class MyWidget extends WP_Widget {
    function MyWidget() {
        parent::WP_Widget(
            false,
            $name = 'ウィジェットの名前',
            array('description' => 'ウィジェットの説明', )
        );
    }
    function widget( $args, $instance ) { ?>
        <h2>ウィジェットの見出し</h2>
        <?php
        //ここに必要なこと書く
    }
}
register_widget('MyWidget');

最後のwidget()関数内に表示したいものを記述するだけのすごくシンプルなものとなっております(‘ω’)ノ

実際に使ってみる

例えば以前に紹介したランキングやおすすめ記事を表示するプログラムをここで使うわけです。

    function widget( $args, $instance ) { ?>
        <h2>ウィジェットの見出し</h2>
        <?php
        viewRanking("game", 5);
    }

こんな感じでwidget()関数内で自作したviewRanking()を呼び出して使えます。

ウィジェットで表示する人気記事なんて基本5件でしょ?

「ゲームじゃなくて通常の投稿も選択できるようにしたい」なんて思ったかもしれないですが、その選択を出来るようにするために調べたり作ったりする努力と、コピペして一部だけ変更するのとどっちが楽ですか?(・∀・)

※いや、ちゃんと勉強したいってんなら良いんですけど、自分のサイトなら楽しようぜって話だからね(;´∀`)

まとめ

もう一度言いますけど自分のサイト用の手抜きウィジェットですからね(;´∀`)

とはいえ、これでウィジェットを作る敷居がかなり低くなったと思うので何でもすきなだけウィジェットにしてしまえばいいと思います(適当)

当サイトのオリジナルゲーム(ランダム表示)

スマホ専用対戦ゲーム。3つの数字を順番にどちらが速く押せるかを競うミニゲーム。
障害物に当たらないようにタイミングを狙って弾を撃つゲーム。
一つだけある空欄を使ってタイルを入れてマッチを作る落ちもの系パズルゲーム。ちょっと難しい。
あほげー。聖帝シーザーとの一騎打ち。愛の力で巨悪を打ち砕け!

記事の感想・コメント

※コメントはまだありません※

コメントを残す

メールアドレスが公開されることはありません。

おすすめメニュー

ゲーム一覧ページへのリンク画像
ゲーム開発技術ブログへのリンク画像
pixi.jsでのゲーム開発へのリンク画像
enchant.jsでのゲーム開発へのリンク画像
グッズページへのリンク画像

ゲームタグ一覧