FC2 ブログでの SEO 対策 その2 - description
html のヘッダー部では、 description という meta タグを指定でき、 ここにページの概要を記述します。
効果のほどはよくわかりませんが、 keywords と同じくこの値も検索サイトでのヒットに影響してくると言われています。 また、これはサイトによっては検索結果の見出しとして利用されます。
そのため、 description もページにあったものにしておいた方がいいでしょう。
基本の description 指定
まずはブログの概要をヘッダー部(<head>)に記述します。 これが description のベースとなります。<meta name="description" content="<%introduction>" /><%introduction> はブログの管理画面で登録したブログの説明の単変数です。
個別記事ページでの description
記事個別のページでは記事の冒頭部分を概要として指定します。 カテゴリー、タグといった記事個別以外のモードに対しては、 特にその説明となるようなものは用意されていないため、ブログの説明をそのまま使用します。<!--not_permanent_area--> <meta name="description" content="<%introduction>" /> <!--/not_permanent_area--> <!--permanent_area--> <meta name="description" content="<!--topentry--><%topentry_discription><!--/topentry-->" /> <!--/permanent_area-->記事個別モード(permanent_area)とそれ以外のモード(not_permanent_area) をブロック変数を用いて内容を変えています。
<%topentry_discription> は記事の冒頭部分のテキストです。 topentry ブロック内で使用します。
keywords と合わせた記述
前回の keywords の記述と合わせると次のようになります。<!--not_permanent_area--> <meta name="keywords" content="プログラミング,Redmine,C++,emacs,Ruby,web,<%sub_title>" /> <meta name="description" content="<%introduction>" /> <!--/not_permanent_area--> <!--permanent_area--> <meta name="keywords" content="<!--topentry--><!--parent_category--><%topentry_parent_category>,<!--/parent_category--><%topentry_category>,<!--tag_list--><%topentry_tag_list_name>,<!--/tag_list--><!--/topentry-->" /> <meta name="description" content="<!--topentry--><%topentry_discription><!--/topentry-->" /> <!--/permanent_area-->
Emacs でのコンパイル後に自動的にウィンドウを閉じるようにする方法
Emacs 上でコンパイルを行うと window が分割されて、コンパイルログの window が表示されます。
その window からエラー箇所にジャンプできて、とても便利です。
ただし、コンパイルに成功していれば、コンパイルの window は必要がないので閉じます。
これを毎回やっているとちょっとめんどくさいです。
そこで、コンパイルが終わって成功していれば、自動で終わるようにする lisp を書いてみました。
以下のコードを .emacs.el に記述してください。
(require 'compile) (defvar yel-compile-auto-close t "* If non-nil, a window is automatically closed after (\\[compile]).") (defadvice compile (after compile-aftercheck activate compile) "Adds a funcion of windows auto-close." (let ((proc (get-buffer-process "*compilation*"))) (if (and proc yel-compile-auto-close) (set-process-sentinel proc 'yel-compile-teardown)))) (defun yel-compile-teardown (proc status) "Closes window automatically, if compile succeed." (let ((ps (process-status proc))) (if (eq ps 'exit) (if (eq 0 (process-exit-status proc)) (progn (delete-other-windows) (kill-buffer "*compilation*") (message "---- Compile Success ----") ) (message "Compile Failer"))) (if (eq ps 'signal) (message "Compile Abnormal end"))))コンパイルに成功していると "Compile Success" のメッセージがミニバッファに出て、 window が自動的に閉じるようになります。
ただし、コンパイルに成功すると window を閉じるので、 warning がでている場合でも閉じてしまいます。 一時的に window が閉じるのをやめたい場合には M-x set-variable 等で yel-compile-auto-close 変数に nil を設定してください。
Redmine インフォメーションプラグイン Ver. 1.0.0 のリリース
以下、 1.0.0 での修正点。
Redmine 2.0 (Rails 3 ) 対応
Redmine 2.0 の対応は主に Rails 3 への対応。 まずは以前書いた記事の修正を行った。RAILTIES_PATH の削除
RAILTIES_PATH の定義がなくなっていた。 書いていると未定義エラーになるので、削除した。これは環境によって、 パスが通ってない Rails のファイルがあり、その対応で使っていた。 gem でインストールされたライブラリを見てみると Rails 2 では rails と railties のパッケージで構成されていたのが、 Rails 3 では rails の方が空になって、 railties に統合されたみたい。
もともと自分の開発環境だとパスは通っていたので、確認はできていないけど、多分消すだけで大丈夫だと思う。
lib 以下の development モードでの挙動の変更
development モードの場合、 ファイルは更新がすぐ反映されるように毎回読み込まれる。 Rails 2 では app 以下のディレクトリだけだったが、 3 からは lib 以下もすぐに反映されるようになっていた。すぐに反映されるのは便利になったのだが、そのかわりクラス変数(@@)の値も保存されなくなった。
クラス変数を使わないように変更した。 というより使えるからといって Rails でクラス変数を使うのはよくなかったかなと思う。
エントリーページの変更
[管理] のリンクを押したときは、最初にメニューが出てくる。 それに対して Redmine インフォメーションではバージョン情報を表示する [情報] ページになる。 途中でカテゴリごとに表示、非表示を切り替える機能を付けたんだけど、 バージョン情報を消すと、"表示できない"というエラーメッセージの [情報] ページになる。 この挙動いまいちだなとは思っていた。メジャーバージョンアップするついでに挙動も変えて、最初のページを [管理] のようにメニューにすることにした。
権限レポートのページの改良
以前に来ていた権限レポートの表示に関する要望対応を行った。 これは Redmine 2.0 では管理ページの権限レポートが改良されていて、 そちらをベースに作り直せば、要望をどおりのものになった。表のヘッダーの改良
プラグインをたくさん入れていると権限レポートの表が長くなって、 表のヘッダーとの対応がわかりづらくなる。 それを何とかして欲しいということらしい。これはモジュールごとにロールの説明を付けた。
表のはみ出し
ロールがたくさんになってくると権限レポートの表がサイドバーの方まではみ出してしまうということらしい。これは次のように autoscroll のブロックで囲むと解決。
<div class='autoscroll'> <table> ... </table></div>
Redmine::Info の表示
Rails では Rails の環境情報を Rails::Info というクラスでもっていて、 これは Rails 情報のページで使っている。Redmine 2.0 ではこれと同じように Redmine::Info.environment で環境情報が見れるようになっていた。 これが [管理] の [情報] ページに表示されるようになっていたので、 プラグインの [情報] ページでも表示するようにした。
Redmine::Info で表示されるのは以下の情報で、すでに表示済みのものばかりだったけど、一応入れておいた。
- Redmine のバージョン
- Rails 情報の一部
- インストールされたプラグインとそのバージョンのリスト