2010-08-02 4 views
1

J'utilise ajouter la fonction post méta pour enregistrer des données et sa ne fonctionne pasAjouter la fonction Meta Poste ne fonctionne pas

<?php 
//include '../../../wp-blog-header.php'; 
$unique = "true"; 
$pageID = $_GET['postID']; 
echo "pageID:"; 
echo $pageID; 

echo "</br>"; 
$num_posts = $_GET['num_posts']; 
echo "num_posts: "; 
echo $num_posts; 
echo "</br>"; 
$num_posts_meta_key = "num_posts"; 
add_post_meta($pageID, $num_posts_meta_key, $num_posts , $unique) or update_post_meta($pageID, "num_posts" , $num_posts); 
?> 

que quelqu'un peut me aider?

Dans la première page j'obtiens toutes les valeurs des zones de texte ou des cases à cocher dans javascript et puis je le passe dans l'URL à la page suivante où la fonction d'add_post_meta est là.

J'ai essayé d'utiliser la méthode POST ... mais alors ça ne marche pas pour moi. Il suffit de soumettre la page et de revenir sans rien faire sur la 1ère page. J'ai essayé avec la méthode GET .. mais rien ne fonctionne.

Par conséquent, j'ai décidé de prendre toutes les valeurs comme num de poste, post-id en javascript et ensuite de le passer avec url en utilisant window.location.

Je suis très nouveau dans le codage plugin wordpress. Je pensais que la méthode POST dans mon plugin est en conflit avec une autre méthode de poste dans post.php .. pas sûr cependant ..

J'écris le plugin pour le panneau d'administration.

+0

par « ne fonctionne pas », voulez-vous dire ce n'est pas l'insertion ou il est d'insérer de façon incorrecte? – Ben

+0

Son ne pas insérer .... et le code qui est ci-dessous ce add_post_meta() travail doent ... echo simple ne fonctionne pas non plus ... pas sûr que ce qui manque? –

+0

"echo simple ne fonctionne pas" .. qu'est-ce que tu veux dire par là? Voulez-vous dire que echo $ pageID n'affiche rien ..? On dirait que votre problème est avec votre demande. Comment votre page est-elle appelée? – Ben

Répondre

1

ne savez pas quel est votre problème .. êtes-vous sûr de passer le bon paramètre postID? le poste existe-t-il dans la base de données?

Vous n'avez pas vraiment besoin de faire add_post_meta() ou update_post_meta.

De the manual:

La première chose que cette fonction fera est de vous assurer que meta_key de $ déjà existe sur post_id de $. Si ce n'est pas le cas, add_post_meta ($ post_id, $ meta_key, $ meta_value) est appelée à la place et son résultat est renvoyé.

<?php 
// This minimum code should work, though you should really check that a post 
// with this id does exist. 
update_post_meta($_GET['postID'], "num_posts" , $_GET['num_posts']); 
?> 
+0

J'ai vérifié dans wp_postmeta table et id existe là .... Je vais essayer ce que vous avez suggéré maintenant. –

+0

cet id devrait exister dans wp_posts – Ben

+0

Je vais vérifier dans la table wp_post aujourd'hui..J'ai pensé à le déboguer ... mais dreamweaver doenst avoir l'outil de débogage; ( –

Questions connexes