WP File Manager
Current Path:
/
home
/
article
/
www
/
ecrire
/
urls
/
Name
Action
..
arbo.php
Edit
generer_url_forum.php
Edit
html.php
Edit
index.php
Edit
libres.php
Edit
page.php
Edit
propres.php
Edit
propres2.php
Edit
propres_qs.php
Edit
standard.php
Edit
Editing: html.php
<?php /***************************************************************************\ * SPIP, Systeme de publication pour l'internet * * * * Copyright (c) 2001-2014 * * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * \***************************************************************************/ /* - Comment utiliser ce jeu d'URLs ? Recopiez le fichier "htaccess.txt" du repertoire de base du site SPIP sous le sous le nom ".htaccess" (attention a ne pas ecraser d'autres reglages que vous pourriez avoir mis dans ce fichier) ; si votre site est en "sous-repertoire", vous devrez aussi editer la ligne "RewriteBase" ce fichier. Les URLs definies seront alors redirigees vers les fichiers de SPIP. Dans les pages de configuration, choisissez 'html' comme type d'url SPIP calculera alors ses liens sous la forme "article123.html". Note : si le fichier htaccess.txt se revele trop "puissant", car trop generique, et conduit a des problemes (en lien par exemple avec d'autres applications installees dans votre repertoire, a cote de SPIP), vous pouvez l'editer pour ne conserver que la partie concernant les URLS 'html'. */ if (!defined('_ECRIRE_INC_VERSION')) return; define('URLS_HTML_EXEMPLE', 'article12.html'); // http://doc.spip.org/@_generer_url_html function _generer_url_html($type, $id, $args='', $ancre='') { if ($generer_url_externe = charger_fonction("generer_url_$type",'urls',true)) { $url = $generer_url_externe($id, $args, $ancre); if (NULL != $url) return $url; } if ($type == 'document') { include_spip('inc/documents'); return generer_url_document_dist($id, $args, $ancre); } return _DIR_RACINE . $type . $id . '.html' . ($args ? "?$args" : '') .($ancre ? "#$ancre" : ''); } // retrouver les parametres d'une URL dite "html" // http://doc.spip.org/@urls_html_dist function urls_html_dist($i, $entite, $args='', $ancre='') { if (is_numeric($i)) return _generer_url_html($entite, $i, $args, $ancre); // recuperer les &debut_xx; if (is_array($args)) $contexte = $args; else parse_str($args,$contexte); // traiter les injections du type domaine.org/spip.php/cestnimportequoi/ou/encore/plus/rubrique23 if ($GLOBALS['profondeur_url']>0 AND $entite=='sommaire'){ return array(array(),'404'); } $url = $i; // voir s'il faut recuperer le id_* implicite et les &debut_xx; include_spip('inc/urls'); $r = nettoyer_url_page($i, $contexte); if ($r) { array_pop($r); // nettoyer_url_page renvoie un argument de plus inutile ici // il n'est pas necessaire de forcer le fond en 4eme arg car l'url n'est pas query string // sauf si pas de fond connu if ($entite) array_pop($r); return $r; } /* * Le bloc qui suit sert a faciliter les transitions depuis * le mode 'urls-propres' vers les modes 'urls-standard' et 'url-html' * Il est inutile de le recopier si vous personnalisez vos URLs * et votre .htaccess */ // Si on est revenu en mode html, mais c'est une ancienne url_propre // on ne redirige pas, on assume le nouveau contexte (si possible) $url_propre = isset($url) ? $url : (isset($_SERVER['REDIRECT_url_propre']) ? $_SERVER['REDIRECT_url_propre'] : (isset($_ENV['url_propre']) ? $_ENV['url_propre'] : '' )); if ($url_propre) { if ($GLOBALS['profondeur_url']<=0) $urls_anciennes = charger_fonction('propres','urls'); else $urls_anciennes = charger_fonction('arbo','urls'); return $urls_anciennes($url_propre, $entite, $contexte); } /* Fin du bloc compatibilite url-propres */ } ?>