福岡のWEB制作会社スタジオ・カズーが、あなたの想像力を最大限に引き出し、より美しく、より機能的なWEBサイトをご提供いたします。

カズーBLOG

日々のログを残すブログの予定・・・/気楽にのんびり不定期更新です。

2009年6月アーカイブ

ソースのクリーンアップ

Movable TypeやMTOSを使っていて不満に思うのが書き出されたHTMLがスカスカでみっともないこと。
まぁ仕方ないかと諦めていましたが、連続する余分な改行を自動で取り除いてくれるプラグインをみつけました。

SmartReturnプラグイン

使い方は簡単。

以下よりプラグインをダウンロードしてプラグインフォルダに入れて、再構築し直すだけ。

http://junnama.alfasado.net/online/2008/01/mthtml.html

kazoo (2009年6月26日 16:20) | コメント(0) | トラックバック(0)

カスタムフィールド検索

Movable Typeのカスタムフィールド内の値は検索の対象とならないため、ToI企画さんが提供するCustomFieldsSearchというプラグインを利用する。

設置方法は簡単。

ダウンロードしたファイルをプラグインフォルダに入れて、検索関連のタグに以下のように追加する。

通常、「検索」はウィジェットに入っているので、ここを修正するだけで全ページ対応可能ですね。

value="1,2,3"に検索の対象とするブログIDを入れます。
<input type="hidden" name="IncludeBlogs" value="1,2,3" />

 

value="1" これでカスタムフィールド検索がONになります。
<input type="hidden" name="CustomFieldsSearch" value="1" />

 

value="entry"でブログ記事が検索対象になります。
<input type="hidden" name="CustomFieldsSearchClassType" value="entry" />

 

value="topics"のように検索対象とするカスタムフィールドのタグ名を入れます。
<input type="hidden" name="CustomFieldsSearchField" value="topics" />
<input type="hidden" name="CustomFieldsSearchField" value="news" />
【追記090629】複数のカスタムフィールドを検索対象にしたい場合は上記のように1つずつ分けて指定します。ひょっとするとvalue="topics,news"のようにカンマ区切りで併記できるかと思ったのですが、試したところダメでした。

 

以下のようにすると検索対象をチェックボックスで指定できるようなります。
<input type="checkbox" id="CustomFieldsSearchField_title" name="CustomFieldsSearchField" value="topics" /><label for="CustomFieldsSearchField_title">: トピック</label>
<input type="checkbox" id="CustomFieldsSearchField_price" name="CustomFieldsSearchField" value="news" /><label for="CustomFieldsSearchField_price">: ニュース</label>
kazoo (2009年6月26日 14:18) | コメント(0) | トラックバック(0)

ie8バグ/aタグ+imgタグ

ie8で以下のようにaタグ内にimgタグを書くと、画像の下に3pxの隙間が発生してしまった。

<ul id="hoge">
<li><a href="hoge.html"><img src="images/hoge.png"></a></li>
<li><a href="hoge2.html"><img src="images/hoge2.png"></a></li>
</ul>

aタグを外すと隙間がなくなる。

ググったところ症例は違うものの参考となる記事を発見。

以下のように、当該aタグにdisplay: inline-block;を当ててあげると、すっきり、さっぱり、まるっと解決!

CSS HappyLife様、貴重な情報ありがとうございました。

#hoge li a {  
display: inline-block;  
 }
 
kazoo (2009年6月10日 17:56) | コメント(0) | トラックバック(0)

サイトマップを自動生成

Movable Type、MTOSを使った検索エンジンのクローラー用のサイトマップの作り方です。 基本はGoogleのウェブマスターツールで紹介されている方法になります。

基本ソースはこんな感じ。





http://www.example.com/
2005-01-01
monthly
0.8
  

これはオプションですがページの更新頻度を指定します。always:常時/hourly:毎時/daily:毎日/weekly:毎週/monthly:毎月/yearly:毎年/never:不変。検索エンジンのクローラはこの情報を使用してクロール頻度を調整するようですが、あくまでも「ヒント」程度のようです。なので、仮にneverの指定をしてもクロールはしてくれるようです。

これもオプションですが、サイト内での優先度を0.0から1.0の間で指定できます。
で、これをMovable Type、MTOSで自動生成するには、こんな感じにします。





<$MTBlogURL encode_xml="1"$>
1.0



<$MTCategoryArchiveLink encode_xml="1"$>




<$MTEntryPermalink encode_xml="1"$>
<$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$>


 

これにsitemap.xmlのような名前をつけてインデックステンプレートとして保存してあげます。「テンプレートの設定」の「公開」オプションを「スタティック」にしておけば、記事のエントリーの度にサイトマップが自動更新されることになります。「公開キュー」にしてcronで定期的な更新ってのもアリです。ちなみに上のソースに月別アーカイブや個別アーカイブなどを追記してもよいでしょう。

あとはGoogleウェブマスターツールでサイトマップとして登録です。
まだウェブマスターツールを使ったことがなければ以下のツアーが役に立つかもしれません。
http://www.google.co.jp/webmasters/tour/tour1.html

ちなみに、今回使った以下のサイトマップのプロトコルは共通化されているためYahooでも有効のようです。



Yahooでは「サイトエクスプローラー」を使って登録できます。

kazoo (2009年6月 7日 15:52) | コメント(0) | トラックバック(0)

部分的なエンコード変更

Movable Type、MTOSの中で部分的にエンコードを変えるプラグインにmt-jcodeというのがあります。

例えば、以下のように「jcode="sjis"」を加えてあげると、その部分だけShift JISで書き出してくれます。


<$MTEntryBody jcode="sjis"$>

で、肝心のプラグインなんですが、以下のページにはDLする場所が見当たりません。
http://blog.bulknews.net/mt/archives/000007.html

探し回った挙句、以下で見つけました。
http://bizcaz.com/archives/2006/02/17-185635.php
mt-jcodeをダウンロードしたら、Movable TypeもしくはMTOSのpluginsフォルダに入れましょう。 そして、上記の例のようにMTタグ内に「jcode="sjis"」を加えれば完了です。

kazoo (2009年6月 3日 00:00) | コメント(0) | トラックバック(2)