ラベル Blogger の投稿を表示しています。 すべての投稿を表示
ラベル Blogger の投稿を表示しています。 すべての投稿を表示

2025-01-01

Blogger に Syntax Highlight ツール Prism.js を入れてみた

Blog を書き始めて早 20 年。世のテック系ブログでは、コードのシンタックス・ハイライト (Syntax Highlight) など当たり前になっているのに、当ブログはまだシンタックス・ハイライトに対応していない。遅まきながら、シンタックス・ハイライトに対応させてみた。

使ったツールは Prism.js。下記ブログ記事を参考にした。

シンタックス・ハイライトとは...

シンタックス・ハイライトは、プログラム言語のソースコードに色を付ける仕組み。例えば、次のようなソースコードが

// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")

シンタックス・ハイライトを付けると次のように表示される。

// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")

ソースコードに色が付いていると、読みやすいし、書き手の気分も上がる。

Prism.js + jsDeliver

シンタックス・ハイライトを実現するツールには Prism.js を使う。サフィックスに js と付いていることから分かる通り JavaScript で書かれている。加えて対応する CSS が用意されている。

さて、Blogger は写真・動画以外のファイルをアップロードできない。そのため、Prism.js が用意する JavaScript/CSS ファイルを直接参照することができない。

この対処方法として、これらのファイルを別の場所に保存する方法が考えられる。候補として、Dropbox などのストレージ・サービスがあるけれども、ブログサービスのように不特定多数が頻繁にアクセスする目的で作られているわけではないので、ファイルのダウンロード速度に不満がある。

専用に作られたサービスとして CDN があるので、これを使ってみた。

jsDelivr で用意した JavaScript と CSS のソースコードが次の通り:

<!-- JavaScript -->
<script src="https://cdn.jsdelivr.net/combine/npm/prismjs@1/components/prism-core.min.js,npm/prismjs@1/plugins/line-numbers/prism-line-numbers.min.js,npm/prismjs@1/plugins/line-highlight/prism-line-highlight.min.js,npm/prismjs@1/plugins/toolbar/prism-toolbar.min.js,npm/prismjs@1/plugins/copy-to-clipboard/prism-copy-to-clipboard.min.js,npm/prismjs@1/plugins/show-language/prism-show-language.min.js,npm/prismjs@1/plugins/treeview/prism-treeview.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1/plugins/autoloader/prism-autoloader.min.js"></script>

<!-- CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/combine/npm/prismjs@1/themes/prism.min.css,npm/prismjs@1/plugins/line-numbers/prism-line-numbers.min.css,npm/prismjs@1/plugins/line-highlight/prism-line-highlight.min.css,npm/prismjs@1/plugins/toolbar/prism-toolbar.min.css,npm/prismjs@1/plugins/treeview/prism-treeview.min.css"/>

Blogger にコードを埋める

次に Blogger の説明画面を開き、テーマから「カスタマイズ > HTML を編集」を選択する。

下記サンプルコードを参考に、上記 JavaScript と CSS のコードを挿入する。

<!-- HTML を編集 -->
<html>
<head>
...
<!-- ここに CSS のコードを挿入する -->
</head>
<body>
...
<!-- ここに JavaScript のコードを挿入する -->
</body>

これで準備は終了。

コードをハイライトさせる

コードのハイライトをするためには次の書式で HTML を書く。

<pre><code class="language-XXX">
プログラミング言語 XXX のソースコード  
</code></pre>

XXX の部分にはプログラミング言語の名前が入る。XXX の名前は PrismJS の Supported languages から調べることができる。

例えば、上述の Swift コード。あれのハイライトは、Swift 言語のコード・ハイライトだった。Supported languages で調べると、Swift 言語は swift というキーワードを使えば良いと分かる。そこで、次のコードを書いた。

<pre><code class="language-swift">// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")
</code></pre>

プラグイン

今回、7 つのプラグインを導入した。

autoloader

必要なシンタックス・ハイライト文法を自動ロードする

toolbar

copy-to-clipboard, show-language で必要

line-numbers

行番号を表示する。

シンプルな行番号表示には、pre 要素に class="line-numbers" を追加する。

// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")

ソースコードは次の通り:

<pre class="line-numbers"><code class="language-swift">// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")
</code></pre>

オプションとして、data-start="数字"を追加することで、行番号を開始する行を指定することもできる。

// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")

ソースコードは次の通り:

<pre class="line-numbers" data-start="-3"><code class="language-swift">// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")
</code></pre>
line-highlight

行をハイライト表示する

ハイライト表示したい行を data-line="N" で指定する。下に示す通り line-numbers プラグインと一緒に使うことも可能。

// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")

ソースコードは次の通り:

<pre class="line-numbers" data-line="4"><code class="language-swift">// Swift のソースコード
struct Book {
  let id: UUID = .init()
  let name: String
}
let book = Book(name: "Foundation")
</code></pre>
copy-to-clipboard

「クリップボードへコピー」ボタンを表示する

show-language

言語名を表示する

ディレクトリー構成の表示をサポートする

tree -F で出力したディレクトリー構成を良い感じに表示する。

2015-07-31

Gist のコード貼り付けと noscript

プログラムのソースコードを貼り付けるのに Gist のコード埋め込みを使い始めた。メリットは 2 つ。

  • コードハイライトが行なわれる
  • 行番号を表示できる

