我正在尝试通过前端在自定义PostType中创建帖子,帖子也成功创建。但除非我进入仪表板并单击更新,否则cutom permalink是空白的
$todaydate = new DateTime();
$todaydate =$todaydate->format(\'Y-m-d H-i-s\');
$bookid="harrypotter";
$mypost= array(\'post_type\'=>\'books\',
\'post_title\'=>$bookid,
\'post_author\'=>\'1\',
\'post_status\'=>\'publish\',
\'post_date\'=>$todaydate);
$wpdb->insert(\'wp_posts\',$mypost);
$bookid=$wpdb->insert_id;
当我进入posttype书籍时,我发现这篇文章是创建的,但永久链接是
http://localhost/mysite/newbooks//
而不是
http://localhost/mysite/newbooks/harrypotter/
那么,我如何让它更新帖子的永久链接呢
最合适的回答,由SO网友:Jacob Peattie 整理而成
不要直接插入数据库。使用适当的函数,以便在将帖子插入数据库之前正确创建帖子。
在您的情况下,正确的功能是wp_insert_post()
:
wp_insert_post( array(
\'post_type\' => \'books\',
\'post_title\' => \'harrypotter\',
\'post_status\' => \'publish\',
\'post_author\' => 1,
) );
如果需要当前时间,则不需要手动设置日期字段。