サポート » プラグイン » Ktai Style使用でWiiのOperaからアクセスすると携帯表示?

  • 解決済 shokun0803

    (@shokun0803)


    wordpress 2.8.4
    Ktai Style 1.74
    上記構成でWiiのOperaからアクセスすると携帯表示になります。
    デフォルトでPC表示にするにはどうすれば良いでしょうか?

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • モデレーター IKEDA Yuriko

    (@lilyfan)

    Opera の携帯表示では、一番下に「PC 表示にする」というリンクが出ますが、「デフォルトで」ということは、切り替えてもらうという解はないわけですよね。

    携帯表示を完全に殺していいならば、operators/services.php を改造して Wii 判別部分を削除るか、detect_agent 独自フィルターで、Wii に判別されたら中止する手があります。

    function ks_force_pc_wii($ktai, $ua) {
    	if ($ktai && $ktai->get('term_name') == 'Nintendo Wii') {
    		unset($ktai);
    		$ktai = null;
    	}
    	return $ktai;
    }
    add_filter('detect_agent/ktai_style.php', 'ks_force_pc_wii', 10, 2);

    携帯表示への切り替えリンクを残したまま、デフォルトは PC 表示にしたい、というのであれば、以下の改造でいけると思います (試してません)。

    function ks_default_pc_wii($ktai, $ua) {
    	if ($ktai && $ktai->get('term_name') == 'Nintendo Wii' && ! isset($_COOKIE['ks_pc_view'])) {
    		setcookie('ks_pc_view', true, 0, COOKIEPATH, COOKIE_DOMAIN);
    		setcookie('ks_pc_view', true, 0, SITECOOKIEPATH, COOKIE_DOMAIN);
    	}
    	return $ktai;
    }
    add_filter('detect_agent/ktai_style.php', 'ks_default_pc_wii', 10, 2);
    トピック投稿者 shokun0803

    (@shokun0803)

    すみません、自宅に帰らないとテストができないので、後ほど試してみます。
    ありがとうございます。

    トピック投稿者 shokun0803

    (@shokun0803)

    えっと、wordpress2.8以降でmy-hacks.phpは使えなくなってしまったので、my-hacks.phpをプラグイン化する方法で試していますがうまくいきません。(一応、FireFoxのユーザーエージェントをごまかす方法で試しています。実機テストは時間がかかるので・・・)
    そもそもプラグイン化したmy-hacks.phpがきちんと動作しているかの確認もできないので、現状はFireFoxでユーザーエージェントをOpera/9.10 (Nintendo Wii; U; ; 1621; ja)としてセットし、携帯表示になるかどうかでテストしています。

    my-hacks.phpの内容は以下のとおりです。

    <?php
    /*
    Plugin Name: my-hacks.php
    Plugin URI: http://
    Description: my-hacks.php - replacement since WordPress 2.8
    Author: staff
    Version: 0.1
    Author URI: http://
    */
    
    /* --------------------------------------------
     * Wii対策フィルターフック
     * -------------------------------------------- */
    
    function ks_force_pc_wii($ktai, $ua) {
    	if ($ktai && $ktai->get('term_name') == 'Nintendo Wii') {
    		unset($ktai);
    		$ktai = null;
    	}
    	return $ktai;
    }
    add_filter('detect_agent/ktai_style.php', 'ks_force_pc_wii', 10, 2);
    
    ?>

    一応、文字コードUTF-8N、Shift-JISどちらでも試しました。
    FireFoxの疑似環境が良くないのでしょうか?このままでも実機ならうまく動くのでしょうか?実機テストは自宅に帰ってからテストになってしまいますが・・・

    できればコア修正なしでフックで何とかしたいのですが、対応方法がありましたらよろしくお願いいたします。

    モデレーター IKEDA Yuriko

    (@lilyfan)

    Plugin Name: my-hacks.php

    プラグインの名前およびファイル名は a-j のどれかの文字で始めるようにしてください。Ktai Style より先に読み込まれないといけないわけです。

    トピック投稿者 shokun0803

    (@shokun0803)

    ありがとうございます。
    abate-hacks.phpとリネームして疑似環境ではうまくいきました。
    実機テストもこれから行いますが、多分大丈夫であろうと思います。
    とても助かりました。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「Ktai Style使用でWiiのOperaからアクセスすると携帯表示?」には新たに返信することはできません。