Aprenda como redirecionar um site para versão mobile ou desktop usando Javascript

[Corrigido] Como redirecionar o site para uma versão mobile ou desktop usando javascript



Aprenda como redirecionar um site para versão mobile ou desktop usando Javascript

Na era digital é muito importante ter um site responsivo que se adapte ao dispositivo do usuário, por isto criei este código para você usar em qualquer site que usa Javascript.

redirecionar se for mobile ou desktop usando javascript

No meu caso, o site com versão mobile usa  um parâmetro na url "?m=1" quando é para celular e "?m=0" quando for desktop, no seu caso basta adaptar de acordo com o parâmetro usado em seu site para versão mobile/desktop.


// Verifica se o usuário está em um dispositivo móvel
var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);

// Obtém a URL atual da página
var currentUrl = window.location.href;

// Define o parâmetro de redirecionamento
var redirectParam = isMobile ? '1' : '0';

// Verifica se o parâmetro ?m já está presente na URL
var regex = /[?&]m=[01]/i;
var newUrl;
if (regex.test(currentUrl)) {
    // Se o parâmetro ?m já estiver presente na URL, substitui seu valor
    newUrl = currentUrl.replace(/([?&])m=[01]/i, '$1m=' + redirectParam);
} else {
    // Caso contrário, mantém a URL sem adicionar o parâmetro ?m
    newUrl = currentUrl;
    if (currentUrl.indexOf('?') !== -1) {
        newUrl += '&m=' + redirectParam;
    } else {
        newUrl += '?m=' + redirectParam;
    }
}

// Redireciona para a nova URL, se for diferente da URL atual
if (newUrl !== currentUrl) {
    window.location.href = newUrl;
}

        

Este comando foi pensado exclusivamente para quem usa o site hospedado no blogger da Google, mas você pode adaptar facilmente os comandos para outras plataformas.

Por exemplo se seu site tiver o parâmetro "m.site.com" quando for mobile e "site.com" quando for desktop, basta trocar o código por este abaixo, 

NÃO SE ESQUEÇA DE SUBSTITUIR A PARTE ESCRITO "SITE.COM" PELA URL QUE VOCÊ DESEJA.



    // Verifica se o usuário está em um dispositivo móvel
    var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);

    // Obtém a URL atual da página
    var currentUrl = window.location.href;

    // Define a base URL para desktop e mobile
    var desktopBaseUrl = "https://site.com";
    var mobileBaseUrl = "https://m.site.com";

    // Define a URL de redirecionamento com base no tipo de dispositivo
    var redirectUrl;
    if (isMobile && currentUrl.startsWith(desktopBaseUrl)) {
        // Se for mobile e a URL atual começa com a base para desktop, redireciona para mobile
        redirectUrl = currentUrl.replace(desktopBaseUrl, mobileBaseUrl);
    } else if (!isMobile && currentUrl.startsWith(mobileBaseUrl)) {
        // Se for desktop e a URL atual começa com a base para mobile, redireciona para desktop
        redirectUrl = currentUrl.replace(mobileBaseUrl, desktopBaseUrl);
    } else {
        // Não é necessário redirecionamento
        redirectUrl = null;
    }

    // Redireciona, se necessário
    if (redirectUrl) {
        window.location.href = redirectUrl;
    }


        
Se nenhum dos dois cenários funcionar para você, comente aqui em baixo, terei o maior prazer em ajudar.


PROXIMA → INICIO

Comente com o Facebook

2 comentários :

  1. Resolveu, obrigado meu site também tinha o parametro ?m=1 no final quando era mobile.

    ResponderExcluir
  2. resolveu, no meu caso o site era mobile.site.... só troquei a url para a a correta que era m.site....

    ResponderExcluir

COMENTE SEM SPAM !

 

Além do site temos uma página de frases
Curta nossa página antes.