8722 sujets

Développement web côté serveur, CMS

Bonjour,
Je souhaiterais faire la même chose que ca (cliquez sur "découvrir l'offre"), c'est en quelque sorte une page de transition, avant d'aller sur une autre page, mais je ne sais pas trop comment m'y prendre.
J'ai créé un répertoire /go/ dans lequel j'ai mis un fichier index.php avec ceci à l'intérieur


<?php
  header('Location:' . get_post_meta($post->ID,'affiliation',true). '');
  exit();
?>

Mais ca ne marche pas, j'ai une erreur parse:

Fatal error: Call to undefined function get_post_meta()  in /homez.640/exemple/www/wp-content/themes/wptheme/go/index.php on line 2

Et puis en plus ca récupère pas l'ID dans l'url comme sur le site d'exemple.

J'ai fait ca sous wordpress.
Quelqu'un pourrait m'aiguiller sur la solution à adopter ?
Merci par avance
Modifié par dreadstock (10 Apr 2013 - 18:28)
L'idée est la bonne : utiliser la fonction header de php.
Par contre ta fonction "get_post_meta" n'existe pas, as-tu oublié de l'inclure quelque part ?
Idem pour la variable $post, tu ne voulais pas faire un $_POST['ID'] plutôt ?
Ben la fonction existe, car j'arrive à l'appeler sur une autre page. Mais la ca ne fonctionne pas. Peut etre dois je inclure la boucle wordpress, je sais pas trop.
J'ai changé un peu le code :
<?php 

// Execute un refresh de la page en PHP

$delai=1; 
$url='' . get_post_meta($post->ID,'affiliation',true). '';
header("Refresh: $delai;url=$url");

?>


Je comprends pas pourquoi, la fonctionne get post meta existe, impossible de la récupérer
"Call to undefined function get_post_meta() "

j'ai mis le fichier show.php dans un dossier /go/show.php, où se trouve le header.php, function.php etc... dans Wordpress.
Elle est déclarée dans le même fichier ta fonction ?
Si oui, vérifie qu'elle est déclaré AU DESSUS de quand tu l’appelles.
Si non, tu as oublié d'inclure le fichier où elle se trouve ou tu l'a inclus en dessous.

Autrement, tu as peut-être fais une erreur de frappe dans le nom.