Blogger はコードハイライトをするのが一手間二手間かかる。その面倒臭さに、clmemo@aka でもコードハイライトは見送っていた。Gist を使うとその手間がなくなるのでありがたい。

Gist を使うデメリットもある。

  1. Gist を一度経由する手間
  2. Feedly などのフィードリーダーに Gist コードが表示されない
  3. コードが検索の対象にならない

1. の手間については、何らか手段を構じたいところ。

2. と 3. のコードが表示されない・検索されない件については、<noscript> を使うと解決しそう。このタグは JavaScript が ON にならない環境 (フィードリーダーとか検索とか) でのみ、その中身を表示する。

まとめると、こんな感じのコードを書けば良さそう。

<script src="https://gist.github.com/ataka/aa8feb023c1dcc5183e3.js"></script>
<noscript>
<pre><code>func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {
   // (snip)
}</code></pre>
</noscript>

このやり方、少し続けてみよう。

2013-05-05

Facebook page への通知を RSS Graffiti から IFTTT に変更

最近、clmemo@aka の更新情報が Facebook page に反映されない。見ると、2012-04-25 から更新がない。今日は 2013-05-05。この間に 13 本の記事を書いている。どうも、ブログ更新を Facebook page に通知する RSS Graffiti の調子が良くない。

facebook-page_rss-graffiti

今日、sorarium さんも RSS Graffiti の不具合に悩まされていると知った。sorarium さんは RSS Graffiti から IFTTT に移行した。ぼくも習ってみる。

IFTTT の利用

設定方法は sorarium の記事に詳しいのでサラリと。

  1. RSS Graffiti の設定を解除
  2. IFTTT にサインアップ
  3. 「Create」をクリック
  4. ifthisthenthat. の「this」をクリック
  5. トリガーの選択画面。sorarium さんは RSS Feed を選択しているけど、ぼくは「Blogger」を選択した。Blogger で公開しているブログを選択する画面が現れるので、当ブログを選択する
  6. 「Choose a Trigger」では「New feed item」を選択
  7. if[Blogger]thenthat. の「that」をクリック
  8. ifttt-that 「Choose Action Channel」で「Facebook page」を選択 (右側ね)
  9. 「Choose an Action」で「Create a link post」を選択
  10. 「Complete Action Fields」で投稿内容を修正

以上で終了。さてどうなるか... 結果が見えたら、スクリーンショットを貼る。

facebook-page_via_ifttt

お、上手くいった。

2013-02-26

Blogger ブログの Facebook ページを作る方法

当ブログ(Blogger) の Facebook ページを作成し、サイドバーに Facebook ページの「いいね!」(Like Box) を置いた。設定方法を書く。

目次

  1. Facebook ページの作成
  2. 「Like Box」をサイドバーに置く
  3. 投稿した記事を Facebook ページに反映させる

Facebook ページの作成

Facebook ページ作成画面への行き方が分かりにくい。直リンクから作成ページに行く方法。

もしくは、Facebook のサイドバーから「ページを発見しよう」を選び、ページ右上の「+ Facebookページを作成」をクリックする方法。

Facebook ページの作成画面が現れる。6 つのカテゴリーが用意されている。カテゴリーごとに入力項目が変わってくる。一般的な「ブログ」は「慈善活動またはコミュニティ」を選ぶ。

するするっと、ページ名の選択画面が現れる。ここはブログの名前で良いと思う。当ブログは「clmemo@aka」なのでその通り入力してみた。

弊社の自動システムでは、「clmemo@aka」という名称は認められません。かわりに「Clmemoaka」を提案いたします。ご確認ください。詳しくは詳しくはこちら。

清々しくもハネられた。「詳しくは詳しくはこちら」と二度も書かれてる。重要なので二度書きましたってか?

この名前はページ作成後に変更できるので、とりあえず「Clmemoaka」で我慢する。

ここから、プロフィールの入力。まずプロフィール写真

「コンピュータからのアップロード」でも「ウェブサイトからのインポート」でも OK。ぼくが使ってるキーボードの写真をアップしてみた。

基本データの入力画面。Facebook ページの説明と URL (この場合はブログの URL かな) を入力する。

「広告の有効化」。これ、よく分からないので「スキップ」!

これで、Facebook ページ完成。チュートリアルが現れる。

「いいね!」「メールの連絡先を招待」「タイムラインへの投稿」のチュートリアル。

さあ、Facebook ページを見てみよう。

管理者用パネルにある「Facebookページを編集」から「基本データを編集」をクリック。

せっかくなので、名前を「Clmemoaka」から「clmemo@aka」に変える。う〜ん、「@」がいけないみたい。ズルして半角の「@」を全角の「@」に変えて入力。これでどうかな?

ん、いい感じ。

同様に、通知設定やページオーナーなども時間が出来たら設定していこう。

Facebook ページの作成はこれにてお終い。

「Like Box」をサイドバーに置く

Facebook ページの「Facebookページを編集」から「基本データを編集」をクリック。左サイドバーから「リソース」を選び、「ソーシャルプラグインを利用する」をクリックする。

ソーシャルプラグインの一覧が現れた。今回は、「Like Box」を使う。

次のスクリーン・ショットはぼくの場合のサンプル。

