Kjapp og trygg hosting for Wordpress

Hvordan vise innhold i forhold til mobil eller pc?

Demilio

Medlem
Jeg lager en html-app for øyeblikket, men sliter litt med å finne ut hvordan jeg kan vise 1 innhold for de som har mobil og et annet innhold for de som har vanlig nettleser.

Noen som vet?

Noe i denne duren:
if mobile - redirecto to (http://www.geagag.....)
 
om du skal lage en vanlig side, vil dette bli gjort i css. en for hver, mobile, handheld, osv.
 

Demilio

Medlem
Jeg trenger kun et script som sender besøkende videre til en ny URL om det er mobil. Er det noe som har det?

FYI - Selve appen og resten av funksjonene både for iphone, ipad og andriod fungerer så d suser....
 

adeneo

Medlem
.htaccess
Kode:
<IfModule mod_rewrite.c>
    RewriteBase /
    RewriteEngine On

    # Sjekk om det ser ut til å være en mobil enhet
    RewriteCond %{HTTP:x-wap-profile} !^$ [OR]
    RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC,OR]
    RewriteCond %{HTTP:Profile}       !^$

    # Sjekk om vi allerede er på den mobile siden
    RewriteCond %{HTTP_HOST}          !^mobil\.
    
    # Videresend til mobil side
    RewriteRule ^ http://mobil.minside.no%{REQUEST_URI} [R,L]
</IfModule>

PHP
Kode:
<?php
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$ipad = strpos($_SERVER['HTTP_USER_AGENT'],"iPad");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");

// Sjekk om det ser ut til å være en mobil enhet
if ($iphone || $ipad || $android || $palmpre || $ipod || $berry == true) 
{ 
// Videresend til mobil side
header('Location: http://mobil.minside.no/');
// eller sett det inn i filen
echo "<script>window.location='http://mobil.minside.no'</script>";
}
?>

Ruby on Rails
Kode:
class ApplicationController < ActionController::Base
  helper :all
  protect_from_forgery
  layout :detect_browser

  private
  MOBILE_BROWSERS = ["android", "ipod", "opera mini", "blackberry", "palm","hiptop","avantgo","plucker", "xiino","blazer","elaine", "windows ce; ppc;", "windows ce; smartphone;","windows ce; iemobile", "up.browser","up.link","mmp","symbian","smartphone", "midp","wap","vodafone","o2","pocket","kindle", "mobile","pda","psp","treo"]

  def detect_browser
    agent = request.headers["HTTP_USER_AGENT"].downcase
    MOBILE_BROWSERS.each do |m|
      return "mobile_application" if agent.match(m)
    end
    return "application"
  end

//inkluderes i siden med:
<%= link_to "MOBIL SIDE", :controller => "home", :action => "set_layout", :mobile => "1" %>

Javascript
Kode:
<script type="text/javascript">// <![CDATA[  
// Sjekk om det ser ut til å være en mobil enhet
    var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));  
    if (mobile) {  
// Videresend til mobil side
        document.location = "http://mobil.minside.no";  
    }  
// ]]></script>
 
Sist redigert:

Pong

Jeg selger sʇɥƃıluʍop :)
.htaccess-måten er å foretrekke :)
Kan ikke ruby, men der ser det bra ut også.
Resten inneholder en ekstra gang til serveren.

Responsive design er greit og alt, men det er godt å kombinere dette server-side med noen is_mobile() funksjoner for å unngå å sende elementer til enheten som ikke hører hjemme der (og som kun blir skjult).
Jaja, det e någe med alt..
 
Topp