[page_mobiles ↪ compat-php8-spip4] feat : compatibilite PHP 8.4 / SPIP 4.4 + detection (…)

spip-contrib-extensions/page_mobiles

Par JuLBLoBuL, le 8 juin 2026 à 15h25min :

feat: compatibilite PHP 8.4 / SPIP 4.4 + detection Client Hints - v2.0.0
BREAKING CHANGE: version majeure 2.0.0 — compatibilite [3.2.0;4.4.*]

Detection modernisee (pages_mobiles_options.php)

  • feat: priorite aux Client Hints W3C (Sec-CH-UA-Mobile) avant le User-Agent
    . ?0 => retour immediat ‹ web › (evite tout parsing UA)
    . ?1 => confirme ‹ autre_mobile › si aucun type precis detecte
  • feat: detection generique ‹ mobi › dans l’UA (standard W3C/IETF RFC 7231)
    couvrant tous les navigateurs mobiles modernes non identifies individuellement
  • fix: variable \ non initialisee quand court-circuitage par GET/cookie
  • fix: variable \ non initialisee (avertissement PHP 8)
  • fix: appel errone pages_mobiles_groupes_mobiles() — la fonction
    ne prend pas d’argument ; remplace par une boucle de recherche correcte
  • fix: comparaison [‹ page ›] == false remplacee par empty()
  • fix: securite URL — rawurlencode() sur chemin mobile et parametres de contexte
  • refactor: operateur ?? (null coalescing) partout
  • refactor: comparaisons strictes (===, !==, in_array(…, true))
  • chore: suppression des plateformes eteintes (BlackBerry, Windows Phone,
    WebOS/Palm, Symbian, Opera Mini dedie, Nuvifone, Sony Mylo, Nokia Maemo,
    Archos, liste 4-chars feature phones des annees 2000)

Groupes de mobiles mis a jour

  • ios_phones : iphone, ipod
  • tablettes : ipad, androidtablette (+ Kindle Fire via Silk)
  • smartphones : android, autre_mobile

pages_mobiles_fonctions.php

  • fix: type hints + return types PHP 7+
  • fix: comparaison stricte dans pages_mobiles_verification_chemin()
  • chore: suppression balise ?> en fin de fichier

paquet.xml

  • chore: version 2.0.0, etat stable, compatibilite [3.2.0;4.4.*]

lang/paquet-pages_mobiles_fr.php

  • docs: description mise a jour (Client Hints, plateformes actuelles)

Fichiers ajoutes

  • docs: CHANGELOG.md
  • docs: DOCUMENTATION.md (documentation technique complete)

Ajouté
CHANGELOG.md
DOCUMENTATION.md
Modifié
lang/paquet-pages_mobiles_fr.php
pages_mobiles_fonctions.php
pages_mobiles_options.php
paquet.xml

Détails : feat: compatibilite PHP 8.4 / SPIP 4.4 + detection Client Hints - v2.0.0 (e2e44b2d) · Validations · spip-contrib-extensions / page_mobiles · GitLab