説明:

  • Facebook Page URL: Facebook ページの URL を入力する。実際に Facebook ページを開いて、その URL を入力すればいい。この URL にはユニークな URL を付けられたけど、今は「ファン」が 25 人以上いないと URL を取得できなくなったらしい。25 人のファンを獲得したら、改めて Facebook ページの URL を変える方が良い... のかな。
  • Width: 「Like Box」の幅。デフォールトの 292 を使用。
  • Height: 「Like Box」の高さ。デフォールトは空。特に指定しなくても良いみたい。
  • Show Faces: 「いいね!」してくれた人達の顔写真を表示する。デフォールトは ON。
  • Color Scheme: 色。light と dark がある。
  • Stream: Facebook ページの中身も表示する。デフォールトは ON。ぼくは OFF にした。
  • Border Color: 「Like Box」のボーダーの色。デフォールトは空で黒色。枠線を消したい派なので、#fff (白色) を設定。
  • Header: ヘッダー。デフォールトは ON。ぼくは OFF にした。

右側には、こんなサンプルが現れた。

「Get Code」をクリックしてコードを表示。「HTML5」「XFBML」「IFRAME」「URL」の 4 種がある。Blogger は「HTML5」のままで OK。

1. のコードは下記の通り:

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/ja_JP/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

このコード、ブログの記事に「いいね!」ボタンを付けるのに使ったのと同じコード。なので、「いいね!」ボタンを付けてる人は、このコードを貼り付ける必要はない。ただし、次のコードを入れてる人は、その部分だけ削除する必要あり。

<b:if cond='data:blog.pageType == "item"'>

</b:if> の削除も忘れずに。

「いいね!」ボタンを付けていない人は、Blogger のテンプレートを編集する (バックアップは必ず取るように!!)。

Blogger の設定画面から「テンプレート」を選択。「ブログで使用中」の下に「HTML の編集」ボタンがあるのでクリック。上級者しかやっちゃダメよ、という警告が出る。OK なら「続行」。

「ウィジェットのテンプレートを展開」にチェックを入れる。(重要)

<body ... で始まる行を探して (ブラウザーのページ内検索機能を使うとすぐに見つかる)、「body のすぐ後に配置します」のコードを挿入する

次に 2. のコードを貼りけ付る。ぼくの場合、こんな感じ。赤色のコードは各自個序有になるはず。

<div class="fb-like-box" data-href="https://www.facebook.com/pages/clmemoaka/136048079903138" data-width="292" data-show-faces="true" data-stream="false" data-border-color="#fff" data-header="false"></div>

Blogger の設定画面から「レイアウト」を選択。「ガジェットを追加」から「HTML/JavaScript」を選択。コンテンツ部に先のコードを入れてあげる。

これで Like Box の設定は終了。

投稿した記事を Facebook ページに反映させる

さあ、最後の一仕事。ブログの記事を投稿したら、Facebook ページに反映させよう。Facebook アプリケーションの RSS Graffiti を使う。Facebook の画面上にある検索ボックスから RSS Graffiti を検索。利用可にする。

ぼくは、既に RSS Graffiti を使っているので、今の初期画面が分からない。ごめん。

clmemo@aka を Facebook ページに反映したい。「Add New Publishing Plan」をクリック。

適当な名前を付けて、「SOURCES」の「ADD NEW」をクリック。ブログのフィードの URL を入力する。

続けて「Basic」設定。「Update Frequency」を「As soon as possible」に、「Maximum Posts per Update」を「5 posts」に、「Post Order per Update」を「Publish older posts first」に変更。意味は、「ブログを更新したらなるべく早く反映して欲しい。でも、日によっては数本の記事を書くことがあるかもしれないから、5 記事くらいは遡って調べて。で、古い記事をから新しい記事の順で並べて下さい」ということ。「Maximum Posts per Update」の数はブログのスタイルによって変えられたし。

「Advanced」設定に移る。デフォールトだと、記事タイトルが表示されないので、表示される様に「Same as Item's Title」にチェックを入れる。

「SOURCES」の設定を終えたら、「TARGET」の「ADD NEW」をクリック。「Choose Target」で自分の Facebook ページを選ぶ。

最後に「OFF」を「ON」に変えるのを忘れずに。

あとがき

ちょっと分量があるけれど、頑張って!!

このブログが気に入ったかな? Like Box の「いいね!」を押してもらえると励みになるので、どうぞよろしく。

ブログのコメント投稿にキャプチャを設定した

当ブログ clmemo@aka と姉妹ブログ life@aka のコメント投稿にキャプチャ入力を設定した。キャプチャは「読みにくい文字」を入力させる仕組み。コメント・スパム対策の一つ。

コメント・スパムが多くなった

キャプチャ導入の目的はコメント・スパム対策。ここ数か月、コメント・スパムが多い。ほぼ毎日コメント・スパムを削除しているけど、懲りもせず毎日コメント・スパムはやって来る。

50 コメント・スパム/日 を越える日々が続いた。Blogger にはスパム・フィルターがあるけれど、そのスパス・フィルターを通り抜けるスパムも日に 4,5 通となって負担が増した。

コメント・スパム対策

コメント・スパム対策には、いくつか方法がある。一つは「コメントを投稿できるユーザー」を限定すること。このブログでは匿名ユーザーを含む「全員」に設定しているけれども、「登録ユーザー」や「Google アカウントのユーザー」に限定することも可能。

うちは、匿名ユーザーからのコメントも多い (スパムじゃなくてね) ので、全員にコメント投稿できるようにさせたい。

