All in One SEO Packでmetaタグの内容が途中で切れる現象について
当ブログはwordpressで構築し、SEO対策として「All in One SEO Pack」を導入している。
SEO対策しているつもりだったんだけど、前回の記事「Ctrl+Cとkill -SIGINTの違いからLinuxプロセスグループを理解する」がうまくGoogleにインデックスされないのでmetaタグを調べてみた。
すると、期待していたdescriptionは
Ctrl-Cとkill SIGINTはプロセスに対してINTシグナルを送信している点は同じである。しかし、(以下略)
であるのに対して
<!-- All in One SEO Pack 2.1.5 by Michael Torbert of Semper Fi Web Design[255,308] --> <meta name="description" content="Ctrl-Cとkill " />
みたく途中でdescriptionが途切れていた。
この辺がうまくインデックスされなかった原因っぽい。
metaタグ自体表示されないならまだ分かるけど、途中で切れるという現象に嫌な予感を感じつつ調べてみると、どうやら日本語の処理が怪しい。(ASCII文字だけだとうまくいくし)
ということでプラグイン調べてみると
案の定「WP Multibyte Patch」が無効になっていた。
このプラグインは英語圏で作成されたwordpress上で問題無くマルチバイト文字を扱うためのプラグインである。うーん、怪しい、とても怪しい。
ということで有効化を試みるも、今度は「php-mbstringがインストールされていない」というエラーが発生。
ということで「php-mbstring」をインストールし、Apache再起動
$ sudo yum -y install php-mbstring Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * base: ftp.tsukuba.wide.ad.jp * epel: ftp.jaist.ac.jp * extras: ftp.tsukuba.wide.ad.jp * updates: ftp.tsukuba.wide.ad.jp Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php-mbstring.x86_64 0:5.3.3-27.el6_5 will be installed --> Finished Dependency Resolution Dependencies Resolved =================================================================================================================================================== Package Arch Version Repository Size =================================================================================================================================================== Installing: php-mbstring x86_64 5.3.3-27.el6_5 updates 455 k Transaction Summary =================================================================================================================================================== Install 1 Package(s) #以下略 Complete! $ sudo service httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ]
この後無事に「WP Multibyte Path」を有効化でき、metaタグも問題無く表示できた。
今回分かりにくかったのは、metaタグ内の文言の途切れる位置がマルチバイト文字の始まりでは無いという点。
例えば、descriptionの冒頭「Ctrl-Cとkill -SIGINTはプロセスに対して」を「WP Multibyte Path」なしで表示すると「Ctrl-Cとkill 」といった結果になる。
まず、マルチバイトの「と」が出てるし、途切れている位置もマルチバイト文字ではないし分かりにくい。
何はともあれ無事に解決できて良かった。
関連記事
記事はありませんでした
Comment
Wonderful blog site you have in this article nevertheless I was questioning should you knew involving any community forums that concentrate in making a similar subjects talked about the following? I’d really like to become portion of set exactly where I am able to obtain viewpoints from all other encountered people that share precisely the same curiosity. In case you have any strategies, please allow me to understand. Thank you!
tiicr1