Annonce

Mettez-vous à jour ! WordPress 3.0.1 est disponible en français.
Annonce 1 : Le Codex en français a besoin de vous pour avancer !
Annonce 2 : Avant de poster, n'oubliez pas de faire une petite Recherche et de lire les règles de ce forum.
Annonce 3 : Lisez notre blog, il regorge de bonnes informations.
Annonce 4 : Rejoignez-nous sur Facebook et sur Twitter

#1 13-09-2009 11:46:22

dtorondel
Habitué WP
Lieu: Bretagne - Fouesnant
Date d'inscription: 20-07-2008
Messages: 65
Site web

[Résolu] Souci avec les permaliens

Bonjour,

Ma configuration WP actuelle
- Version de WordPress : 2.8.4
- Thème utilisé : Ferven (très) personnalisé
- Plugins en place : Askimet
- Nom de l'hebergeur : Online
- Adresse du site : http://www.torondel.net/v6

Problème(s) rencontré(s) :
Je compte refaire mon portfolio sur une base Wordpress, j'ai en tête une structure assez particulière : un site totalement horizontal.
Je suis parti avec en tête ce schéma là :
http://blog.torondel.net/wp-content/uploads/structure.png

Je suis parti à la base du thème Ferven, mais compte ne rien en garder au final, c'était juste pour avoir à la base une structure avec 2 sidebars.

J'en suis juste à la mise en place de la structure, sans aucune recherche graphique ni contenu pour l'instant.

Je suis arrivé à faire ce que je voulais, c'est visible ici :
torondel.net v6

Pour naviguer entre les "sections" horizontale, il faut passer par les liens Accueil, Portfolio, Services, Parcours... ce sont en fait des liens ancres, et il y a un javascript qui fait que le défilement se fait de manière progressive.

Jusqu'ici, tout va bien smile
Mon souci est le suivant : la réelle partie contenu, celle ou il y aura les articles WP, c'est la section #portfolio, qui est donc en 2e position. Donc quand le visiteur sera dans cette partie, et qu'il voudra naviguer, donc qu'il changera de page, il faut qu'il revienne automatiquement à cette section.

Donc les liens devront avoir automatiquement à la fin #portfolio, par exemple :
http://www.torondel.net/v6/cest-quoi-ce … #portfolio

Je pensais donc simplement modifier le réglage de mes permaliens, sous la forme :
/%postname%#portfolio
mais ca ne fonctionne pas, déjà j'ai du coup une erreur PHP :
Warning: preg_match() [function.preg-match]: Unknown modifier 'p' in classes.php on line 210
Warning: preg_match() [function.preg-match]: Unknown modifier 'p' in classes.php on line 211
et quand je clique sur un lien, la forme semble bonne, mais ca me donne en résultat "page non trouvée".

Est-ce que cela veut dire qu'il faut que j'essaye d'agir directement dans le fichier htaccess ?

Je ne suis pas du tout développeur, mais graphiste qui "bidouille" du mieux qu'il peut... donc avant de chercher comment écrire cette redirection en htaccess, je préfère être sur que ce soit nécessaire smile

Merci d'avance pour tout conseil !
David


http://www.torondel.net/ban/ban01b.gif http://www.torondel.net/ban/ban02b.gif

Hors ligne

 

#2 19-09-2009 22:07:40

Comme une image
Burpeur Wordpress
Lieu: Paris (enfin presque)
Date d'inscription: 30-01-2008
Messages: 2498
Site web

Re: [Résolu] Souci avec les permaliens

Essaye en faisant /%postname%/#portfolio peut-être ?
Sinon, tu peux modifier ton thème pour que les liens incluent automatiquement le #portfolio en plus.
Et puis il faudrait faire la même chose pour ton flux RSS.

Je pense que ça doit être possible, ton truc, mais c'est de la bidouille ceinture noire ;-)


Outils de base : Firefox+Firebug, Google-est-mon-ami™, Notepad++. Avec ça, on règle 78,24% des problèmes wink
Pour aller plus loin : Côt côt codex FR EN ! WAMP/LAMP/MAMP

« On paie mal un maître en ne restant toujours que l'élève. » — F. Nietzsche

Hors ligne

 

#3 21-09-2009 07:59:39

dtorondel
Habitué WP
Lieu: Bretagne - Fouesnant
Date d'inscription: 20-07-2008
Messages: 65
Site web

Re: [Résolu] Souci avec les permaliens

Comme une image a écrit:

Essaye en faisant /%postname%/#portfolio peut-être ?

Non, je viens d'essayer, ca fait le même souci que lors de mes précédents essais, c'est à dire que ca affiche dès l'arrivée sur le site une série de "
Warning: preg_match() [function.preg-match]: Unknown modifier 'p' in classes.php on line 210

Warning: preg_match() [function.preg-match]: Unknown modifier 'p' in classes.php on line 211"
et si je clique sur un titre d'article, je tombe sur une page 404.


Comme une image a écrit:

Sinon, tu peux modifier ton thème pour que les liens incluent automatiquement le #portfolio en plus.
Et puis il faudrait faire la même chose pour ton flux RSS.
Je pense que ça doit être possible, ton truc, mais c'est de la bidouille ceinture noire ;-)

Vais continuer de chercher, modifier directement dans le PHP, pourquoi pas, j'avais pas pensé à ça...

Merci en tout cas !

A+
David


http://www.torondel.net/ban/ban01b.gif http://www.torondel.net/ban/ban02b.gif

Hors ligne

 

#4 21-09-2009 11:08:23

Anonyme 2
Blogueur Fou
Date d'inscription: 22-05-2007
Messages: 11665

Re: [Résolu] Souci avec les permaliens

Bonjour,

moi je ne dis pas pareil,je ne pense pas que cela soit possible
/%postname%/#portfolio    je n'ai jamais vu ça .
#portfolio /%postname%/ ça oui

Hors ligne

 

#5 21-09-2009 11:59:29

dtorondel
Habitué WP
Lieu: Bretagne - Fouesnant
Date d'inscription: 20-07-2008
Messages: 65
Site web

Re: [Résolu] Souci avec les permaliens

Anonyme 2 a écrit:

Bonjour,

moi je ne dis pas pareil,je ne pense pas que cela soit possible
/%postname%/#portfolio    je n'ai jamais vu ça .
#portfolio /%postname%/ ça oui

Je viens de tester, idem que précédement, j'obtiens une suite de :
Warning: preg_match() [function.preg-match]: Unknown modifier 'p' in classes.php on line 210
Warning: preg_match() [function.preg-match]: Unknown modifier 'p' in classes.php on line 211
et quand je clique sur un lien, ca me donne en résultat "page non trouvée".

Par curiosité uniquement, vu que je ne fais pas de php, j'ai été voir le fichier classes.php, aux lignes 210/211 je trouve cette instruction :
if (preg_match("#^$match#", $request_match, $matches) ||
                    preg_match("#^$match#", urldecode($request_match), $matches)) {
                    // Got a match.
                    $this->matched_rule = $match;

                    // Trim the query of everything up to the '?'.
                    $query = preg_replace("!^.+\?!", '', $query);

                    // Substitute the substring matches into the query.
                    eval("@\$query = \"" . addslashes($query) . "\";");

                    $this->matched_query = $query;

                    // Parse the query.
                    parse_str($query, $perma_query_vars);

                    // If we're processing a 404 request, clear the error var
                    // since we found something.
                    if (isset($_GET['error']))
                        unset($_GET['error']);

                    if (isset($error))
                        unset($error);

                    break;
                }

Même si je ne comprends pas grand chose au code ci-dessus, j'en déduis que ca fit une action précise si dans l'URL est trouvée le signe "#", cequi est mon cas.
J'ai essayé juste pour voir d'enlever toute l'instruction if en question, je n'ai plus les alertes après, mais les liens ne marchent pas mieux, j'ai testé pourtant les différentes propositions faites ici.
Donc il doit bien y avoir des soucis entre WP et le caractère # dans une url...
Je vais fouiller de ce côté, pour voir...


http://www.torondel.net/ban/ban01b.gif http://www.torondel.net/ban/ban02b.gif

Hors ligne

 

#6 21-09-2009 12:08:08

GazPumped
Habitué WP
Lieu: Paris
Date d'inscription: 24-08-2009
Messages: 98

Re: [Résolu] Souci avec les permaliens

Pour faire simple, c'est plutôt du côté du template que tu dois te tourner ...

Par exemple, pour garder le #portfolio lorsque l'on clique sur le titre d'un article, il faut que tu lien (ta balise <a>) ressemble à quelque chose comme ça :

<a href="<?php the_permalink(); ?>#portfolio"><?php the_title();?></a>

Dernière modification par GazPumped (21-09-2009 12:08:38)

Hors ligne

 

#7 21-09-2009 12:16:45

dtorondel
Habitué WP
Lieu: Bretagne - Fouesnant
Date d'inscription: 20-07-2008
Messages: 65
Site web

Re: [Résolu] Souci avec les permaliens

GazPumped a écrit:

Pour faire simple, c'est plutôt du côté du template que tu dois te tourner ...

Par exemple, pour garder le #portfolio lorsque l'on clique sur le titre d'un article, il faut que tu lien (ta balise <a>) ressemble à quelque chose comme ça :

<a href="<?php the_permalink(); ?>#portfolio"><?php the_title();?></a>

Je viens de tester, ca semble marcher en effet !
J'ai juste modifier sur la ligne du titre dans index.php, maintenant il faut que je farfouille pour trouver les codes des autres liens (sur les catégories, archives, etc)
Mais à priori, ca résoud mon souci, merci !


http://www.torondel.net/ban/ban01b.gif http://www.torondel.net/ban/ban02b.gif

Hors ligne

 

#8 21-09-2009 12:25:15

Comme une image
Burpeur Wordpress
Lieu: Paris (enfin presque)
Date d'inscription: 30-01-2008
Messages: 2498
Site web

Re: [Résolu] Souci avec les permaliens

Merci GazPumped, de transformer en code ce que j'avais mal exprimé ! :-)

J'étais en train de me renseigner, il y a bien un « hook » 'the_permalink'  et un autre 'the_permalink_rss' qui devrait permettre de faire ça proprement du genre (mais je ne suis pas fortiche donc à tester !!!!)
à placer dans functions.php du thème

Code: PHP

  1. function tweak_portfolio( $permalink= '' ) {
  2. $permalink .= "#portfolio" ;
  3. return $permalink ;
  4. }
  5. add_filter( 'the_permalink', 'tweak_portfolio', 999 );
  6. add_filter( 'the_permalink_rss', 'tweak_portfolio', 999 );

Outils de base : Firefox+Firebug, Google-est-mon-ami™, Notepad++. Avec ça, on règle 78,24% des problèmes wink
Pour aller plus loin : Côt côt codex FR EN ! WAMP/LAMP/MAMP

« On paie mal un maître en ne restant toujours que l'élève. » — F. Nietzsche

Hors ligne

 

#9 21-09-2009 12:38:17

dtorondel
Habitué WP
Lieu: Bretagne - Fouesnant
Date d'inscription: 20-07-2008
Messages: 65
Site web

Re: [Résolu] Souci avec les permaliens

Comme une image a écrit:

Merci GazPumped, de transformer en code ce que j'avais mal exprimé ! :-)

J'étais en train de me renseigner, il y a bien un « hook » 'the_permalink'  et un autre 'the_permalink_rss' qui devrait permettre de faire ça proprement du genre (mais je ne suis pas fortiche donc à tester !!!!)

Et bien tu es plus fortiche que tu le penses, je viens de tester, ça marche impec sur tous les liens vers des articles, et également dans le flux rss, merci beaucoup !

Il me reste à trouver comment modifier aussi les liens de la sidebar, donc vers des catégories ou des archives...
Donc les liens sous la forme : http://www.torondel.net/v6/category/animation/, http://www.torondel.net/v6/category/animation/page/2/, ou encore http://www.torondel.net/v6/2009/08/ qui devraient aussi avoir ce fameux #portfolio à la fin...

Est-ce que c'est modifiable de la même manière ? Ou alors je vais être obligé d'aller modifier les fichiers que j'ai vus dans le rep "wp-include", ce qui m'embéterais vu que cela voudrait dire qu'il faudra que je répercute les modifs à chaque MAJ de WP...


http://www.torondel.net/ban/ban01b.gif http://www.torondel.net/ban/ban02b.gif

Hors ligne

 

#10 21-09-2009 13:06:41

Comme une image
Burpeur Wordpress
Lieu: Paris (enfin presque)
Date d'inscription: 30-01-2008
Messages: 2498
Site web

Re: [Résolu] Souci avec les permaliens

Cool si mon truc marche ;-)
Bon, j'ai regardé un peu la doc et j'ai vu qu'il y avait un paquet de filtres qui s'appliquaient aux liens :
http://codex.wordpress.org/Plugin_API/F … nk_Filters

Donc, pour tester, tu peux ajouter des lignes
add_filter( 'filtre_à_tester', 'tweak_portfolio', 999 );

Y a, par exemple tag_link pour les tags, mais j'ai rien vu pour les catégories sad


Outils de base : Firefox+Firebug, Google-est-mon-ami™, Notepad++. Avec ça, on règle 78,24% des problèmes wink
Pour aller plus loin : Côt côt codex FR EN ! WAMP/LAMP/MAMP

« On paie mal un maître en ne restant toujours que l'élève. » — F. Nietzsche

Hors ligne

 

#11 21-09-2009 14:03:59

dtorondel
Habitué WP
Lieu: Bretagne - Fouesnant
Date d'inscription: 20-07-2008
Messages: 65
Site web

Re: [Résolu] Souci avec les permaliens

Comme une image a écrit:

Cool si mon truc marche ;-)
Bon, j'ai regardé un peu la doc et j'ai vu qu'il y avait un paquet de filtres qui s'appliquaient aux liens :
http://codex.wordpress.org/Plugin_API/F … nk_Filters

Donc, pour tester, tu peux ajouter des lignes
add_filter( 'filtre_à_tester', 'tweak_portfolio', 999 );

Y a, par exemple tag_link pour les tags, mais j'ai rien vu pour les catégories sad

OK, j'ai compris le principe, ca fonctionne ! Pour les catégories aussi :
http://codex.wordpress.org/Plugin_API/F … ry_Filters

Un grand merci à toi et aux autres, je vais pouvoir avancer dans mon projet !


http://www.torondel.net/ban/ban01b.gif http://www.torondel.net/ban/ban02b.gif

Hors ligne

 

Pied de page des forums

Propulsé par PunBB 1.2.22
© Copyright 2005-2006 WordPress France

[ Generated in 0.074 seconds, 20 queries executed ]