「コメントの管理」という機能で、コメントがスパムかどうかをブログ主が判断する機能もある。これはスパムの数が少なかったり、コメント欄が荒れそうな時に、コメントの表示をブログ主が選択できるのがポイント。スパムの数が 50 を越える場合、結局、コメントがスパムかどうか自分で判断しなくちゃいけないので、ぼくはパス。

結局、キャプチャ導入を選択した。コメントを入力したい人には面倒だけど、ごめんなさい。

設定

Blogger の設定画面から「設定 > 投稿とコメント > 単語入力確認を表示」を「はい」にする。

あとがき

コメント・スパムはブームというか、波がある。たいてい、コメント・スパムを入力しようとしてもダメだと分かって一か月ほどすると、コメント・スパムが減った。今回もそうだといいな。

2013-02-20

(朗報) iPad 上の Safari で Blogger ブログの表示にモバイル版が使われなくなった

Blogger のテンプレートには、PC 用のウェブ・ブラウザーで使う「普通」のテンプレートと、モバイル用のウェブ・ブラウザーで使う「モバイル」版テンプレートの二種類がある。

モバイル版テンプレートは主に iPhone を始めとしたスマートフォンのブラウザーに適用される。モバイルで見るには邪魔なサイドバーが消されたり、ブログのトップ画面ではブログ記事がスニペット表示されるなど、モバイル向けの工夫が凝らされている。

Blogger in mobile version

欠点と言えば、サイドバーテンプレートのカスタマイズに自由度が小さいことか。

iPad での表示

数か月前から、iPad の Safari で Blogger ブログを見ると「モバイル版」の画面が表示された。iPad は画面が広いので、モバイル版のテンプレートを適用する必要があると思わない。ぼくは自身のブログを含めいくつかの Blogger ブログを見てみたけれども、どれも「モバイル版テンプレートは逆に見づらくなっていた。

それが数日前から、iPad の Safari で見る場合でも「普通」のテンプレートが使われる様になった。つまり、元に戻った。

Blogger ブログを iPad で見るなら、やっぱり「普通」のテンプレートの方が見やすい! ありがたい。

2013-02-01

AMN パートナー・ブログ・バッチを貼った

2012 年 12 月。当ブログは AMN のパートナー・ブログになった。

一昨夜、パートナー・ブログ用のバッチが出来たとの知らせを受けた。早速、サイドバーに貼ってある。

バッチをクリックすると、AMN の「ネットワーク・パートナー (パートナー・ブログ)」解説ページへ跳ぶ (今のところは)。

Blogger における不具合

バッチは JavaScript を使って表示される。何故 JavaScript かというと、AMN パートナー・ブログ以外のサイトではバッチを表示させないため。だから、この JavaScript をコピーして自分のブログに貼って、「ほら、ぼくは AMN パートナー・ブログ」と言おうとしてもバッチは表示されない。

ところが、この対策が Blogger では悪く働いた。

Blogger は国別にリダイレクトする仕様。このブログを日本から見ているなら http://at-aka.blogspot.jp/ だけど、米国から見ると http://at-aka.blogspot.com/ に、フランスから見ると http://at-aka.blogspot.fr/ になる。

ぼくは、自分のブログを blogspot.com で AMN に申請していた。日本では blogspot.jp に URL が変わってしまうので、バッチの JavaScript は申請のブログと違うと判断した。結果、ぼくのブログに AMN バッチは表示されない。きっとアメリカから見ている人にだけバッチが見えていたことと思う。

不具合を AMN に伝えたところ、応急処置として blogspot.jp で判定する様になった。お蔭で、バッチが表示される様になった。ただし、日本でのみ。日本国外からこのブログを見ている人には、きっとバッチは見えないことと思う。

こういう風な本当の URL と仮の URL の様な関係が存在する場合の対策として、HTML のヘッダーに <link rel='canonical' href='本当の URL' と書く方式が推奨されている。Blogger もこの rel='canonical' に対応している。

AMN には、サイトの rel='canonical' もチェックしてもらうようにもお願いを出しておいた。近々、全世界で AMN バッチが表示される (はず)。

※ そうか、rel='canonical' だけ偽造するサイトが出るかもしれないから、rel='canonical' で foo.blogspot.com が含まれていたら、TLD 部を削除して URL 部分と foo.blogspot 部分が一致するか調べなきゃなのか、な? 近いうちに rel='canonical' について記事を書こう。

2013-01-19

2012 年、多く読まれたエントリー トップ 10

他のブログでもやっていて、読んでみたら面白かった。同時に、自分のブログで人気の記事は何なのか興味を持った。Google Analytics を使って調べてみた。

トップ 10 発表

書式は「順位 (年:PV) タイトル」。

  1. (2007:46,666) Mac OS X 初心者が日本語入力をするときにハマルことのまとめ
  2. (2006:23,624) Linux でプロセスごとのメモリー使用量を調べる
  3. (2006:13,491) Emacs で C 言語プログラミングを始める人へのイントロダクション
  4. (2008:13,080) MBT シューズを履いて三か月
  5. (2007:9,274) Mac OS X 初心者が日本語入力をするときにハマルことのまとめ (モバイル版)
  6. (2006:8,766) LaTeX でページ番号を消す
  7. (2010:7,584) ネットカフェ泊まりで生き抜くための 10 のアドバイス
  8. (2011:7,547) Luxman×Stereo のデジタル・アンプ LXA-OT1 を鳴らしてみる
  9. (----:7,038) clmemo@aka (トップページ)
  10. (2008:6,555) 感圧式と静電式 〜「Touch Diamondで考えるスマートフォンの未来」ブロガーミーティング

