Как установить другую статическую домашнюю страницу для мобильной версии? (WordPress) - программирование
Подтвердить что ты не робот

Как установить другую статическую домашнюю страницу для мобильной версии? (WordPress)

Я хотел бы иметь другую старую домашнюю страницу для моей мобильной версии моего веб-сайта. Это не настоящая мобильная версия, но она отзывчива.

У меня ползунок полноэкранного изображения, который теперь установлен как статическая страница. Это масштабируется до экранов из-за сложной сборки веб-сайта, но на мобильном устройстве, таком как iPhone, выглядит не очень хорошо. Поэтому у меня есть другой шаблон домашней страницы, который я хотел бы использовать, когда веб-сайт просматривается на мобильном устройстве.

Можно ли это сделать с помощью каких-либо плагинов, или это должно быть сделано путем кодирования? Я не хочу использовать переключатель тем или что-то в этом роде, просто хочу, чтобы у меня была другая статическая страница для мобильных устройств.

Кто-нибудь знает, как это сделать?

4b9b3361

Ответ 1

Вы можете использовать wp_is_mobile для проверки на наличие мобильных устройств и подключиться к template_redirect, чтобы загрузить другой шаблон, если мобильный обнаружен:

function so16165211_mobile_home_redirect(){
    if( wp_is_mobile() && is_front_page() ){
        include( get_template_directory() . '/home-mobile.php' );
        exit;
    }
}
add_action( 'template_redirect', 'so16165211_mobile_home_redirect' );

Ответ 2

Я бы включил Mobile-Detect в тему в своей собственной папке и добавил этот код в начало header.php:

if( is_front_page() ){

    include_once('mobile-detect/Mobile_Detect.php');
    $detect = new Mobile_Detect(); 

    if ( $detect->isMobile() || $detect->isTablet() ) {
        $redirect_url = 'http://example.com/mobile_home';
        header('Location: ' . $redirect_url ); // Redirect the user
    }
}

Вы можете настроить это решение так, как хотите. Я использовал это для нескольких проектов для аналогичных решений.

Ответ 3

Вы можете попытаться использовать detectmobilebrowsers script.

Как я помню, это всего лишь один php файл и имеет одну функцию, которая запрашивает, как обрабатывать разные мобильные устройства (iPhone, iPad, Androids, телефоны Windows, устройства BlackBerry и Palm).

Вы можете лучше понять, как работает script, перейдя на страницу function generator.

Ответ 4

Это легко и не нужно кодировать все. Установите плагин "Перенаправление" из репозитория Wordpress. 1. Перейдите на страницу настроек. 2. Введите "Исходный URL" с домашней домашней страницей по умолчанию 3. В опции "Матч" выберите "URL и пользовательский агент", а в опции "Действие" выберите "Перенаправить на URL". Нажмите "Добавить перенаправление". 4. Появится новый вариант конфигурации. Дайте любой заголовок, который вы хотите. "Исходный URL-адрес" должен быть пустым (означает, что это ваша базовая страница). В опции "Пользовательский агент" выберите iPhone или Android. В опции "Соответствует" установите перенаправление, которое вы хотите для домашней страницы для мобильных устройств.

Готово!

Вы наверняка можете отличить домашнюю страницу на настольном и мобильном устройстве на основе перенаправления, который вы уже установили с этим плагином. Однако у вас не может быть такого же имени URL (например: www.abcde.com для рабочего стола и www.abcde.com/mobilehomepage для мобильного устройства).

Ответ 5

Это должно работать: (вставьте его в functions.php)

    //* Redirect homepage on mobile
add_action( 'wp_head', 'wps_params', 10 );
function wps_params() {
    ?>
    	<script>
	if (window.location.pathname == '/' && jQuery(window).width() <= 480) {
	   window.location = "/webshop/";
	}
	</script>

    <?php
}

Ответ 6

Это здорово для меня:

function so16165211_mobile_home_redirect(){
    if( wp_is_mobile() && is_front_page() ){
        include( get_template_directory() . '/home-mobile.php' );
        exit;
    }
}

Ответ 7

Добавление следующего в ваши функции. php должно сделать трюк:

//* Redirect homepage on mobile

add_action( 'wp_head', 'wps_params', 10 );

function wps_params() {
?>

<script>
if (window.location.pathname == '/' && jQuery(window).width() <= 480) {
   window.location = "/webshop/";
}
</script>

<?php
}