UNE VERSION IPHONE
UNE VERSION IPHONE
Techniques SPIP

Vous trouverez ici des trucs et astuces destinés aux développeurs de sites sous SPIP.

La majorité de ces trucs est consacrée aux filtres graphiques introduits dans SPIP 1.9. Il y a là en effet un vaste champ d’expérimentation pour les webmestres et les graphistes.

Chaque truc est suivi d’un forum auquel nous vous invitons à participer.

N.B. La présence de ces trucs et astuces sur notre site professionnel est destinée à faire connaître notre activité de création de sites sous SPIP. Vous pouvez librement utiliser les morceaux de code fournis ici dans vos propres squelettes. Vous pouvez reprendre ces exemples sur votre site ou dans les forums d’un autre site ; dans ce cas, nous vous demandons simplement d’avoir la courtoisie de référencer la page d’où est tiré le code repris.

XML

[SPIP 1.9] J’ai réalisé en quelques jours, pour notre magazine de mode en ligne, Flip-Zone, une version adaptée à la consultation sur iPhone (et iPod Touch).

La caractéristique qui m’intéresse ici est la suivante : il suffit de se connecter à l’adresse habituelle de Flip-Zone pour que SPIP détecte automatiquement que l’on est sur iPhone et utilise des squelettes adaptés. Il s’agit, ici, de ne pas recourir à une URL différente, mais d’afficher des squelettes différents selon que le visiteur est sur iPhone ou utilise un navigateur Web classique.

Cette fonction est très simple à mettre en place : il suffit de changer automatiquement, en fonction du logiciel utilisé par le visiteur, le nom du dossier contenant les squelettes.

Par défaut, mes squelettes sont installés dans un dossier /squelettes. Lorsque le visiteur est sur iPhone, j’indique simplement à SPIP que le dossier de squelettes à utiliser est un autre dossier, installé à la racine du site, /iphone.

Ensuite, il suffit d’ajouter, dans mes_options.php, les lignes suivantes :

  1. if (ereg("iPod|iPhone|Aspen", $_SERVER["HTTP_USER_AGENT"])) {
  2.         $GLOBALS["dossier_squelettes"] = "iphone";
  3. }

Ici, on cherche la chaîne « iPhone » dans le nom du logiciel client, mais aussi les chaînes « iPod » et « Aspen » (le nom du simulateur d’iPhone livré dans le SDK gratuit d’Apple).

Remarques

— Il est très facile d’étendre ce système pour proposer, par exemple, des interfaces adaptées à d’autres supports, comme par exemple MSIE sur Windows Mobile. Il suffit de créer des dossiers des squelettes supplémentaires et des tests dans mes_options.php.

— Ce fonctionnement simplissime est permis dans les versions récentes de SPIP (sauf erreur, à partir de la 1.9), car celle-ci gère des systèmes de cache différents selon le nom des dossiers de squelettes. Auparavant, on n’aurait pas pu réaliser cela facilement car, les adresses (URL) des différentes pages dans les deux versions étant identiques, on n’aurait pas eu deux versions différentes des pages en cache.

— Le kit de développement pour iPhone a été largement commenté, mais une utilité est largement ignorée : ce kit n’est pas seulement utile pour développer des applications natives sur iPhone (et, pour cela, il faut être un gros velu du code), mais également pour simplement créer des sites Web adaptés à l’iPhone (c’est-à-dire simplement du code HTML standard adapté à l’affichage sur un « petit » écran). En effet, le SDK (gratuit) d’Apple contient un « simulateur d’iPhone » qui contient Safari ; il suffit de lancer ce simulateur, d’y lancer Safari et d’entrer l’adresse à tester. On peut de cette façon tester ses squelettes sur un « faux » iPhone, ultra réactif, sans avoir besoin de le faire sur un véritable iPhone (Mac Intel uniquement).

Il suffit de faire attention au fait que la connexion depuis un iPhone ou un iPod est beaucoup plus lente qu’avec le simulateur, et que les différentes animations Javascript (j’utilise jQuery directement pour la version iPhone) sont aussi beaucoup rapides sur le simulateur que sur un véritable iPhone.

— « I’m one happy webmaster » : notre version de Flip-Zone pour iPhone a été référencée sur le site d’Apple, et a obtenu le label « Staff Pick ».

il y a 2 mois
Une version iPhone
Nicolas Hoizey (nicolas chez hoizey.com)

Superbe adaptation à l’iPhone/iPod Touch, notamment la navigation dans les collections par glissement, bravo !

Par contre, je viens de tester avec mon iPod Touch, il faut "cliquer" deux fois sur "sommaire" pour s’y déplacer, le premier "click" semble le charger sans nous y envoyer...

Votre message :
Un message, un commentaire ?

(Pour créer des paragraphes, laissez simplement des lignes vides.)

Qui êtes-vous ? (optionnel)