Lorsque l'on saisit un lien sous la forme unsite.tld dans le champ URL
d'un article, SPIP le transforme en siteactuel.tld/unsite.tld ce qui
génère une erreur 404.
Est-il envisageable que SPIP traite unsite.tld comme une URL externe ?
Ce serait bien utile vu les erreurs sur ces liens sur nombre de sites en
SPIP.
Lorsque l'on saisit un lien sous la forme unsite.tld dans le champ URL
d'un article, SPIP le transforme en siteactuel.tld/unsite.tld ce qui
génère une erreur 404.
Est-il envisageable que SPIP traite unsite.tld comme une URL externe ?
Ce serait bien utile vu les erreurs sur ces liens sur nombre de sites en
SPIP.
Peut-etre (si j'ai bien compris) prévoir d'utiliser explicitement des
"liens internes SPIP" (comme ceux mis en [->..])
Donc il ne s'agit pas de l'URL de l'article, mais d'une URL de redirection.
Ça ressemble plutôt à des articles virtuels ce que tu essaies de faire.
Le 29/05/2018 à 21:24, dd a écrit :
Lorsque l'on saisit un lien sous la forme unsite.tld dans le champ URL
d'un article, SPIP le transforme en siteactuel.tld/unsite.tld ce qui
génère une erreur 404.
Est-il envisageable que SPIP traite unsite.tld comme une URL externe ?
Ce serait bien utile vu les erreurs sur ces liens sur nombre de sites en
SPIP.
Lorsque l'on saisit un lien sous la forme unsite.tld dans le champ URL
d'un article, SPIP le transforme en siteactuel.tld/unsite.tld ce qui
génère une erreur 404.
Est-il envisageable que SPIP traite unsite.tld comme une URL externe ?
Ce serait bien utile vu les erreurs sur ces liens sur nombre de sites en
SPIP.
J'ai remarqué aussi que des utilisateurs oublient régulièrement le protocole (http ou https).
Mais on ne peut pas non plus le forcer car c'est un champ qui accepte tout type d'url, y compris internes (art3 par exemple).
Et peut être des gens qui l'utilisent de façon détournée, chez qui ça pourrait casser le fonctionnement.
J'ai un filtre maison qui tente de corriger ça, si le lien contient au moins un point et n'a pas de protocole :
Le Wed, 30 May 2018 11:30:31 +0200, nicod_ a écrit :
Le 29/05/2018 à 21:24, dd a écrit :
Lorsque l'on saisit un lien sous la forme unsite.tld dans le champ URL
d'un article, SPIP le transforme en siteactuel.tld/unsite.tld ce qui
génère une erreur 404.
Est-il envisageable que SPIP traite unsite.tld comme une URL externe ?
J'ai un filtre maison qui tente de corriger ça, si le lien contient au
moins un point et n'a pas de protocole :
function corrige_http($lien = '') {
$url_parts = parse_url($lien);
if ($lien && strpos($lien,'.')!==false && !isset($url_parts
['scheme']))
{
$lien = 'http://' . $lien;
}
return $lien;
}
[(#URL_SITE|corrige_http)]
Voilà c'est bien ça.
Je vais ajouter ta fonction
Merci