ページランクを右下に

ブログなんかやっていると、Google PageLankがちょっと気になるもの。
でも、いちいち調べに行くのも面倒。

そこでLive PageRank。
Live PageRank :: Add-ons for Firefox

インストールすると、Firefoxの右下に表示したwebページのページランクが表示されます。

0だったからといって、へこまないように。
うちも当たり前のように0…

まぁ、今までサボってたんで色々更新したい。(と思う。

IE Tabが使えない

Firefoxのバージョンが上がって、IE Tabが使えなくなった。
いつかバージョンアップして対応するだろうと思ったけれど、何時まで経ってもバージョンアップする気配もなく…

いい加減にIE使えないと不便なので(IEオンリーなサイトなんて潰れてしまえー!!)
類似品を探すことにした。

まぁ、サクッと見つかりましたよ。
類似品というより派生したのをな!

IE Tab Plus (FF 3.6+) :: Add-ons for Firefox

使い方はもちろん無印の時と同じ。
そして、これはなんとクッキーを共有出来る

「あぁ、これでIEに切り替えてログインし直すってことが無くなるのですね。」

でも、やっぱりマウスジェスチャは使えないのね…

WPAdsを使わない時のために

広告等をランダム表示できるプラグインWPAdsをテーマに組み込んでいて、その組み込んだゾーンが空になった場合、何も出力されなくなるので、空divになってしまったり、テーマが崩れる事があるので、その対策。

wpadsはprint文が書いてあるだけなので、wpadsの中で呼んでるget_wpadsを使う。
get_wpadsだとhtmlを返してくれるので、これを変数に入れてissetで中身が入ってるかどうかがわかる。

うちの場合はこんな感じ。

1
2
3
4
5
6
7
8
<?php $wpads = get_wpads('header'); ?>
<?php if(isset($wpads)): ?>
<div id="ad">
    <div id="ad_inner">
        <?php echo $wpads; ?>
    </div>
</div>
<?php endif ?>

get_wpads(‘header’)の結果を変数$wpadsに代入。
変数$wpadsが空じゃなかったら、周りのdiv要素とechoで変数$wpadsの中身を出力。

ウィジェットでPHPを実行する -Executable PHP widget-

WordPressのウィジェットは、手軽にサイドバーにテキストやHTMLを追加できるけど、PHPが実行できない!

PHPが実行できたらもっと便利!
わざわざ、テーマにPHP追加しなくてよくなるしね。

ってことで、ウィジェットでPHPが実行できるプラグインを追加。

WordPress › PHP Code Widget « WordPress Plugins

インストールして有効化するとウィジェットに「PHP Code」が追加される。
これに思う存分PHPを書きなぐれば、実行結果がサイドバーに表示されてウマー。

今回、ウィジェットでPHP実行して何がしたかったかというと、WPAdsをウィジェットで表示させること。
サイドバーに広告をビローンと何個も表示させるのは見苦しいのでな。

uptime!! v0.3

WordPressプラグインで管理ページ以外のところにフックを使ったことがなかったので、試しにthe_contentにフックしてみた。

とりあえず、記事に書かれた任意のhtmlコメントを置換してみることに。
“<!– uptime!!#uptime –>”で連続稼働時間
“<!– uptime!!#idletime –>”でアイドル時間

ま、実用性はないよねぇ…

uptime!! v0.2

uptimeは/proc/uptimeを参照してるだけなようなので、こっちを見て計算した方がuptimeコマンドのフォーマットに左右されないし、秒まで表示できるのでこっちを使いましょ。

$ cat /proc/uptime
8946563.01 17548528.13

/proc/uptimeを表示してみると、こんな感じ。
稼働時間 アイドル時間となってる。
まぁ、最初見たときはアイドル時間が稼働時間より長くて「なんぞ?」と思ったけど、コア二つ分のアイドル時間を合わせたものだと思うとしっくりくる。

うん、実はデュアルコアなんだ。

てなわけで、60で割ったり24で割ったりと頭がぐちゃぐちゃになりながらもできました。
時間の計算ってメンドイヨネ。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?php
/*
Plugin Name: uptime!!
Plugin URI: http://www.dazzlingworld2.com/post_4177.html
Description: サーバーのアップタイムを表示する。
Version: 0.2
Author: だかね
Author URI: http://www.dazzlingworld2.com/
*/
 
function the_uptime() {
    $uptime = get_uptime();
    echo $uptime[0] . "日 " . $uptime[1] . "時間 " . $uptime[2] . "分 " . $uptime[3] . "秒 " . $uptime[4];
}
function the_idletime() {
    $idletime = get_uptime(1);
    echo $idletime[0] . "日 " . $idletime[1] . "時間 " . $idletime[2] . "分 " . $idletime[3] . "秒 " . $idletime[4];
}
 
 
/*
稼働時間またはアイドル時間を取得する。
$sw = 0 : 稼働時間
$sw = 1 : アイドル時間
*/
function get_uptime($sw = 0) {
    $uptime     = array(0 ,0 ,0 ,0, 0);                                         // 日時分秒㍉
 
    // 引数が0, 1以外の場合は終了する。
    if($sw != 0 && $sw != 1) return $uptime;
 
    // "/proc/uptime" から稼働時間(秒)を取得する
    unset($stdout);                                                             // $stdoutを空にする
    exec('/bin/cat /proc/uptime', $stdout, $rcode);
    $proc_uptime = explode(" ", $stdout[0]);
 
    // 取得に失敗した場合は終了する。
    if($rcode) return $uptime;
 
    // 稼働時間(秒)を日時分秒㍉に変換
    $usec = explode(".", $proc_uptime[$sw]);
    $uptime[4] = $usec[1];                                                      // ㍉
    $uptime[3] = $usec[0] % 60;                                                 // 秒
    $time = ($proc_uptime[$sw] - $uptime[3]) / 60;
    if($time > 0) {
        $uptime[2] = $time % 60;                                                // 分
        $time = ($time - $uptime[2]) / 60;
    }
    if($time > 0) {
        $uptime[1] = $time % 24;                                                // 時
        $time = ($time - $uptime[1]) / 24;
    }
    $uptime[0] = floor($time);                                                  // 日数
 
    return $uptime;
}
?>

<?php the_uptime(); ?>を呼べば稼働時間が、
<?php the_idletime(); ?>を呼べばアイドル時間が表示される。

実行結果

103日 13時間 27分 19秒 73
203日 3時間 11分 2秒 96

CPU:「かなり暇…」

uptime!!

サーバーの連続稼働時間を表示してみたくなったので、ちょろっと作ってみた。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
/*
Plugin Name: uptime!!
Plugin URI: http://www.dazzlingworld2.com/post_4166.html
Description: サーバーのアップタイムを表示する。
Version: 0.1
Author: だかね
Author URI: http://www.dazzlingworld2.com/
*/
 
function the_uptime() {
    echo get_uptime();
}
function get_uptime() {
    $uptime = `uptime`;
    $day    = 0;
    $hur    = 0;
    $min    = 0;
 
    // 稼働日数の取得("x day" or "xx days"を検索)
    if(preg_match("/(\d+)\s+days?/", $uptime, $matches)) {
        $day = $matches[1];
    }
 
    // 稼働時間の取得
    if(preg_match("/(up|,)(\s+)(\d{1,2}):(\d{1,2})/", $uptime, $matches)) {
        // "up h:mm" or ", h:mm"
        $hur = $matches[3];
        $min = $matches[4];
    } else if(preg_match("/(up|,)(\s+)(\d{1,2})(\s+)min/", $uptime, $matches)) {
        // "up m min" or ", m min"
        $hur = 0;
        $min = $matches[3];
    }
 
    return $day . "日 " . $hur . "時間 " . $min . "分";
}
?>

uptimeの表示形式が稼働時間によって統一されてないので、表示がおかしくなるかも…

ランダムイメージ

サイドバーとかにランダムで記事内で使用された画像を表示させるプラグインRandom Image。
Random Image Plugin for WordPress – Justinsomnia

記事内のimgタグから直接持ってきてるので、フルサイズの画像が出てきたりしてサイドバーにサムネイルとして表示させるには非常に重い。

ので。

WordPressでアップロードすると150×150のサムネイルが作成されるので、それを表示させるように改造。

上へ参ります。