メモ: 2008年3月アーカイブ

答え

      71バイト

SEOにおける、Titleタグの重要性

Googleの検索結果では、Webサイトの<tittle>タグが見出しとして表示されます。
言わば、これがWebサイトの看板になるわけです。

google1.jpg

ところが、タイトルの文字が長すぎると、残念なことに後半が省略されて「...」と表記されてしまいます。

 ↓例
google2.jpg
できれば、タイトルの全文がきれいに表示された方がいいに決まっています。

では、いったい何文字を超えると、このように後半がカットされるのか?

気になったので調べてみました。

調査対象

   このブログの検索結果 

タイトルの後半がカットされたもの

まず、タイトルがカットされてしま記事のうち、最も短いタイトルは以下のようなものです。

タイトル文字数バイト数
【メモ】Windows+ActivePerlでXML::RSSモジュールを入れる方法 - DQN起業日記 5272
BloggerをエクスポートしてMovable Typeにインポートする方法 - DQN起業日記 4871
最もためになる初心者用のプログラム言語はWSH(JScript)です。 - DQN起業日記 4572

タイトルがカットされなかったもの

次に、タイトルがカットされなかった記事のうち、最も長いものは以下のものです。

タイトル文字数バイト数
XREAのアクセスログ(LOG)をCSVに一発変換するための正規表現 - DQN起業日記 4470
Perlで、テキストファイルの行数を数える(カウントする)には - DQN起業日記 4170
Linux&Apacheで自宅Webサーバ構築 3 Vine Linuxを入手する - DQN起業日記 5169

注1:文字数とバイト数の調査は、エクセルのLen関数、LenB関数を使用。
注2:バイト数とは、日本語で1文字分、半角英数字で2文字分の長さのこと。

分析

カットされたものとされなかったものを比べてみます。

まず文字数で比較すると、45文字しかないのにカットされたものがある一方、51文字あるのにカットされなかったものがあります。
したがって、文字数は関係なさそうです。


次に、バイト数で比較してみます。
カットされたタイトルは、すべて71バイト以上です。
一方、カットされなったタイトルは、すべて70バイト以下です。

結論

Googleの検索結果では、Webページのタイトル(titleタグの中身)が71バイト以上の場合、後半部分が省略される。


