Redirection sur les rubriques - commentaires > Redirection sur les rubriques 2007-08-06T13:09:24Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment396718 2007-08-06T13:09:24Z <p>good bless Jujubre<br class="autobr"> sa solution bricolo fonctionne a merveille sans se compliquer la vie.</p> <p>Pardon pour le flood, probleme resolu</p> > Redirection sur les rubriques 2007-08-06T12:12:40Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment396715 2007-08-06T12:12:40Z <p>Les ames secourables sont en vacances.</p> <p>bref, j'ai mis le code dans un fichier php3 et je l'appelle en inclure juste apres la balise head.</p> <p>et rien...</p> > Redirection sur les rubriques 2007-08-06T11:28:21Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment396713 2007-08-06T11:28:21Z <p>j'ai placé l'INCLURE, mais redirection.php3 n'existe pas.<br class="autobr"> Doit on y coller la boucle en contenu<small class="fine d-inline"> </small>?</p> > Redirection sur les rubriques 2007-08-06T11:17:11Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment396712 2007-08-06T11:17:11Z <p>ça a l'air simple, mais je n'arrive pas a le faire fonctionner.<br class="autobr"> mon article apparait mais pas de redirection.</p> <p>Pourriez vous donner plus de precision sur l'inclure et sur l'utilisation de la boucle<small class="fine d-inline"> </small>?</p> Redirection sur les rubriques 2006-06-01T16:14:01Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment386291 2006-06-01T16:14:01Z <p>je viens de m'appercevoir que la langue fr (je bosse sur un site en) ajoute des nbsp devant le<small class="fine d-inline"> </small>? des url.<br class="autobr"> Voici de quoi completer mon astuce precedente : <br class="autobr"> A mettre dans <code class="spip_code spip_code_inline" dir="ltr">mes_fonctions.php</code></p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>function url_no_nbsp($url) { return str_replace(' ?', '?', $url); }</code></pre></div> <p>et du coup : <code>[(#DESCRIPTIF|<small class="fine d-inline"> </small>?<i><abbr title="url_no_nbsp)">(#DESCRIPTIF</abbr>«<small class="fine d-inline"> </small>target=<small class="fine d-inline"> </small>»_blank,#URL_RUBRIQUE</i>)]</code</code></p> <p>Enjoy :)</p> Redirection sur les rubriques 2006-06-01T14:53:05Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment386289 2006-06-01T14:53:05Z <p>Apres avoir passer un certain temps a fouiller forums et contrib sans etre satisfait, voici la solution que j'ai mise en oeuvre :</p> <p>Lors de la création de la rubrique, j'ai tout simplement placer mon URL dans la section « descriptif rapide ».</p> <p>Ainsi, j'ecris mon lien dans ma boucle de menu :<br class="autobr"> <code class="spip_code spip_code_inline" dir="ltr"><a href="[(#DESCRIPTIF|?{#DESCRIPTIF" target="_blank,#URL_RUBRIQUE})]"></code></p> <p>Soit : "Si il y a un descriptif associé a cette rubrique l'afficher, si non afficher le lien vers les articles de cette rubrique.</p> <p>Facile ^^</p> <p>Jujubre</p> > Redirection sur les rubriques 2005-08-24T22:39:38Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment383050 2005-08-24T22:39:38Z <blockquote class="spip"> <p>La méthode est intéressante et originale, mais il faudrait mieux l'expliquer, je crois. Perso, j'ai du relire trois fois le paragraphe pour capter.</p> </blockquote> <p>Ok, je vais reprendre ce passage du inclure.</p> <blockquote class="spip"> <p> Pourquoi est-ce que tu fais pointer la redirection sur <code class="spip_code spip_code_inline" dir="ltr"><a href="#URL_RUBRIQUE&amp;id_article=#ID_ARTICLE"></code> et pas simplement sur <code class="spip_code spip_code_inline" dir="ltr"><a href="#URL_ARTICLE"></code><small class="fine d-inline"> </small>?</p> </blockquote> <p>Tout simplement par soucis de cohérence. Je m'attaque à l'URL de la rubrique, je garde URL_RUBRIQUE. De toutes façons, ça ne change rien au final.</p> <blockquote class="spip"> <p>Par ailleurs, tu laisses dans ton code des bout de code non nécessaire, qui l'alourdissent et compliquent sa compréhenison : et ne servent à rien et peuvent donc être retirés.</p> </blockquote> <p>Certes, du point de vue du compilateur du code, ça ne change rien, cependant, je ne supporte pas de me rendre compte à la fin de la boucle que je lisais en fait du code alternatif. Ces balises sont là pour la simplicité de lecture du code, et elle resteront quoi qu'il arrive.</p> <blockquote class="spip"> <p>Il faudrait aussi préciser que c'est le titre de l'article qui s'affiche (et non le titre de la rubrique) quand un seul article est présent dans la rubrique (ça peut être surprenant) et expliquer comment afficher le titre de la rubrique avec les balises non ambigües.</p> </blockquote> <p>Oui, en même temps, je donne le lien vers la documentation qui correspond, donc finalement non...</p> <blockquote class="spip"> <p>Pour ça, il suffit de remplacer <code class="spip_code spip_code_inline" dir="ltr">#URL_RUBRIQUE&amp;</code> par <code class="spip_code spip_code_inline" dir="ltr">[(#URL_RUBRIQUE|strpos{?}|?{&amp;,?})]</code></p> </blockquote> <p>Bien vu<small class="fine d-inline"> </small>!</p> <blockquote class="spip"> <p>Tu as mis quoi comme expression régulière<small class="fine d-inline"> </small>? Ca devrait être possible en principe.</p> </blockquote> <p>Je ne sais plus.</p> <blockquote class="spip"> <p>Cela dit, tu ne dois pas tester sur « =http:// », mais seulement sur « = » (sinon, tu ne prends en compte que les redirections externes et pas les articles virtuels qui pointent vers une autre ressource du site).</p> </blockquote> <p>Oui et non, si je fais ça, j'attrape aussi les articles qui ne sont pas des redirections. Mais si je le fait sur les seulses rubriques qui n'ont qu'un article, pourquoi pas.</p> <p>Merci pour tes commentaires celà étant dit.</p> > Redirection sur les rubriques 2005-08-21T23:56:40Z https://contrib.spip.net/Redirection-sur-les-rubriques#comment382939 2005-08-21T23:56:40Z <p>Salut Olivier,</p> <p>Idée intéressante (je me suis déjà dit plus d'une fois que ça serait utile d'avoir sur les rubriques un mécanisme similaire à ce qui existe pour les articles).</p> <p>Quelques amélioration possibles :</p> <blockquote class="spip"> <p>Elle est conçue pour être appelée via un inclure qui remplacera tous vos #URL_RUBRIQUE dans vos squelettes.</p> </blockquote> <p>La méthode est intéressante et originale, mais il faudrait mieux l'expliquer, je crois. Perso, j'ai du relire trois fois le paragraphe pour capter.</p> <blockquote class="spip"> <p>La boucle ...</p> </blockquote> <p>Pourquoi est-ce que tu fais pointer la redirection sur <br class="autobr"> <code class="spip_code spip_code_inline" dir="ltr"><a href="#URL_RUBRIQUE&amp;id_article=#ID_ARTICLE"></code><br class="autobr"> et pas simplement sur<br class="autobr"> <code class="spip_code spip_code_inline" dir="ltr"><a href="#URL_ARTICLE"></code><small class="fine d-inline"> </small>?</p> <p>Par ailleurs, tu laisses dans ton code des bout de code non nécessaire, qui l'alourdissent et compliquent sa compréhenison : <code class="spip_code spip_code_inline" dir="ltr"></B_verifier_si_un_seul_article_dans_rubrique></code> et <code class="spip_code spip_code_inline" dir="ltr"></B_recuperer_id_article_dans_rubrique></code> ne servent à rien et peuvent donc être retirés.</p> <p>Il faudrait aussi préciser que c'est le titre de l'article qui s'affiche (et non le titre de la rubrique) quand un seul article est présent dans la rubrique (ça peut être surprenant) et expliquer comment afficher le titre de la rubrique avec les balises non ambigües.</p> <blockquote class="spip"> <p>Attention<small class="fine d-inline"> </small>! Ça ne fonctionnera peut-être pas avec des URL réécrites (comme celles de spip-contrib par exemple).</p> </blockquote> <p>Pour ça, il suffit de remplacer <code class="spip_code spip_code_inline" dir="ltr">#URL_RUBRIQUE&amp;</code> par</p> <p><code class="spip_code spip_code_inline" dir="ltr">[(#URL_RUBRIQUE|strpos{?}|?{&amp;,?})]</code></p> <blockquote class="spip"> <p>J'ai essayé de limiter la redirection aux seuls rubriques qui contenaient un article virtuel (avec un RegEx sur (=http://) dnas le chapeau des articles, mais je n'y suis pas parvenu. Je crois que SPIP à un gestion trop particulière des articles virtuels.</p> </blockquote> <p>Tu as mis quoi comme expression régulière<small class="fine d-inline"> </small>? Ca devrait être possible en principe.</p> <p>Cela dit, tu ne dois pas tester sur « =http:// », mais seulement sur « = » (sinon, tu ne prends en compte que les redirections externes et pas les articles virtuels qui pointent vers une autre ressource du site).</p> <p>Tant que j'y suis, voici quelques liens qu'il pourrait être intéressant d'ajouter, qui traite quasiment de la même question :</p> <ul class="spip"><li> <a href='https://contrib.spip.net/Afficher-directement-l-article-si' class="spip_in" rel='nofollow'>Afficher directement l'article si la rubrique n'en a qu'un</a>, par Jacques Pyrat</li></ul><ul class="spip"><li> La même chose, par ARNO*, en beaucoup plus simple : <a href="http://forum.spip.org/fr_4311.html#4428" class="spip_url spip_out" rel='nofollow external'>http://forum.spip.org/fr_4311.html#4428</a></li></ul><ul class="spip"><li> <a href='https://contrib.spip.net/Des-liens-directs-pour-les' class="spip_in" rel='nofollow'>Des liens directs pour les articles virtuels</a>, un petit hack que j'avais publié (et qui complète utilement cet article, je crois)</li></ul>