考察

まず、記事の発表年。一番新しい記事が 2011 年で 1 本のみ。次いで 2010 年の記事が 1 本。2006 年が 3 本、2008 年が 2 本、2007 年が 1 本。2012 年には 223 本の記事を書き、ブログを始めて 8 年目で 3 番目に多い記事数となっている。にもかかわらず、トップ 10 に喰い込む記事が一本もなかった。2012 年度、最も PV を稼いだのは「楽天カード凍結! 駄目です!! 審査通りません!!!」で全体で 15 位、PV は 5,068 だった。記事の質が下がったのか? いや、トップ 10 入りしている記事と比べてみても、質の低下は見えない。ブログへ来る人は Google 検索とはてなブックマークだけだった昔に比べて、今は twitterFacebook など SNS が大きく力を伸ばし始めている。ぼくはどちらかというと Facebook に乗り遅れた人間。SNS への対処を再考すべきかもしれない。

次にモバイルの普及。Blogger ではモバイル環境からブログを読む場合、モバイル用のページを生成してくれる。で、その時、URL の末尾に「?m=1」が付く。今回、調べてみた結果 6 位 Mac OS X 初心者が日本語入力をするときにハマルことのまとめ がモバイル用のページだった (内容は 1 位の記事と同じ)。20 位までの記事を見ると、更に 2 本のモバイル用ページがランクインしている。このブログは Blogger のモバイル用ページ生成だけで他に何の工夫もしていない。モバイル用ページに向けて、何か出来ることはないか模策したい。

最後に、記事への入れ込み具合。トップ 10 の内、5 時間以上の時間をかけて書いた記事は 3 本しかない。3 位の Emacs で C 言語プログラミングを始める人へのイントロダクション と 7 位の ネットカフェ泊まりで生き抜くための 10 のアドバイス、そして 8 位の Luxman×Stereo のデジタル・アンプ LXA-OT1 を鳴らしてみる。トップページを除くと、残る 6 つの記事はちょっとした思い付きで書いた記事。何がアタるか分からない。

あとがき

去年書いた記事が人を呼び込んでいないとか (ショック!)、モバイル・ページが隆盛しているとか、気合いを入れなくても PV を取れちゃう記事はあるとか、色々と勉強になったなぁ〜。2013 年は挽回の年にしたい。

2012-12-18

Google+ にコミュニティ機能登場 〜 Blogger 用コミュニティ現わる!

今月頭、Google+ にコミュニティ機能が追加された。

Facebook のグループ、そして古くは mixi のコミュニティに相当するもの。

公開・非公開機能、コミュニティ・メンバーとのビデオ・チャット(ハングアウト)機能、イベント機能が最初から使える。iOS, Android 用の Google+ アプリもコミュニティ機能に対応した。使いこんでいないので分からないけど、コミュニティとして欲しい機能は揃えて出した感じかな。う〜ん、昔の Google のベータ臭さがなくなってきた (一般ユーザーにはありがたいことだけどね ;)

Blogger コミュニティ発足

日本の Blogger ユーザーのために、Blogger Japan コミュニティが発足した。作ったのは Blogger 界では古参の クリボウの Blogger Tips さん。

投稿カテゴリーは現在 4 つ。

  • はじめまして (自分のブログ紹介用)
  • Blogger 情報
  • 質問・解答
  • その他

Blogger と Google+ を使ってる人は、登録してみると面白いかもしれない。

2012-09-25

Blogger 旧ダッシュボードとの別れ

Blogger の旧ダッシュボードが使えなくなった。2011 年 9 月に発表された新ダッシュボードに完全移行終了。この情報はクリボウの Blogger Tipsさんの記事で知った。

Blogger は割と大きな刷新を繰り返して来たサービス。ダッシュボードの変更も、今回で 2 回目か 3 回目じゃないかな? 他の Google のサービスと比べて意外と UI の更新が大きく・マメだったりする。

旧ダッシュボードが好きだった人には名残惜しいだろうけど、新しいダッシュボードも使ってみると良い奴なんで、毛嫌いしないで欲しい。

2012-08-02

Blogger bX-ej4x1p エラーの解決

Blogger で xB-ej4x1p エラーの続き。

このエラーは Google Chrome 最新版に起因するエラーだったらしい。Chrome バージョン 22.0.1221.0 dev-m で解決していることが確認された。この問題は Chromium の BTS に登録された。チケット番号は 139540。修正点に興味がある方は、BTS を参照のこと。

2012-07-26

Blogger で xB-ej4x1p エラー

Google Chrome で Blogger の「投稿」タブを開くと、次のエラーが出て読み込みが終わらない。

リクエストを処理できませんでした。
このエラーを Blogger サポートや Blogger ヘルプグループにご報告いただく場合:
このエラーが表示されたときに、どのような操作を行っていたか説明してください。
次のエラー コードを記載してください。

bX-ej4x1p

この件は既に Blogger の Google Group にバグ報告として上がっている。最も古い報告は今日の午前 1:33。

Google Chrome の最新版にバグが入ったか、Blogger 側にバグが入ったかは不明。Google (Blogger 開発チーム) からの回答は未だなし。近いうちに修正されることを望む。

2012-06-29

Blogger にパーマリンクをユーザーが決めるオプションが追加された

Blogger のパーマリンク (各エントリーの URL) は、Blogger が自動的に決定する。このたび、このパーマリンクをユーザー自身が決められる様になった。

