테스트 사이트 - 개발 중인 베타 버전입니다

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

대한사랑 1년 전 조회 2,320

다음 소스에서 

 

데스크탑에는 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개

채택된 답변
+20 포인트

</p>

<p>  var width = document.documentElement.clientWidth;

  if (width >= 1024) { // 데스크탑

    imageWidth = 550;

  } else if (width >= 768) { // 태블릿

    imageWidth = 330;

  } else { // 모바일

    imageWidth = 220;

  }</p>

<p>

 

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

 

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

common 이 로드되어있다면

 

if($is_mobile){

// 모바일환경

} else {

// PC환경

}

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

세크티
1년 전

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

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

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

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

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

echo $value;
?>

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인