Intereting Posts

Представление Front End с мета-ключом

Я работаю над созданием представления пользовательского типа пользовательского типа. Я уже закодировал проверку разных тутов. Но форма возвратила не найденную страницу после suvmission, опять же не вводя никаких данных. Пожалуйста, помогите мне узнать ошибку, если это возможно.

<?php if (!isset($_POST['submit'])) { ?> <form method="post" action="<?php the_permalink(); ?>"> <table> <tr><th width="138"><label for="id_meta">Mobile No:</label></th><td width="163"><input id="id_meta" type="text" name="wpcf-mob_no" maxlength="100" /></td></tr> <tr><th width="138"><label for="id_meta">Amount To Load:</label></th><td width="163"><input id="id_meta" type="text" name="wpcf-mob_amount" maxlength="100" /></td></tr> <tr><th width="138"><label for="id_meta">Connection Type</label></th><td width="163"><select id="id_meta" type="text" name="wpcf-mob_type" maxlength="100" /> <option value="pre_paid">Pre Paid</option> <option value="post_paid">Post Paid</option> </td></tr> <tr><th width="138"></th><td width="163"><input id="id_meta" type="hidden" name="wpcf-mob_status" maxlength="100" value="pending"/></td></tr> <tr><th></th><td><input id="id_title" type="hidden" name="post_title" maxlength="100" value="<?php echo date('r'); ?>"/></td></tr> <tr> <td>&nbsp;</td> <input type="hidden" name="post_type" id="post_type" value="loads" /> <input type="hidden" name="action" value="post" /> <?php wp_nonce_field( 'new-post' ); ?> <td><input type="submit" value="Submit" name="submit"/></td> </tr> </table> </form> <?php } else { $title = $_POST['post_title']; $meta_box1 = $_POST['wpcf-mob_no']; $meta_box2 = $_POST['wpcf-mob_amount']; $meta_box3 = $_POST['wpcf-mob_type']; $meta_box4 = $_POST['wpcf-mob_status']; $new_post = array( 'post_title' => $title, 'post_status' => 'publish', // Choose: publish, preview, future, draft, etc. 'post_type' => 'loads' //'post',page' or use a custom post type if you want to ); //save the new post $pid = wp_insert_post($new_post); /* Insert Form data into Custom Fields */ add_post_meta($pid, 'wpcf-mob_no', $meta_box1, true); add_post_meta($pid, 'wpcf-mob_amount', $meta_box2, true); add_post_meta($pid, 'wpcf-mob_type', $meta_box3, true); add_post_meta($pid, 'wpcf-mob_status', $meta_box4, true); print '<pre>'; var_dump(array($new_post, $pid)); print '</pre>'; } ?> 

Solutions Collecting From Web of "Представление Front End с мета-ключом"

Поскольку поле метаданных уже существует, вы должны его обновить.
также вы должны время wp_insert_post … здесь приведен код

попробуйте и дайте мне знать, что вы столкнулись с проблемами:

 else { $title = $_POST['post_title']; $meta_box1 = $_POST['wpcf-mob_no']; $meta_box2 = $_POST['wpcf-mob_amount']; $meta_box3 = $_POST['wpcf-mob_type']; $meta_box4 = $_POST['wpcf-mob_status']; $new_post = array( 'post_title' => $title, 'post_status' => 'publish', // Choose: publish, preview, future, draft, etc. 'post_type' => 'loads' //'post',page' or use a custom post type if you want to ); //save the new post $pid = wp_insert_post($new_post, 10, 1); // Do the wp_insert_post action to insert it do_action('wp_insert_post', 'wp_insert_post', 10, 1); update_metadata($pid, 'wpcf-mob_no', $meta_box1, true); update_metadata($pid, 'wpcf-mob_amount', $meta_box2, true); update_metadata($pid, 'wpcf-mob_type', $meta_box3, true); update_metadata($pid, 'wpcf-mob_status', $meta_box4, true); print '<pre>'; var_dump(array($new_post, $pid)); print '</pre>'; } 

Следующий код работал для меня.

 add_post_meta($pid, 'wpcf-mob_no', $meta_box1, true); add_post_meta($pid, 'wpcf-mob_amount', $meta_box2, true); add_post_meta($pid, 'wpcf-mob_type', $meta_box3, true); add_post_meta($pid, 'wpcf-mob_status', $meta_box4, true);