パーマリンクの URL 命名規則

パーマリンクの URL は次の様なルールで付けられる。

  1. タイトルにアルファベットが含まれる場合は、そのアルファベットを使う
  2. タイトルにアルファベットを含まない場合は、「blog-post_日付.html」とする

このルールには三つの欠点がある。

一つ目はタイトルが英語で長い場合、パーマリンクも長い URL になってしまうこと。URL が長くて困ることは少ないが (最近は短縮 URL 系サービスも増えたし)、無駄に長くある必要もないと思う。

二つ目は、我々日本人の様にタイトルにアルファベットを含まないタイトルを付ける場合。パーマリンクがあまりにおざなりで見てて悲しくなる。

三つ目は、パーマリンクがブログの記事を投稿するまで分かりづらいこと。長〜いエントリーを、話題ごとに複数のエントリーに分けるテクニックがある (ref. clmemo@aka: 必ず結果が出るブログ運営テクニック 100 (コグレマサト するぷ) を読んだ)。このテクニックを使う時、次の記事へのリンクを予め書くのが困難。困る。

必ず結果が出るブログ運営テクニック100 プロ・ブロガーが教える"俺メディア"の極意
コグレマサト するぷ

4844331779
インプレスジャパン 2012-03-23
Amazonで詳しく見る
by G-Tools

パーマリンクの変更

Blogger のブログ・エディターの横にはオプション項目がある。ここに「パーマリンク」という項目が追加された。

試しに、記事タイトルを「ほげほげ」としてみる。日本語だけのタイトル。

自動 URL にチェックが付き、パーマリンクは blog-post_29.html となった。

では、記事タイトルを「Blogger にパーマリンクをユーザーが決めるオプションが追加された」にしてみる。

パーマリンクは blogger.html に変わった。記事タイトルにアルファベットは「Blogger」しかなかったから。

これだけだと、パーマリンクを扱っている記事だと分かりづらい (と考えたとしよう)。カスタム URL にチェックを入れ、入力欄に「blogger-permalink」と入力する。

すると、パーマリンクが「blogger-permalink.html」になった。

これで良ければ、「完了」ボタンを押す。

あとがき

これはおそらく Blogger in Draft の機能だと思うのだけど、Blogger 周りの情報源を当たっても明確なソースに当たることができなかった。

パーマリンクをユーザーが決められるというのは、時と場合によって便利だと思う。こういう小さな機能改善は大歓迎!

2012-06-15

Blogger に Facebook の「いいね!」ボタンを設置する

@dgtube さんから、ブログに Facebook の「いいね!」を付けないんですか? と聞かれたので、試しに「いいね!」ボタンを付けることにした。

「いいね!」ボタン設置

見た目

こんなんになる。

設定方法

以下の記事を参考にした。

基本コードの入手

まず、Facebook の Like Button のページから、ボタン用のコードを入手する。

(?) マークにマウスをホバーさせれば各項目の説明が現れるし、右手にプレビューが表示されるので困ることはないと思うけど、一応解説:

  • URL to Like: ブログの URL。後で書き換えるので、何でも良い。ぼくは自分のサイトの URL を入力した
  • Send Button: いわゆる Facebook の「共有」ボタン
  • Layout Style: 「Standard」は一行タイプ、「button_count」はボタン・タイプ、「box_count」はボックス・タイプ (今回採用したもの)
  • Width: 幅の指定 (普通 450px で変える必要はない)
  • Show Faces: ボタンの下に「いいね!」してくれた人の写真を表示する
  • Verb to display: 「like」なら「いいね!」、「recommend」なら「推奨」
  • Color Scheme: 色のタイプ。light と dark がある
  • Font: 英文用。空のままで良い

設定を終えたら、「Get Code」ボタンを押す。Blogger のテンプレートは HTML5 なので、「HTML5」のコードをコピペすればいい。コードは 2 つ。

<body> のすぐ後に配置するコード。

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/ja_JP/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

プラグイン (「いいね!」ボタン) を表示したい場所を配置するコード。赤色の部分は後で変更するコード部分。

<div class="fb-like" data-href="http://at-aka.blogspot.jp/" data-send="false" data-layout="box_count" data-width="450" data-show-faces="false"></div>
Blogger テンプレート用に編集

このままのコードでは、「URL to Like」で指定した「http://at-aka.blogspot.jp/」への「いいね!」ボタンしか表示されない。各記事ごとに「いいね!」を表示するため、Blogger のテンプレート用要素を使って編集する。

まず、「いいね!」ボタンを表示するためのコードを編集。青色が追加・変更した新しいコード。

<b:if cond='data:post.isFirstPost'>
<div class="fb-like" expr:data-href="data:post.canonicalUrl" data-send="false" data-layout="box_count" data-width="450" data-show-faces="false"></div>
</b:if>

次に body 直後に置くコードの変更。

<b:if cond='data:blog.pageType == "item"'>
<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/ja_JP/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
</b:if>

ぼくと同じタイプの「いいね!」ボタンを使うのなら、上のコードをそのままコピーしてもらって構わない。

テンプレートの編集

Blogger の設定画面から「テンプレート」を選択。「ブログで使用中」の下に「HTML の編集」ボタンがあるのでクリック。上級者しかやっちゃダメよ、という警告が出る。OK なら「続行」。

「ウィジェットのテンプレートを展開」にチェックを入れる。

