質問

iPhone、iPad、Android、タブレットなどをリダイレクトするための「最先端」の文字列は、ユーザーを別のデザインにしますか?

つまり、私は気づきます

System -> Configuration -> Design

ユーザーインターフェイス、ユーザーエージェント文字列と一致する正規表現を作成できる機能があります。私が探しているのは、非デスクトップコンピューターを別のモバイルおよび/または応答のテーマにリダイレクトするために人々が使用している特定のストリングは何ですか?

または、最近の「例外」アプローチよりも良いアプローチがありますか?

役に立ちましたか?

解決

使用した2つの異なるバージョンがあります。 1つ目は、 @Mariusが特定の「Fennec」の言及を差し引いたことについて言及したのと同じです(これはもはやUA文字列にありません FFモバイルの)。同様の情報源から入手しました:

iPhone|iPod|BlackBerry|Palm|Googlebot-Mobile|Mobile|mobile|mobi|Windows Mobile|Safari Mobile|Android|Opera Mini

2番目は同じですが、「モバイル」という用語が削除されているため、サイトのモバイルバージョンがiPadに提供されないようにします。 Appleはこれをで呼び出すことさえ指摘しています TN2262:

iPadのSafariは「デスクトップ」Webエクスペリエンスを提供できるため、iPadには大きな画面と高速のネットワーク接続があるため、ユーザーはこのエクスペリエンスを期待します。小さな画面を備えたモバイルデバイス用に最適化されたWebサイトのバージョンがある場合は、このモバイルバージョンをiPadユーザーに提供しないでください。

...

iPadユーザーエージェント文字列のSafariには「モバイル」という単語が含まれているが、「iPhone」という単語は含まれていないことに注意してください。現在、「モバイル」として自己識別するブラウザにモバイルコンテンツを提供している場合は、ユーザーエージェントの文字列チェックを変更してiPadを探し、サイトの間違ったバージョンの送信を避ける必要があります。

FFモバイルに表示されているものに基づいて、この文字列で「Android」を使用すると、デスクトップテーマがすべてのタブレット(iPadだけでなく)に提供されたい場合に問題が発生します。 それは決定されました さまざまな理由でUA文字列に含める。

正直なところ、上記の文字列の報道を個人的にテストしませんでした。私はこれを知っています:それは複雑な混乱です! :)

注:EE 1.12以前にこれを設定している場合(1.13をチェックしていません)、FPCのMagentoサポートのパッチが適切に動作する必要があります。リリースビルドでは、設計の例外を考慮していません。

更新1:

設計の例外を使用するためにパッチを必要とする有名なバグは、EE 1.13.0.0および1.13.1.0にまだ存在します。 Magento Supportから入手可能なパッチがあり、既知の問題リストに載っています:Supee-1598

他のヒント

タブレット用の2つのデザインの例外を追加しました。1つはデスクトップテーマを提供し、もう1つはモバイルテーマを提供しています。最初にタブレットをターゲットとする例外を追加し、次に携帯電話をターゲットとする例外を追加します

タブレット

iPad|Silk|Kindle|Xoom|SCH-I800|Tablet|GT-P10|SC-01C|SHW-M180S|SGH-T849|SCH-I800|SHW-M180L|SPH-P100|SGH-I987|zt180|HTC(.Flyer|\\_Flyer)|Sprint.ATP51|ViewPad7|pandigital(sprnova|nova)|Ideos.S7|Dell.Streak.7|Advent.Vega|A101IT|A70BHT|MID7015|Next2|nook|Windows NT|DROID RAZR

電話

android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|iP(hone|od)|iris|kindle|lge |maemo|meego.+mobile|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|(Android.+Mobile)|NOKIA|SymbianOS|N900|BlackBerry|Mobile

これは、私がクレジットを与えなければならないと予想どおりにほぼ100%動作し、大いに感謝します ビープロジック 私は私の基礎として使用した正規表現、ビープをありがとう!

可能な値のリストは次のとおりです。これらはすべての可能な値ではないと確信していますが、ほとんどの場合をカバーしています。

iPhone|iPod|BlackBerry|Palm|Googlebot-Mobile|Mobile|mobile|mobi|Windows Mobile|Safari Mobile|Android|Opera Mini|Fennec

出典:
http://magebase.com/magento-tutorials/magento-design-exceptions-explained/
http://inchoo.net/ecommerce/magento/magento-mobile-theme-imobile/

これは私が使用したものです。

android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|meego.+mobile|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino

Androidデバイスの特定のバージョンを除外する必要がありました。同様のアプローチを使用して、iOSバージョンを除外できます。

次の例は、iPad、iPhone、およびすべてのAndroidを除くすべてのAndroidと一致します。

iPad|iPhone|Android ((?!(2\.|3\.|4\.0)).)

ネガティブルックアラウンドを使用しています。説明を参照してください ここ.
「> 2.3」を模倣しようとすると、正規表現では機能しませんが、例として回避策が必要であることに注意してください。
オンラインの文字列での正規表現マッチングをテストするための優れたリソースは ルムラ

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top