(参考:SEO連載(5) 「タイトルとメタタグの最適化」 - かんたん!SEO実践講座 より
中小企業では、Windows2000やWindowsXPProなどの普通のPCのフォルダを共有フォルダにしてファイルサーバとして使うことがよくあると思います。

症状

社員が10~20人くらいになってくると、同時接続するクライアントPCが増えて最大値をオーバーしてしまい、接続不可になることがあります。
具体的には、下記のようなエラーがでます。
コンピュータへの接続数が最大値に達しているため、これ以上このリモートコンピュータに接続出来ません。

対策

自動切断されるまでの時間を短くしてしましょう。
初期設定では、PCからサーバへ何もやりとりがなければ15分で自動切断されるようになっています。
これを1分にしてみましょう。
サーバとして使っているPCのコマンドプロンプトを立ち上げて、C:~¥>の後に下記を入力します。
C:~¥>net config server /autodisconnect:1
こうすると、1分たつと自動切断されるようになります。
結果的に、よりたくさんのPCからサーバへ接続できるようになります。
一度、試してみてください。

参考:http://okwave.jp/qa869934.html
iGoogleで使われているアレです。
前回の記事より、さらにわかりやすく書いてみます。
初心者にとっては今回の方がわかりやすいかと思います。

実行サンプルはこちら (別ウィンドウで開きます) 

ソースコード

<html>

<head>
    <title>超シンプルなタブメニュー</title>
<script>

function show1(){
	content1.style.display="block";
	content2.style.display="none";
	content3.style.display="none";
}

function show2(){
	content1.style.display="none";
	content2.style.display="block";
	content3.style.display="none";
}

function show3(){
	content1.style.display="none";
	content2.style.display="none";
	content3.style.display="block";
}
</script>

<style>
#content1 { display:block; }
#content2 { display:none; }
#content3 { display:none; }
</style>

</head>
<body>

<span onclick="show1();">|タブ1|</span>
<span onclick="show2();">|タブ2|</span>
<span onclick="show3();">|タブ3|</span>
<br>

<div id="content1">コンテンツ1</div>   ← タブ1の中身
<div id="content2">コンテンツ2</div>   ← タブ2の中身
<div id="content3">コンテンツ3</div>   ← タブ3の中身

</body>
</html>

解説

ポイントは、
タブの中身をHTMLでこのように書いておき、
<div id="content1">コンテンツ1</div>
<div id="content2">コンテンツ2</div>
Javascriptで中身の表示/非表示を切り替えます。
  content1.style.display="none";   ← タブ1の内容を隠す
  content2.style.display="block";  ← タブ2の内容を表示

他人が作ったExcelファイルで、IFやVLOOKUPなどの関数が入れ子(ネスト)になっていて、複雑すぎて解読不能になるときがあります。

実際に私が見た例で、以下のような数式がありました。


=IF(R2="","",IF(J2="ABC",IF(VLOOKUP(D2,sheet1!$A:$G,6,0)="",VLOOKUP(VLOOKUP(D2,sheet1!$A:$I,7,0)-2,sheet1!$G:$I,3,0),VLOOKUP(VLOOKUP(D2,sheet1!$A:$G,6,0)-2,sheet1!$G:$I,3,0)),IF(R2="","",VLOOKUP(VLOOKUP(U2,sheet1!$A:$G,6,0)-2,sheet1!$G:$I,3,0))))


そんなときはあわてずに。

関数をメモ帳に貼り付けて、縦に展開してみましょう。

改行やスペースをつけると、不思議と解読できるようになります。


セルS2に入っていた関数の数式を展開


=IF(
  R2="",
  "",
  IF(
      J2="ABC",
      IF(
          VLOOKUP(D2,sheet1!$A:$G,6,0)="",
          VLOOKUP(
              VLOOKUP(D2,sheet1!$A:$I,7,0)-2,
              sheet1!$G:$I,
              3,
              0
          ),
          VLOOKUP(
              VLOOKUP(D2,sheet1!$A:$G,6,0)-2,
              sheet1!$G:$I,
              3,
              0
          )
      ),
      IF(
          R2="",
          "",
          VLOOKUP(
              VLOOKUP(U2,sheet1!$A:$G,6,0)-2,
              sheet1!$G:$I,
              3,
              0
          )
      )
  )
)

IFやVLOOKUPが入れ子になっているときに効果的抜群です。

あとは、時間さえかければ解読できますね。

以上、ワンポイントテクニックでした。

プログラムを書いていて、下記のように配列を初期化することがよくあります。

配列 = [
要素1,
要素2,
];

このときいつもモヤモヤするのが、

最後の要素の後にカンマ(,)付けても大丈夫なんだっけ?

ということ。
つまり、この配列は要素が2個としてちゃんと解釈されるのかな?という不安です。


よい機会なので、JavaScript、PHP、Perlで挙動の違いをまとめてみました。

Perlの場合

@ary = ("foo", "bar",);
$count = @ary;
print $count;
→ 結果  2

PHPの場合
$ary = array( "foo", "bar", );
echo count($ary);
→ 結果  2

JavaScript (Firefox) の場合
var ary = ["foo","bar",];
alert(ary.length);
→ 結果 : 2

JavaScript (IE6) の場合
var ary = ["foo","bar",];
alert(ary.length);
→ 結果 : 3

結論。

IEのJavaScriptI(=JScript)は、最後のカンマのあとにもう一つ空の要素を生成する。


というわけで本日のまとめ。


 [FOO,BAR,] を

 3個と数える

 JScript


字あまり ><

VBAでMsgBoxを表示すると、OKボタンを押すまで処理が中断してしまうので不便だなーと思っていました。
調べてみたら、教えてGoo!に良いやり方が載っていました。
Sub test()
  Dim myShell As Object
  Set myShell = CreateObject("Wscript.Shell")
  myShell.PopUp "ここにメッセージ", 5, "ここにタイトル"
  Set myShell = Nothing
End Sub
ExcelのVBAでもPowerpointのVBAでもこのコードで動きます。
アプリの処理中に、ユーザにメッセージを伝えるのに使えそうですね。
プログレスバーで進捗表示してもいいんですが、処理が大げさになりがちなので、こっちの方が簡単ですね。
これは便利!

このアーカイブについて

このページには、2008年3月以降に書かれたブログ記事のうちメモカテゴリに属しているものが含まれています。

前のアーカイブはメモ: 2008年2月です。

次のアーカイブはメモ: 2008年9月です。