고수님들 디바이스마다 다른 값을 입력하는 방법이 궁금합니다

고수님들 디바이스마다 다른 값을 입력하는 방법이 궁금합니다

QA

고수님들 디바이스마다 다른 값을 입력하는 방법이 궁금합니다

답변 2

본문

다음 소스에서 

 

데스크탑에는 550, 태블릿은 330, 모바일은 220 입력되게 하려면 어떻게 수정해야 할까요?

 

if ( ! wc_get_theme_support( 'single_image_width' ) ) {
            $wp_customize->add_setting(
                'woocommerce_single_image_width',
                array(
                    'default'              => 600,
                    'type'                 => 'option',
                    'capability'           => 'manage_woocommerce',
                    'sanitize_callback'    => 'absint',
                    'sanitize_js_callback' => 'absint',
                )
            );

이 질문에 댓글 쓰기 :

답변 2


  var width = document.documentElement.clientWidth;
  if (width >= 1024) { // 데스크탑
    imageWidth = 550;
  } else if (width >= 768) { // 태블릿
    imageWidth = 330;
  } else { // 모바일
    imageWidth = 220;
  }

 

너비를 구해서 ajax 등으로 보내세요

 

그리고 그누보드는 PC 와 모바일 환경을 GET 변수로 받을수 있습니다.

common 이 로드되어있다면

 

if($is_mobile){

// 모바일환경

} else {

// PC환경

}

php에서는 디바이스 넓이를 구할수 없습니다. 자바스크립트로 넓이를 알아낸다음 ajax로 보내줘야합니다. 

챗gpt에 물러보니 다음과 같은 메시지가 나오는데요. 방법이 있을까요?

<?php
$userAgent = $_SERVER['HTTP_USER_AGENT'];

if (strpos($userAgent, 'Mobile') !== false) {
    // 모바일 디바이스일 경우
    $value = '모바일 사용자입니다.';
} else {
    // 데스크탑 디바이스일 경우
    $value = '데스크탑 사용자입니다.';
}

echo $value;
?>

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
filter #php ×
전체 15,424
© SIRSOFT
현재 페이지 제일 처음으로