メモ: 2008年3月アーカイブ
答え
71バイトSEOにおける、Titleタグの重要性
Googleの検索結果では、Webサイトの<tittle>タグが見出しとして表示されます。言わば、これがWebサイトの看板になるわけです。
ところが、タイトルの文字が長すぎると、残念なことに後半が省略されて「...」と表記されてしまいます。
↓例
できれば、タイトルの全文がきれいに表示された方がいいに決まっています。では、いったい何文字を超えると、このように後半がカットされるのか?
気になったので調べてみました。
調査対象
このブログの検索結果タイトルの後半がカットされたもの
まず、タイトルがカットされてしま記事のうち、最も短いタイトルは以下のようなものです。| タイトル | 文字数 | バイト数 |
|---|---|---|
| 【メモ】Windows+ActivePerlでXML::RSSモジュールを入れる方法 - DQN起業日記 | 52 | 72 |
| BloggerをエクスポートしてMovable Typeにインポートする方法 - DQN起業日記 | 48 | 71 |
| 最もためになる初心者用のプログラム言語はWSH(JScript)です。 - DQN起業日記 | 45 | 72 |
タイトルがカットされなかったもの
次に、タイトルがカットされなかった記事のうち、最も長いものは以下のものです。| タイトル | 文字数 | バイト数 |
|---|---|---|
| XREAのアクセスログ(LOG)をCSVに一発変換するための正規表現 - DQN起業日記 | 44 | 70 |
| Perlで、テキストファイルの行数を数える(カウントする)には - DQN起業日記 | 41 | 70 |
| Linux&Apacheで自宅Webサーバ構築 3 Vine Linuxを入手する - DQN起業日記 | 51 | 69 |
注1:文字数とバイト数の調査は、エクセルのLen関数、LenB関数を使用。
注2:バイト数とは、日本語で1文字分、半角英数字で2文字分の長さのこと。
分析
カットされたものとされなかったものを比べてみます。
まず文字数で比較すると、45文字しかないのにカットされたものがある一方、51文字あるのにカットされなかったものがあります。
したがって、文字数は関係なさそうです。
次に、バイト数で比較してみます。
カットされたタイトルは、すべて71バイト以上です。
一方、カットされなったタイトルは、すべて70バイト以下です。
結論
Googleの検索結果では、Webページのタイトル(titleタグの中身)が71バイト以上の場合、後半部分が省略される。(参考:SEO連載(5) 「タイトルとメタタグの最適化」 - かんたん!SEO実践講座 より)
症状
社員が10~20人くらいになってくると、同時接続するクライアントPCが増えて最大値をオーバーしてしまい、接続不可になることがあります。具体的には、下記のようなエラーがでます。
コンピュータへの接続数が最大値に達しているため、これ以上このリモートコンピュータに接続出来ません。
対策
自動切断されるまでの時間を短くしてしましょう。初期設定では、PCからサーバへ何もやりとりがなければ15分で自動切断されるようになっています。
これを1分にしてみましょう。
サーバとして使っているPCのコマンドプロンプトを立ち上げて、C:~¥>の後に下記を入力します。
C:~¥>net config server /autodisconnect:1
こうすると、1分たつと自動切断されるようになります。結果的に、よりたくさんのPCからサーバへ接続できるようになります。
一度、試してみてください。
参考:http://okwave.jp/qa869934.html
前回の記事より、さらにわかりやすく書いてみます。
初心者にとっては今回の方がわかりやすいかと思います。
実行サンプルはこちら (別ウィンドウで開きます)
ソースコード
<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;
→ 結果 2PHPの場合
$ary = array( "foo", "bar", );
echo count($ary);
→ 結果 2JavaScript (Firefox) の場合
var ary = ["foo","bar",];
alert(ary.length);
→ 結果 : 2JavaScript (IE6) の場合
var ary = ["foo","bar",];
alert(ary.length);
→ 結果 : 3
結論。
IEのJavaScriptI(=JScript)は、最後のカンマのあとにもう一つ空の要素を生成する。
というわけで本日のまとめ。
[FOO,BAR,] を
3個と数える
JScript
字あまり ><
調べてみたら、教えてGoo!に良いやり方が載っていました。
Sub test()
Dim myShell As Object
Set myShell = CreateObject("Wscript.Shell")
myShell.PopUp "ここにメッセージ", 5, "ここにタイトル"
Set myShell = Nothing
End Sub
ExcelのVBAでもPowerpointのVBAでもこのコードで動きます。アプリの処理中に、ユーザにメッセージを伝えるのに使えそうですね。
プログレスバーで進捗表示してもいいんですが、処理が大げさになりがちなので、こっちの方が簡単ですね。
これは便利!