<body ... で始まる行を探して (ブラウザーのページ内検索機能を使うとすぐに見つかる)、「body 直後に置くコード」を挿入する。

次に、<data:post.body/> のすぐ下に「いいね!」ボタン用のコードを貼り付ける。

これで、記事下に「いいね!」ボタンが表示される様になる (個別記事表示の時のみ)。他の場所に「いいね!」を配置したい場合は、希望の場所に上記コードを貼ればいい。

「HTML の編集」で「テンプレートを保存」する前に「プレビュー」を表示。これは HTML コードのチェックも行なってくれる。何かしらコードに不具合があったら、エラーが出る。エラーになったら、「記事内容をクリア」をクリックして修正分をキャンセルしよう。貼り付けたコードをチェックしてバグを見つける。エラーが出なくなったら「テンプレートを保存」して「閉じる」。

あとがき

「いいね!」ボタンを表示する手順を説明した。

プロ・ブロガー本には、Facobook の「いいね!」の他に複数のソーシャル・サイトのボタンを設置する Zenback というプラグインが紹介されている。

けれど、最近 Blogger が行なったドメイン変更 (.com を .jp に変えた変更ね) に Zenback は対応していない。

Zenback は、「.jp」ドメイン固定で使えと言う。けれど、Blogger のドメイン変更の嫌な点は、そのサイトを見ている人に合わせてドメインを変更すること。だから、日本から Blogger のページを見ると「.jp」でも、アメリカからぼくらのページを見ると「.com」になる。ノルウェーなら「.no」 (何故か、ぼくのブログはアメリカに次いでノルウェーからのアクセスが多い)。

他国からどれ位い自分のブログが見られているかは、Blogger の統計情報で調べられる。設定ページから「統計 > 参加者」で「国別のページビュー」を確認。

ぼくのブログでは、約 1 割の人達が国外から当ブログを読んでいた。彼らにとって、Zenback はちゃんと動作しないプラグインになる。この 1 割をどうするか悩んで、皆が幸せになる道を選んだ。もちろん、この判断はぼく個人のものなので、参考程度に考えてもらえれば嬉しい。

2012-06-13

Blogger に Google web Fonts を使う

先日、@dgtube さんにフォントを褒められた。

見出し部分のフォントがオシャレ。どうやってるのか気になっちゃいます。

Twitter / at_aka: @dgtube 見出しって、 より引用

@dgtube さんがおっしゃってるのは、スクリーン・ショットの英字部分ね。

自分のブログを褒められると嬉しくなっちゃう。これはねぇ、Google web Fonts の「Syncopate」ってフォントを使ってる。

Blogger での設定方法

Blogger では Google の Web Fonts が簡単に使えるので設定方法を書いておく。

まず Blogger の設定画面に入って「テンプレート」を選択。そこから「カスタマイズ」を選ぶ。

Blogger テンプレート デザイナーが開くので、「アドバンス > 投稿タイトル > フォント」から「SYNCOPATE」を選択。

以上で投稿タイトルに Syncopate フォントが適用される。簡単でしょ。

あとがき

Google web Fonts は開かれた API なので、Wordpress でも利用可能なはず。興味を持たれたら、是非お試しを。Syncopate フォント以外にも面白いフォントがあるので、眺めるだけでも楽しいよ。

2012-05-25

Blogger in draft ブログの終わり 〜 新情報は Google+ で公開

Blogger の新機能を新し物好きの人達に提供するサービス Blogger in draft。本家リリース前に、ユーザーからの反応を見るのが目的。ユーザーからすれば、一早く新サービスに触れられるサービス。その専用ブログが「retire」(終わる) という。

Blogger チームは Google+ ページ が次の情報源になると言っている。また、新しい情報を「色々な場所 (オフィシャル・ブログと Blogger in draft blog)」から得るのは面倒なので、シンプルにしたいとも言っている。どうも要領を得ない。

Blogger in Draft ブログに載せるべき情報 Google+ ページのみで配信し、Blogger の新着情報は Google+ ページと Blogger Buzz の両方で配信される。という風に読める。

SNS の「ページ」機能はソーシャルな人達を集めるのには効果的。その代わり、その SNS に参加していない人達は読めない。また、過去記事に対する検索機能も貧弱。SNS のニュース・フィードもフィードリーダーほどに洗練されていない。Blogger in Draft を廃止するメリットを感じない。

あとがき

Google+ ページはブログよりも優れていないと思う。これは Google の囲い込み戦略でないのか? それも悪い意味での。せめて、Google+ ページと Blogger in Draft ブログのクロス・ポストを行なうべきではないか?

新しい試みは結構だけれども、今回の試みには疑問が残る。

2012-05-13

ブログの「自己紹介」欄をサイドバーのトップに配置した

先日参加した コグレ・するぷのプロブロガー養成セミナー において、するぷさんのプレゼンで ブログのサイドバーの一番上にプロフィールを置く という Tips が紹介された。

ブログの作者が思っているほどに、読者は「作者」について興味がない。だから、逆に興味を持ってもらえれば、それだけでも儲け物。

確か、そんな意味合いだったと思う。なるほど、確かにブログの作者が何者か分かると、ブログへの愛着も増しそう。そう思うと、ぼくのプロフィールは下の方に置いていたし、簡素すぎたかもしれない。せっかく紹介されたことだし、プロフィール文も少し書き直してサイドバーのトップに置いてみた。どうかしらん。

