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

그누4에 위토즈 모바일 플러그인 m도메인 관련 질문드립니다 채택완료

강가딘11 9년 전 조회 2,137

m도메인 접속 관련 문의드립니다 그누4에 위토즈 모바일 플러그인을 붙여서 사이트를 제작중에 m도메인 관련 문의드립니다 모바일 접속시 도메인/m으로 리다이렉트도록 되어 있어서 m.도메인으로 접속시 이를 유지하고 싶어도 강제 리다이렉트됩니다. 이 기능을 사용하지 않을 경우 플러그인 전체적으로 영향이 있는 것같아서 다른 방법을 찾다가 해결책을 찾지 못했습니다. 리다이렉트시키지 않고 입력한 m도메인을 유지하면서 플러그인을 사용하는 방법이 있는지 문의드립니다. 소스는 extend 폴더 wz.mobile.config.php 문서에 있는 모바일 관련 세션,리다이렉트 부분입니다  

 

</p><div class="container"><div class="line number1 index0 alt2"><code class="php plain">define(</code><code class="php string">"MOBILE_DIR"</code><code class="php plain">, </code><code class="php string">"/m"</code><code class="php plain">); </code><code class="php comments">// 모바일 디렉토리.</code></div><div class="line number2 index1 alt1"> </div><div class="line number3 index2 alt2"><code class="php comments">// 디바이스가 어떤종류인지..</code></div><div class="line number4 index3 alt1"><code class="php keyword">function</code> <code class="php plain">mobileCheck() { </code></div><div class="line number5 index4 alt2"><code class="php spaces">  </code><code class="php variable">$checkCount</code> <code class="php plain">= 0;</code></div><div class="line number6 index5 alt1"><code class="php spaces">    </code><code class="php keyword">if</code> <code class="php plain">(preg_match(</code><code class="php string">'/(iphone|lgtelecom|skt|mobile|samsung|nokia|blackberry|android|android|sony|phone|symbian)/i'</code><code class="php plain">, </code><code class="php functions">strtolower</code><code class="php plain">(</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'HTTP_USER_AGENT'</code><code class="php plain">])))</code></div><div class="line number7 index6 alt2"><code class="php spaces">        </code><code class="php variable">$checkCount</code><code class="php plain">++;</code></div><div class="line number8 index7 alt1"><code class="php spaces">  </code> </div><div class="line number9 index8 alt2"><code class="php spaces">  </code><code class="php keyword">if</code> <code class="php plain">(</code><code class="php functions">strpos</code><code class="php plain">(</code><code class="php functions">strtolower</code><code class="php plain">(</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'ALL_HTTP'</code><code class="php plain">]), </code><code class="php string">'operamini'</code><code class="php plain">) > 0)</code></div><div class="line number10 index9 alt1"><code class="php spaces">        </code><code class="php variable">$checkCount</code><code class="php plain">++;</code></div><div class="line number11 index10 alt2"> </div><div class="line number12 index11 alt1"><code class="php spaces">  </code><code class="php keyword">if</code> <code class="php plain">(</code><code class="php functions">strpos</code><code class="php plain">(</code><code class="php functions">strtolower</code><code class="php plain">(</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'HTTP_USER_AGENT'</code><code class="php plain">]), </code><code class="php string">'windows'</code><code class="php plain">) > 0)</code></div><div class="line number13 index12 alt2"><code class="php spaces">        </code><code class="php variable">$checkCount</code> <code class="php plain">= 0;</code></div><div class="line number14 index13 alt1"> </div><div class="line number15 index14 alt2"><code class="php spaces">  </code><code class="php keyword">return</code> <code class="php plain">(</code><code class="php variable">$checkCount</code> <code class="php plain">> 0) ? </code><code class="php string">"mobile"</code> <code class="php plain">: </code><code class="php string">"pc"</code><code class="php plain">; </code></div><div class="line number16 index15 alt1"><code class="php plain">}</code></div><div class="line number17 index16 alt2"> </div><div class="line number18 index17 alt1"><code class="php comments">// 현재 위치한 페이지가 모바일인지 아닌지..</code></div><div class="line number19 index18 alt2"><code class="php keyword">function</code> <code class="php plain">mobilePosition() {</code></div><div class="line number20 index19 alt1"><code class="php spaces">    </code><code class="php keyword">global</code> <code class="php variable">$g4</code><code class="php plain">; </code></div><div class="line number21 index20 alt2"><code class="php spaces">    </code><code class="php keyword">if</code> <code class="php plain">(preg_match(</code><code class="php string">"`^"</code><code class="php plain">.</code><code class="php variable">$g4</code><code class="php plain">[</code><code class="php string">'url'</code><code class="php plain">].MOBILE_DIR.</code><code class="php string">"`i"</code><code class="php plain">, </code><code class="php string">"<a href="<a href="http:///" target="_blank" rel="noopener noreferrer">http:///</a>">http://</a>"</code><code class="php plain">.</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'HTTP_HOST'</code><code class="php plain">].dirname(</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'PHP_SELF'</code><code class="php plain">])))</code></div><div class="line number22 index21 alt1"><code class="php spaces">        </code><code class="php keyword">return</code> <code class="php plain">true;</code></div><div class="line number23 index22 alt2"><code class="php spaces">    </code><code class="php keyword">else</code></div><div class="line number24 index23 alt1"><code class="php spaces">        </code><code class="php keyword">return</code> <code class="php plain">false;</code></div><div class="line number25 index24 alt2"><code class="php plain">}</code></div><div class="line number26 index25 alt1"> </div><div class="line number27 index26 alt2"><code class="php variable">$is_mobile</code> <code class="php plain">= false;</code></div><div class="line number28 index27 alt1"><code class="php keyword">if</code> <code class="php plain">(</code><code class="php variable">$_GET</code><code class="php plain">[</code><code class="php string">"vtype"</code><code class="php plain">]==</code><code class="php string">"pc"</code><code class="php plain">)</code></div><div class="line number29 index28 alt2"><code class="php spaces">    </code><code class="php variable">$is_mobile</code> <code class="php plain">= false;</code></div><div class="line number30 index29 alt1"><code class="php keyword">else</code> <code class="php keyword">if</code> <code class="php plain">(</code><code class="php variable">$_GET</code><code class="php plain">[</code><code class="php string">"vtype"</code><code class="php plain">]==</code><code class="php string">"m"</code><code class="php plain">)</code></div><div class="line number31 index30 alt2"><code class="php spaces">    </code><code class="php variable">$is_mobile</code> <code class="php plain">= true;</code></div><div class="line number32 index31 alt1"><code class="php keyword">else</code> <code class="php keyword">if</code> <code class="php plain">(isset(</code><code class="php variable">$_SESSION</code><code class="php plain">[</code><code class="php string">'vtype'</code><code class="php plain">])) {</code></div><div class="line number33 index32 alt2"><code class="php spaces">    </code><code class="php keyword">if</code> <code class="php plain">(mobilePosition()) </code><code class="php comments">// 만약 모바일페이지에 위치하고 있을경우.</code></div><div class="line number34 index33 alt1"><code class="php spaces">        </code><code class="php variable">$is_mobile</code> <code class="php plain">= true;</code></div><div class="line number35 index34 alt2"><code class="php spaces">    </code><code class="php keyword">else</code></div><div class="line number36 index35 alt1"><code class="php spaces">        </code><code class="php variable">$is_mobile</code> <code class="php plain">= </code><code class="php variable">$_SESSION</code><code class="php plain">[</code><code class="php string">'vtype'</code><code class="php plain">];    </code></div><div class="line number37 index36 alt2"><code class="php plain">}</code></div><div class="line number38 index37 alt1"><code class="php keyword">else</code> <code class="php keyword">if</code> <code class="php plain">(mobileCheck()==</code><code class="php string">"mobile"</code><code class="php plain">)</code></div><div class="line number39 index38 alt2"><code class="php spaces">    </code><code class="php variable">$is_mobile</code> <code class="php plain">= true;</code></div><div class="line number40 index39 alt1"><code class="php spaces">  </code> </div><div class="line number41 index40 alt2"><code class="php comments">// set_session("vtype", $is_mobile);</code></div><div class="line number42 index41 alt1"> </div><div class="line number43 index42 alt2"><code class="php keyword">if</code> <code class="php plain">(</code><code class="php variable">$is_mobile</code><code class="php plain">) { </code></div><div class="line number44 index43 alt1"><code class="php spaces">    </code><code class="php comments">// 접속한 URL이 모바일페이지인지 PC페이지인지 확인.</code></div><div class="line number45 index44 alt2"><code class="php spaces">  </code><code class="php keyword">if</code> <code class="php plain">(!mobilePosition()) { </code></div><div class="line number46 index45 alt1"><code class="php spaces">    </code><code class="php comments">// 모바일 페이지가 아니라면 모바일디렉토리를 붙여서 페이지 이동.</code></div><div class="line number47 index46 alt2"><code class="php spaces">    </code><code class="php variable">$arr_site_sub_dir</code> <code class="php plain">= </code><code class="php functions">explode</code><code class="php plain">(</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'HTTP_HOST'</code><code class="php plain">], </code><code class="php variable">$g4</code><code class="php plain">[</code><code class="php string">'url'</code><code class="php plain">]);</code></div><div class="line number48 index47 alt1"><code class="php spaces">    </code><code class="php keyword">if</code> <code class="php plain">(</code><code class="php functions">count</code><code class="php plain">(</code><code class="php variable">$arr_site_sub_dir</code><code class="php plain">)>1) { </code></div><div class="line number49 index48 alt2"><code class="php spaces">        </code><code class="php variable">$site_sub_dir</code> <code class="php plain">= </code><code class="php variable">$arr_site_sub_dir</code><code class="php plain">[1];</code></div><div class="line number50 index49 alt1"><code class="php spaces">    </code><code class="php plain">} </code></div><div class="line number51 index50 alt2"><code class="php spaces">    </code><code class="php comments">// $redirect_url = $g4['url'].MOBILE_DIR.str_replace($site_sub_dir,"",$_SERVER['REQUEST_URI']).($_SERVER['QUERY_STRING']?"&":"?")."vtype=m";</code></div><div class="line number52 index51 alt1"><code class="php spaces">    </code><code class="php variable">$redirect_url</code> <code class="php plain">= </code><code class="php variable">$g4</code><code class="php plain">[</code><code class="php string">'url'</code><code class="php plain">].MOBILE_DIR.</code><code class="php functions">str_replace</code><code class="php plain">(</code><code class="php variable">$site_sub_dir</code><code class="php plain">,</code><code class="php string">""</code><code class="php plain">,</code><code class="php variable">$_SERVER</code><code class="php plain">[</code><code class="php string">'REQUEST_URI'</code><code class="php plain">]);</code></div><div class="line number53 index52 alt2"><code class="php spaces">    </code><code class="php keyword">if</code> <code class="php plain">(</code><code class="php variable">$redirect_url</code><code class="php plain">) { </code></div><div class="line number54 index53 alt1"><code class="php spaces">      </code><code class="php plain">goto_url(</code><code class="php variable">$redirect_url</code><code class="php plain">);  </code></div><div class="line number55 index54 alt2"><code class="php spaces">    </code><code class="php plain">} </code></div><div class="line number56 index55 alt1"><code class="php spaces">  </code><code class="php plain">}</code></div><div class="line number57 index56 alt2"><code class="php plain">}</code></div></div><p>
 

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

답변 1개

채택된 답변
+20 포인트
9년 전

해당부분을 아래와 같이 수정해주세요.

    if ($redirect_url) {     // goto_url($redirect_url);      }

또는

    if ($redirect_url) {      goto_url("http://m.도메인">http://m.도메인");  //사용하는 m.도메인 입력     }   

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

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

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

로그인