[spip-dev] generer_url_article

Salut,

Une suggestion:

Réécrire, dans inc-urls-standards.php3 (et symétriquement dans
inc-urls-html.php3) la fonction generer_url_article de la façon suivante:

function generer_url_article($id_article) {
  $r = spip_fetch_array(spip_query("SELECT chapo FROM spip_articles WHERE
id_article=$id_article LIMIT 1"));
  if(substr($r['chapo'], 0, 1) == '=')
    return substr($r['chapo'], 1);
  else
    return "article.php3?id_article=$id_article";
}

L'avantage: les articles virtuels marchent même quand la base est plantée,
c'est plus rapide (pas besoin de faire un appel mysql pour connaître l'url
vers lequel on redirige) et c'est plus propre (la status bar indique où on
va quand on pointe sa souris sur un lien "virtuel").

Inconvénient (probable, j'ai pas vérifié): il n'est plus possible de
compter les visites sur les articles ou autre traitement statistique.

Voilà, voilà,

François

Réécrire, dans inc-urls-standards.php3 (et symétriquement dans
inc-urls-html.php3) la fonction generer_url_article de la façon suivante:

function generer_url_article($id_article) {
  $r = spip_fetch_array(spip_query("SELECT chapo FROM spip_articles WHERE
id_article=$id_article LIMIT 1"));
  if(substr($r['chapo'], 0, 1) == '=')
    return substr($r['chapo'], 1);
  else
    return "article.php3?id_article=$id_article";
}

L'avantage: les articles virtuels marchent même quand la base est plantée,
c'est plus rapide (pas besoin de faire un appel mysql pour connaître l'url
vers lequel on redirige)

Mais ? je crois que les articles virtuels sont bien dans le cache, et
continuent de fonctionner quand la base est plantée. Non ?

et c'est plus propre (la status bar indique où on
va quand on pointe sa souris sur un lien "virtuel").

Oui.

Inconvénient (probable, j'ai pas vérifié): il n'est plus possible de
compter les visites sur les articles ou autre traitement statistique.

Et aussi, il faut une requête MySQL par calcul d'URL_ARTICLE, et quand tu en
calcules beaucoup (dans le plan.php3 du site...) ça peut monter assez vite.

-- Fil

Fil a écrit :

L'avantage: les articles virtuels marchent même quand la base est plantée,
c'est plus rapide (pas besoin de faire un appel mysql pour connaître l'url
vers lequel on redirige)

Mais ? je crois que les articles virtuels sont bien dans le cache, et
continuent de fonctionner quand la base est plantée. Non ?

Oups. Autant pour moi.

François