Jaki jest właściwy sposób zdefiniowania daty postu podczas przesyłania posta z interfejsu użytkownika za pomocą wp_insert_post ( Trac )?
Mój fragment jest teraz publikowany z czasem mysql ...
if (isset ($_POST['date'])) {
$postdate = $_POST['Y-m-d'];
}
else {
$postdate = $_POST['2011-12-21'];
}
// ADD THE FORM INPUT TO $new_post ARRAY
$new_post = array(
'post_title' => $title,
'post_content' => $description,
'post_date' => $postdate,
'post_status' => 'publish',
'post_parent' => $parent_id,
'post_author' => get_current_user_id(),
);
//SAVE THE POST
$pid = wp_insert_post($new_post);
date-time
wp-insert-post
m-torin
źródło
źródło
$postdate = date('2010-02-23 18:57:33');
rzeczywiście sprawia skrzynki wejściowe przestanie działać, może to po prostu błąd w Chrome chociaż ...Notice: A non well formed numeric value encountered in C:\xampp\htdocs\wordpress\wp-includes\functions.php on line 4028
$postdate = '2010-02-23 18:57:33';
, ponieważdate()
wymaga dosłownego formatu daty, a nie liczb. Lub$postdate = date('Y-m-d H:i:s', strtotime('2010-02-23 18:57:33'));
aby przekonwertować datę na format Wordpress (MySQL DATETIME), spróbuj tego:
lub oczywiście, jeśli chcesz być naprawdę seksowny, zrób to:
źródło
date("Y-m-d H:i:s", $date_stamp)
kodu.Nie możesz sformatować tego w
$_POST['date']
ten sposób ... Musisz uruchomić wartość od$_POST['date']
czegoś takiego jak$postdate = date( $_POST['date'] )
... Istnieje również możliwość wywołania get_option dla ustawień blogu. Zobacz Poradnik opcji w Kodeksie.źródło
Dla społeczności tutaj jest mój ostatni działający kod:
nagłówek
źródło
natknąłem się na google. wiem, że jest stary, ale nie ma jednoznacznej odpowiedzi. kod wordpress używa
current_time( 'mysql' )
do zapisywania daty / godziny w funkcji wp_update_post! wygeneruje to pożądany format daty.źródło