wp_insert_posts没有显示在wp-admin,所有帖子部分

时间:2017-09-01 10:42:41

标签: wordpress multisite wpml

我在安装了WPML的亚马逊服务器上安装了多站点的WordPress,所以我尝试了thisthis,但我没有运气。

wp_insert_post(array('post_title'=>'test_title','post_content'=>'test_content', 'post_excerpt'=>'test_excerpt', 'post_type'=>'post', 'post_status'=>'publish'));

它成功地将帖子插入wp_posts表但未列入仪表板管理部分,但它适用于本地服务器但不适用于亚马逊服务器。

插入的帖子显示为管理部分的计数但未显示在"所有帖子"部分。

我在上面的代码可以使用的服务器上的设置与亚马逊相同。

我看到当我停用WPML插件然后一切正常时。
我是否必须在上面的代码中添加任何其他内容才能使其正常工作?

1 个答案:

答案 0 :(得分:0)

由于这是一个多站点安装,您首先需要切换到正确的站点。

您说该帖子会显示在wp_posts表格中,但不会显示在信息中心内。很可能它出现在多站点网络的不同站点下。

所以你需要先做:

switch_to_blog($the_site_you_want_to_insert_into);
wp_insert_post(array('post_title'=>'test_title','post_content'=>'test_content', 'post_excerpt'=>'test_excerpt', 'post_type'=>'post', 'post_status'=>'publish'));

restore_current_blog();

$the_site_you_want_to_insert_into你需要自己找出答案。 :)