SEO対策用タイトル、ディスクリプションの文字数カウントツール
2014/08/19
SEO対策用タイトル文字数をカウントするツール
文字数カウンター、文字数チェッカー
このブログを書く際にタイトルやディスクリプション、概要の文字数をカウントするツールを作りましたので、そのご紹介です。
もともと、SEOをそれなりに気にしてタイトルを付けてはいましたが、最近はもっとしっかり対応した方がいいと思えてきまして、タイトルの文字数もカウントしながらつけるようになってきていました。
ですが、さすがに毎回毎回手でカウントしていくのには限界がありまして、やっぱり何かしら仕組みが必要だと思うに至ったのです。
もちろん文字数をカウントしてくれる Webツールはあちこちにありますので、わざわざ作るまでもないものではありますが、思わず作ってみたくなったという感じでしょうか。
とはいえ、文字数をカウントするだけのツールですので、原型を作るのにはほとんど時間はかかっていません。(細かな調整も含めると数時間ほどかかっていますが。)
文字数カウントツール
http://s-giken.info/count/char_count.php
mb_strlen関数を使うときの注意点
しかし、原型はあっさり出来上がったものの、文字数をカウントする mb_strlen関数がいまいち正確に動いていないように見えました。
いろいろ調べて見た結果、mb_strlen関数は、環境によって正確に動かない可能性があることが分かりましたので、併せてここに記録しておこうと思います。
具体的に、私のローカルの開発環境である XAMPP環境で下記を実行すると
——————
|
1 |
mb_strlen ( "SEO対策用タイトル文字数をカウントするツール" ); |
——————
で実行すると「63」という結果が返ってきました。
これは、バイト数をカウントする「strlen」と同じ結果でした。
おかしいですね。
これは、PHPの内部エンコーディングが文字列のエンコーディングと異なっている場合に mb_strlen関数は正常な値を返してくれない可能性があることに起因している不具合です。
そのため、現在の環境で不具合がなかったとしても、今後サーバ環境を移転したり、PHPのバージョンが上がったりすることで環境が変わった場合には不具合が起こる可能性もあることから、mb_strlenを始め、mb_*****系の関数は文字コードを指定して使用する方がよさそうです。
ここでは、プログラムファイル自体を UTF-8で作成していますので、第二引数として指定する文字コードも UTF-8で指定をします。
——————
|
1 |
mb_strlen ( "SEO対策用タイトル文字数をカウントするツール", "UTF-8" ); |
——————
そうすると正確な「23」文字と出てきました。
また、UTF-8を間違って SJISを指定してしまうと「37」という結果が返ってきます。
ちなみに、この結果からもわかるように、全角文字を Shift-JISでは 2バイト、UTF-8では 3バイトとして扱っていることが分かりますね。
そんな記事は「日本語は2バイト文字?3バイト文字?」にも書いていますので、併せて読んでいただければ、と思います。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
数値文字参照コード変換ツール(HTML特殊文字コード変換ツール)
テキストを数値文字参照コード(特殊文字コード)に変換するツール。テキストを数値文字参照コードに簡単変換。数値文字参照、文字実体参照、特殊文字などの違いも解説。
-
-
ECCUBEの新規追加ページがInternal Server Error・Not Foundに
ECCUBEで新規追加したページがInternal Server Errorに!原因はファイルのパーミッションの場合が多くその対処方法とプログラムの修正ポイントを解説。Not Foundも解説。
-
-
Basic認証の.htaccess、.htpasswd生成ツールと解説
Basic認証を設定する際に必要となる.htaccess、.htpasswdファイルを生成するツール。ID、PASS、.htpasswdへのパスを入力することで編集する情報を生成します。
-
-
ECCUBEの管理画面のSSL設定をインストール後に変更する方法
ECCUBEをインストールした後から管理画面のSSL設定を変更する方法を解説します。config.phpファイルのHTTPS_URLとADMIN_FORCE_SSLの値を変更すればOK。
-
-
乱数発生器(パスワード生成サービス)がバージョンアップで高速化!
乱数やパスワードを生成する乱数発生器を高速化!重複しない10桁、20桁の文字列を10万件、20万件と生成することも可能!イベントのキャンペーンのシリアルコードなどにも利用可能!
-
-
ECCUBEの注文完了画面注文番号と商品情報を編集するCRITEO(クリテオ)タグを編集
ECCUBEの注文完了画面にクリテオのタグを編集する方法を紹介。標準機能では完了画面に注文IDや購入商品の情報を渡さないため改修が必要です。
-
-
複数銘柄を指定して株価チャートを一覧するツール公開
入力銘柄の5日間、3か月間、6か月間、1年間、2年間の株価チャートを一覧表示しますのでチャートで売買判断をするのに最適です。
-
-
XML形式の値を配列形式に変換・PHPでは simplexml_load_string()
XMLとは「Extensible Markup Language」の略でテキストベースのデータフォーマット。XMLをPHPで配列に変換するWebツールの紹介とその処理「simplexml_load_string()」関数についての解説。
-
-
指定した数で文字列を丸める(n文字目で…にする)関数substr、mb_substr、mb_strimwidthの違い
文字列を指定された数で抜き出すPHPの関数、substr、mb_substr、mb_strimwidthについての解説。似た関数だが引数の指定方法が違ったり、文字数がバイト数か文字数かも違ったり、注意が必要だ。
-
-
WindowsのXAMPPのPHPではstrptimeは使用不可。代替はdate_parse_from_formatを使う
strptimeはWindowsのPHPには未実装。LinuxとMacで挙動が異なる。PHP8.1で非推奨になる。なので日付のチェックはdate_parse_from_formatを使おう。使い方を詳細解説。