WordPress: Ktai Styleプラグインを停止

これまでWordPressでケータイ用の表示対応として「Ktai Style」プラグインを使ってきたが、どうもWordPress-4.9.1へ更新すると齟齬が出るのか、サーバ自体が動作停止するような感じになってしまった。しかたないので、このプラグインは停止させた。

(PHP7だとエラーが出るとの話もあるが、うちで現在動作させているのはPHP 5.6.32 (cli))

それから、この「Ktai Style」でもそうだが、htmlspecialchars()絡みのエラーが本体のformatting.phpの方でも出ていた。

[.] [error] [client XXX] PHP Warning:  htmlspecialchars(): charset `none' not supported, assuming utf-8 in .../wp-content/plugins/ktai-style/ktai_style.php on line 656
[.] [error] [client XXX] PHP Warning:  htmlspecialchars() expects parameter 2 to be long, string given in .../wp-admin/includes/template.php on line 1021, referer: ...
[.] [error] [client XXX] PHP Warning:  html_entity_decode(): charset `none' not supported, assuming utf-8 in .../wp-includes/formatting.php on line 5124, referer: ...

htmlspecialchars()の3つめの引数が指定されていないためのエラーらしく、PHP側のdefault_charsetを設定しても対応できそうだったので、とりあえず.htaccessに下記を記述して対応:

php_value default_charset "UTF-8"

apple-touch-iconのdoes not existに対応する

このところサーバのアクセスログを眺めていると、延々と

[.] [error] [client XXX] File does not exist: /var/www/html/apple-touch-icon-120x120-precomposed.png
[.] [error] [client XXX] File does not exist: /var/www/html/apple-touch-icon-120x120.png
[.] [error] [client XXX] File does not exist: /var/www/html/apple-touch-icon-precomposed.png
[.] [error] [client XXX] File does not exist: /var/www/html/apple-touch-icon.png

のように出ている。

iPhoneだかのアクセス時にアイコン画像を欲していて、(こちら側では用意していないので)エラーになっていて、特に実害はないかと思って放っていたが、ログは無駄に増えるしアクセスも増えちゃうしで、邪魔なので対応してみた。

方策としては2つ:

  1. アイコン画像を用意する(ダミーでも可)。
  2. アクセス時にエラーにする。

ここでは、2.でやってみた。Apacheの設定で「RedirectMatch gone」を使う。

これでサーバを再起動すると、例えばapple-touch-icon.pngにアクセスすると次のような表示になる(これも数が増えると結構な通信量になる気はするが…)。

他の1.の(画像用意)の方法

AndroidブラウザでonClickイベントがうまくいかない

自前ページで、セレクタの選択時にすぐに投稿させようと、下記のように:

<select name=”XXX” size=”20″>

としていたのだが、どうもAndroidスマホで閲覧するとうまく選択できない。FirefoxでもChromeでもどちらもダメ。

どうも、AndroidブラウザではonClick自体がうまく動作しないらしい。

モバイル用のみでよければ、onTouchStartイベントを使うという対応もあるようだが、PC表示がメインなのでそういうわけにもいかず…。

VBA:図形を真下にコピー

Sub 図形コピーテスト() '現在選択されている図形を複製し、真下に位置させる
    With Selection
        Dim t, h, l
        '現在の選択図形の位置・高さを保存
        t = .ShapeRange.Top
        l = .ShapeRange.Left
        h = .ShapeRange.Height
        'コピーし、貼付け(この時点で選択が貼付け図形に切り替わる)
        .Copy
        .Paste
        '貼付け図形の上端と左端の座標を先の図形の真下に来るように指定
        .ShapeRange.Top = t + h
        .ShapeRange.Left = l
     End With
End Sub

AndroidでのPCページ表示時のページ設定

Androidスマホで、PCページを表示していると、なぜかやたら文字が小さく表示されてしまって、スタイルシートでフォントサイズを指定してもなぜかうまくいかなかったのだが、Android専用の下記のようなmetaタグ指定が必要だったらしい。

※上記のmetaタグ例では”の前に\が入っているので取り除いて下さい。


指定なし(表示が小さ過ぎ)

meta指定あり