Maison > Tutoriel CMS > PHPCMS > phpcms implémente différents modèles pour les terminaux mobiles et informatiques

phpcms implémente différents modèles pour les terminaux mobiles et informatiques

angryTom
Libérer: 2020-02-11 16:02:27
original
3084 Les gens l'ont consulté

phpcms implémente différents modèles pour les terminaux mobiles et informatiques

phpcms implémente différents modèles pour les terminaux mobiles et informatiques

1 Ouvrez d'abord phpcms/libs/functions/global.func.php, dans. Ajoutez une méthode isMobile() à la fin du fichier pour déterminer s'il est ouvert sur un téléphone mobile

 function isMobile() {
  // 如果有HTTP_X_WAP_PROFILE则一定是移动设备
  if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
    return true;
  }
  // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
  if (isset($_SERVER['HTTP_VIA'])) {
    // 找不到为flase,否则为true
    return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
  }
  // 脑残法,判断手机发送的客户端标志,兼容性有待提高。其中'MicroMessenger'是电脑微信
  if (isset($_SERVER['HTTP_USER_AGENT'])) {
    $clientkeywords = array('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','openwave','nexusone','cldc','midp','wap','mobile','MicroMessenger');
    // 从HTTP_USER_AGENT中查找手机浏览器的关键字
    if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
      return true;
    }
  }
  // 协议法,因为有可能不准确,放到最后判断
  if (isset ($_SERVER['HTTP_ACCEPT'])) {
    // 如果只支持wml并且不支持html那一定是移动设备
    // 如果支持wml和html但是wml在html之前则是移动设备
    if ((strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;vnd.wap.wml&#39;) !== false) && (strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;text/html&#39;) === false || (strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;vnd.wap.wml&#39;) < strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;text/html&#39;)))) {
      return true;
    }
  }
  return false;
}
Copier après la connexion

2 Ensuite, ouvrez phpcms/modules/content/index.php. Il y a trois endroits à modifier. 🎜>

a) Recherchez la méthode d'initialisation de la page d'accueil. Lors du chargement du modèle à la fin, jugez s'il est ouvert sur le téléphone mobile, chargez le modèle de téléphone mobile. chargez le modèle informatique

Environ 31 Trouvez la ligne :

include template(&#39;content&#39;,&#39;index&#39;,$default_style);
Copier après la connexion

et changez-la en :

if(isMobile()){
      include template('mobile','index',$default_style);
}else{
     include template(&#39;content&#39;,&#39;index&#39;,$default_style);
}
Copier après la connexion

b) Trouvez la méthode d'affichage de la page de contenu, et créez également un jugement lors du chargement du modèle à la fin.

se trouve probablement à la ligne 203 :

include template(&#39;content&#39;,$template);
Copier après la connexion

remplacé par :

if(isMobile()){
     include template('mobile',$template);
}else{
     include template(&#39;content&#39;,$template);
}
Copier après la connexion

c) Rechercher la méthode des listes de la page de liste, et faites également un jugement lors du chargement du modèle à la fin.

est probablement aux lignes 265 et 278, il y a deux endroits ici, recherchez :

include template(&#39;content&#39;,$template);
改成:
if(isMobile()){
     include template('mobile',$template);}else{     
     include template(&#39;content&#39;,$template);
}
Copier après la connexion
Créez un nouveau répertoire mobile sous votre répertoire actuel. répertoire de modèles pour stocker les modèles mobiles

Si votre répertoire de modèles actuel est phpcms/templates/default, alors vous créez un répertoire mobile sous phpcms/templates/default.

Si votre répertoire de modèles actuel est phpcms/templates/moban, alors vous créez un répertoire mobile sous phpcms/templates/moban.

De cette manière, différents modèles peuvent être chargés respectivement sur l'ordinateur et sur les téléphones portables.

Site Web PHP chinois, un grand nombre de

Tutoriels PHPCMS gratuits, bienvenue pour apprendre en ligne !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal