Besoin de vos lumières en programmation…
Cador de wordpress, de php, des expressions régulières vous allez peut être pouvoir m’aider car je suis un peu bloqué et je n’arrive pas à trouver la solution à mes deux problèmes (peut être fort basiques d’ailleurs).
Premier problème : Comment faire la redirection des anciennes url vers le nouveau format (sans utiliser de plugin mais le fichier htaccess). Mes anciennes urls avaient pour structure : http://mondomaine.com/category/postnameLes nouvelles adresses ajoutent uniquement le numéro de l’article à la fin : http://mondomaine.com/category/postname-postID
< ?php
global $post;
$attachments = get_children( array( 'post_parent' => $post_id, 'post_type' => 'attachment', 'orderby' => 'menu_order ASC, ID', 'order' => 'DESC') );
foreach( (array) $attachments as $attachment ) :
echo '';
echo wp_get_attachment_link($attachment->ID, 'thumbnail', true);
echo '';
endforeach;
?>
Si vous avez des idées ou des propositions de code vous pouvez m’envoyer un email (hlabarre (at) gmail.com) car le code dans les commentaires n’a jamais été un truc très bien supporté sous wordpress. Merci pour votre aide!
Update : Les deux problèmes sont résolus, pour le premier voir les commentaires et pour le second le plugin Simple All Pictures qui a été créé par Amaury Balmer.
17 commentaires sur “Besoin de vos lumières en programmation…”
Les commentaires sont fermés.
Problème#1 :
Solution : Deans Permalink Migration
URL : http://www.deanlee.cn/wordpres.....on-plugin/
Non car ce plugin est incompatible avec redirection d’urban giraff : http://urbangiraffe.com/ c’est pour cela que je veux le faire directement dans le htaccess!
Bonjour,
Pour le problème #1 tu ne peut pas le faire avec un simple htaccess. L’ID n’étant pas present dasn les anciennes URL tu ne peut pas le mettre dasn les nouvelles. Les expression régulière te permettent juste de « déplacer » des bouts de l’ancienne url dans la nouvelle ou bien d’y ajouter des données statiques. Si l’ID n’est pas présent dans les anciennes URL tu ne pourra pas le rajouter dans la nouvelle sauf si tu fais une régle de réécriture pour chaque ancienne URL ;)
Merde je me disais bien que cela allait coincer… Peut être que je peux mettre cette redirection dans le plugin d’urban giraff qui lui est intégré dans wordpress (à l’inverse du htaccess)?
Pour ton problème 1, la fonction wp_old_slug_redirect() ne s’applique pas ?
Pour le 2, pas eu le temps de fournir la suite ;)
@amaury, je vais chercher du côté de cette fonction, pour le point 1! Pour le 2 je suis curieux de voir le résultat (cela se package en plugin cette appli non?).
Pour le premier probleme, comme l’a dit Vince1415, pas possible a cause des id, mais une par une ca reste faisable avec un bout de code PHP pour qu’il edite lui meme le fichier htaccess
Pour moi, la solution au (1) serait que ton htaccess redirige le visiteur vers une page php, qui irait chercher le Post ID et redirigerait à nouveau le visiteur vers la nouvelle url …
Salut henri,
pour ta galerie, tu devrais aller faire un tour sur le plugin Nextgen Gallery, qui utilise ce genre de pagination: http://wordpress.org/extend/pl.....n-gallery/
@+
Enfin je viens de trouver la solution pour le problème #1. J’utilisais un plugin appelé « permalink redirect » (http://scott.yang.id.au/code/permalink-redirect/) qui fonctionnait très bien avant mon changement de format d’url mais en intégrant la nouvelle structure je n’avais pas mis de « / » à la fin de :
/%category%/%postname%-%post_id%/
et cela fait planter la pagination du blog.
Il ne reste donc que le problème #2 ;)
slt
as tu modifié le code Amaury car je n’arrives pas à le faire fonctionner
merci
…
je n’ai modifié que le CSS pour la mise en forme des vignettes c’est tout. Le script fonctionne à merveille chez moi…
ou se trouve ta galerie?
ici : http://www.blogdecodesign.fr/galerie/
ok ca marche merci
http://reynald.incident.net/archives/2/
sur ta galerie lorsque l’on clique sur tes images il y a une erreur…
le serveur rame un peu depuis la migration on travaille dessus (enfin amaury y travaille)… Théoriquement cela fonctionne, chez toi cela marche nickel!