Здравствуйте, у меня на сайте, в личном кабинете организована стена пользователя.
Возникла проблема при удаление постов(записей).
<?php if( isset( $_POST['del'] ) ) { echo wp_trash_post ( $post_id ); echo '<div style="font-size: 13px;color: red;font-family: Roboto, sans-serif;font-weight: normal;">Запись удалена!</div>'; } ?> <form method="POST"> <input type="submit" name="del" value="Удалить запись?" style="box-shadow: none;" /> </form>
Вот этот код выводит кнопку удаления постов. Проблема в том, что при нажатии кнопки удалить удаляются все посты со стены.
Помоги кодом, как получать id конкретного поста, а потом удалять его (помещать в корзину)?
Вывел print_r вот так
<?php if( isset( $_POST['del'] ) ) { if ( !$post = get_post($post_id, ARRAY_A) ) return $post; print_r($post); echo '<div style="font-size: 13px;color: red;font-family: Roboto, sans-serif;font-weight: normal;">Запись удалена!</div>'; } ?>
Выдало id на каждый пост
Извините, это я так print_r выводил.
Сейчас вывел по такому коду, как просил отшельник. То есть добавил print_r перед удалением поста
<?php if( isset( $_POST['del'] ) ) { print_r($post_id); echo wp_trash_post ( $post_id ); echo '<div style="font-size: 13px;color: red;font-family: Roboto, sans-serif;font-weight: normal;">Запись удалена!</div>'; } ?> <form method="POST"> <input type="submit" name="del" value="Удалить запись?" style="box-shadow: none;" /> </form>
вот что выводит
Можете сообщить где вы вообще взяли эту жесть?
Удаление производится через функцию, при этом в функцию ничего не передается ($post_id - ничего не содержит), соотвественно в функцию передается текущий ИД публикации, а так как все это дело производится в цикле, то происходит поочередное удаление всех публикаций из этого цикла.
Рекомендую удалить этот код, подход который вы пытаетесь применить в корне неверен.
Otshelnik-Fm сказал(а)
$post = get_post($post_id, ARRAY_A) ) - тоже не понимаю откуда это у вас.
Выводит у вас правильно. Но там нет id записи. Вы это заметили?
Поправил html, сбилась верстка. Print_r вообще ничего не выводит, пробовал вставлять в разные места.
Но Андрей уже сказал, что весь код неправильный, поэтому от print_r пока толку нет((