参考文献
Symfowareについての考察blog
ほぼ唯一といっていいと思う日本語のMantis解説。
しっかりしたプラグイン作成までカバーしてくれています。
Mantis Bug Tracker Developers Guide - Building a Plugin
↑のチュートリアルリンクが切れていたので代わり。しかしSymfowareについての考察blogがほぼ日本語訳してくれているので読めなかった使わなかった。
Plugin Events Reference Mantis Bug Tracker Wiki
フックできるイベントの調査。
CSSの読み込み時イベントを探した。
公式ですし結構充実してそうなので今後は他の英語ページはいいかな…
動機
Markdownとハイライトを導入したけど``時のただの<code>
に装飾入ってないなー
CSSに追記するか、別ファイルに書いて新たに読み込ませるかー
あーまたcoreのファイルをバックアップとっていじるのかーいやだなー
そうだ、プラグインにしよう。
と思ってつくってみたら、単純すぎてプラグインと呼びたくないものになる。
普通のプラグインの通過点で止めるというか…
<?php
class SimpleCustomCssPlugin extends MantisPlugin
{
public function register()
{
$this->name = 'Simple Custom CSS';
$this->description = 'add custom CSS';
$this->page = '';
$this->version = '1.0';
$this->requires = array(
'MantisCore' => '1.2.0',
);
$this->author = 'khsk';
$this->contact = 'eatparalytic@gmail.com';
$this->url = 'https://github.com/khsk/SimpleCustomCss';
}
public function hooks()
{
return array(
'EVENT_LAYOUT_RESOURCES' => 'addCss',
);
}
public function addCss()
{
echo '<link rel="stylesheet" type="text/css" href="', plugin_file( 'css/custom.css' ), '"/>';
}
}
ほぼ公式の使い方解説の写し。<link>
のecho
は公式コピーの引数変更ぐらいか。
内容は<head>
閉じる直前時のイベントEVENT_LAYOUT_RESOURCES
発生時に<link>
をecho
してCSSを追加するだけ。
直接ファイルをいじるのに比べて、ブラウザからオン・オフが簡単に出来きます。それだけ。
すでにテーマをカスタマイズできるプラグインはありますが、ほんのちょっとだけ、このタグだけ変えたいってときはこんな単純なものもありますよ…ということで、Gitの練習がてらに挙げてみました。