2012-04-18

体調不良につき 〜 BlogPress で投稿

月曜日の朝から体調不良で寝込んでいます。Twitter のつぶやきをご覧になった方はご存じと思いますが、ようやく回復の兆しが見えてきました。

書きたいことは多いのに、体がついていかない無力感。悔しいものです。

そこで思い出したのが BlogPress Lite という無料 iOS 用アプリ。Blogger に記事を投稿できます。細かい文字修飾はサポートしていませんが、Twitter より長い文章を書くには面白いアプリだと思いました。

- Posted using BlogPress from my iPhone

2012-04-09

必ず結果が出るブログ運営テクニック 100 (コグレマサト するぷ) を読んだ

必ず結果が出るブログ運営テクニック100 プロ・ブロガーが教える“俺メディア”の極意
コグレマサト するぷ

4844331779
インプレスジャパン 2012-03-23
Amazonで詳しく見る
by G-Tools

2005 年頃にブームを迎えたブログ。ぼくもブームに乗ってブログを始めた一人。ただ、最近ブログの力が弱くなった様に感じる。理由は、ブログ・サービスが飽和したこと、メジャー・ブログの力が強くなりブログ間の貧富(?)の差が出たこと、そして Twitter, Facebook の台頭。このブログも、2005 年から 2007 年にかけて順調に PV を増やしていたけれども、それから 5 年間、月間 PV はほぼ横這い。4 万 PV/月 付近をウロウロしている。

そんな中、ブロガーに勇気をくれる本が出版された。Netafull のコグレさんと和洋風◎のするぷさん共著の一冊。「必ず結果が出るブログ運営テクニック 100」。全部で 100 のテクニックが載っている。お二人は Mac ユーザーで、Mac 系のアプリの紹介も多いが、Windows 系アプリの説明もほぼ等しくなされている。

本は大きく分けて、「記事を書く」「集客する」「マネタイズする」の三分野から構成される。より楽にネタを集め、より楽に記事を書き、より多く記事を出す。多くの人にブログ記事が目に入るように工夫する。アフィリエイトを利用して、お金を手に入れる。この三分野。「書かれていない事柄」にも触れておこう。本書には、「文章術」に関する記述はない。文章を上手く書きたい人は他に本を求める必要がある。文章術に関しては、それだけで一冊の本になる。小説や論文に関する文章術の本は多いが、ブロガー向けの文章術の本は見たことがない。コグレさんとするぷさんには、「ブログ運営」の第二弾として「ブログ文章術」の本も書いて欲しいところ。

さて、本書の内容。ブログを 7 年やっていれば、既に知っていることも多い。それでも、半分位いは知らないことだった。「ブログを書く」ことはよく分かっているつもりだったけれども、「ソーシャルメディアと連携して仲間を増やす」という意識は低かった。本書を読んで、まずは放置に近かった Facebook に力を入れるようにしてみた。

感銘を受けたテクニック

特に感銘を受けたのは、テクニック 10「記事の中で伝えたい要素は必ず 1 点だけに絞る」というもの。長すぎる記事は分割し、まとめ記事を用意しなさい、というテクニック。NTT R&Dフォーラムの記事で一応このテクニックを使ってはいるのだけれども、本書を読んで分割粒度をもっと小さくして良さそうだと思った。

あと、テクニック 1 「毎日ブログを更新するためのルールを決めよう」。1 日 1 本の記事を書く。最近できていないことなので、ガツンとやられた気分。毎日書いてると肩の力を抜いて書ける様になる、と。そういえば、近頃は記事を書くのに肩に力が入ってた様な気がする。軽めの記事でも良いから、毎日書ける様になりたい。

Emacs では...?

本書では、ブログの下書きを専用エディターで書くことを勧めている。それは Mac のエディター。一方、ぼくは Emacs が愛用のエディターになっている。ブログ用に少しカスタマイズもしている。ニッチな話題だけれども、Emacs エディターでブログ下書きを書く、という話題も面白そうだと思った。

2012-02-08

ブログ・デザイン変更

clmemo@aka のデザインを変更した。旧テンプレートと自家製 CSS ファイルに、さようなら。新テンプレートに、こんにちは。

新しいテンプレートは良いね。twitterFacebookGoogle+ との連携ボタンを簡単に付けられるし、サイドバーを 2 列にすることもできる。Google Analytics との連携もテンプレートをいじらず、設定ページからちょちょいのちょい。

旧ブログのテンプレートでは、本文の横幅が狭かったけど、新テンプレートは巾が広い。これは、PC のディスプレーが大画面化してきたことと、スマートフォン用に別スタイルを適用できることが効いているのかな。

最近は Blogger に新機能が追加されても、旧テンプレートだからチェックできないことが多かった。でも、新テンプレートに移行したからには、新しい情報をどんどん届けて行きたいね。

あとがき

新テンプレートに移行したのは、ようやく「目次」ウィジェットを完成させたから。Blogger の今の弱点は、トップ・ページやラベル・ページを見た時に、どんなタイトルがあるか分からないことだと思っていた。そこで、昔はテンプレートをいじって「目次」を作ってた。でも、新テンプレートでは「ウィジェット」でそれをやりたいと思っていて... それが出来なくって移行がずるずると延びていた。

今日、「目次」ウィジェットを公開して枷がなくなった。「目次」ウィジェット、よければ使って欲しい。ついでに、「+1」してくれるとやる気が出る :)

ref