Heim  >  Artikel  >  php教程  >  PHPCMS搭建wap手机网站,phpcms搭建wap

PHPCMS搭建wap手机网站,phpcms搭建wap

WBOY
WBOYOriginal
2016-06-13 08:54:181009Durchsuche

PHPCMS搭建wap手机网站,phpcms搭建wap

PHPCMS搭建PC端网站比较方便,但是在wap手机端方面却不怎么实用,而且自带的手机建站感觉不是很好,而且模版不好控制,现在对其进行修改,手机建站个人感觉比较方便

首先在phpcms/libs/functions/extention.func.php里面写入判断手机访问的自定义函数

<?<span>php
</span><span>/*</span><span>*
 *  extention.func.php 用户自定义函数库
 *
 * @copyright            (C) 2005-2010 PHPCMS
 * @license                
 * @lastmodify            2010-10-27
 </span><span>*/</span>

<span>//</span><span>判断是否手机访问</span>
<span>function</span><span> check_wap()
{
   
    </span><span>if</span> (<span>isset</span>(<span>$_SERVER</span>['HTTP_VIA'])) <span>return</span> <span>true</span><span>;
    </span><span>if</span> (<span>isset</span>(<span>$_SERVER</span>['HTTP_X_NOKIA_CONNECTION_MODE'])) <span>return</span> <span>true</span><span>;
    </span><span>if</span> (<span>isset</span>(<span>$_SERVER</span>['HTTP_X_UP_CALLING_LINE_ID'])) <span>return</span> <span>true</span><span>;
    </span><span>if</span> (<span>strpos</span>(<span>strtoupper</span>(<span>$_SERVER</span>['HTTP_ACCEPT']), "VND.WAP.WML") > 0<span>) {
        </span><span>//</span><span> Check whether the browser/gateway says it accepts WML.</span>
        <span>$br</span> = "WML"<span>;
    } </span><span>else</span><span> {
        </span><span>$browser</span> = <span>isset</span>(<span>$_SERVER</span>['HTTP_USER_AGENT']) ? <span>trim</span>(<span>$_SERVER</span>['HTTP_USER_AGENT']) : ''<span>;
        </span><span>if</span> (<span>empty</span>(<span>$browser</span>)) <span>return</span> <span>true</span><span>;
        </span><span>$clientkeywords</span> = <span>array</span><span>(
            </span>'nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-'
        , 'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu',
            'android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini',
            'operamobi', 'opera mobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile'<span>
        );
        </span><span>if</span> (<span>preg_match</span>("/(" . <span>implode</span>('|', <span>$clientkeywords</span>) . ")/i", <span>$browser</span>) && <span>strpos</span>(<span>$browser</span>, 'ipad') === <span>false</span><span>) {
            </span><span>$br</span> = "WML"<span>;
        } </span><span>else</span><span> {
            </span><span>$br</span> = "HTML"<span>;
        }
    }
    </span><span>if</span> (<span>$br</span> == "WML"<span>) {
        </span><span>return</span> <span>TRUE</span><span>;
    } </span><span>else</span><span> {
        </span><span>return</span> <span>FALSE</span><span>;
    }
}


</span>?><br /><br /><br />然后在phpcms/templates/default模版文件夹里建立一个文件夹存放手机站的模版<br />我建立一个叫mobile的文件夹<br /><br />然后修改
phpcms/templates/modules/content/index.php文件<br /><br />麻烦点,分别在频道页,列表页,内容页加载模版时进行判断<br />比如:
        <span>if</span><span> (check_wap()) {
                </span><span>include</span> template('mobile', <span>$template</span><span>);
            } </span><span>else</span><span> {</span>
                <span>include</span> template('content', <span>$template</span><span>);
            }<br />这样当用手机访问时会加载mobile文件夹里面的模版,mobile文件夹里面的模版名字要跟PC端的一样。<br /><br />当然,在生成静态页面时会出现问题,目前解决的办法是手机端用动态,<br />调用数据时可以这样</span>
<a href="index.php?m=content&c=index&a=show&catid=25&id={$r['id']}">

 毕竟手机端的栏目不是很多

<span><br /><br /></span>

 

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn