是否从外部文件更新帖子标题?

时间:2014-04-30 作者:Tallboy

我编写了一个外部脚本(仅供管理员使用),在顶部加载以下内容:

require_once(\'./../wp-blog-header.php\');
我知道它可以是一个插件,但现在还不是。。这只是一个标准的php脚本。

在这个脚本中,我有一个表单,允许查看的人更新标题。

这是他们提交表格时的代码:

$post_data = array(
  \'ID\'         => $_POST[\'post_id\'],
  \'post_title\' => $_POST[\'post_title\']
);
wp_update_post($post_data);
wp\\u update\\u post()实际上返回了一个ID,这让我觉得它可以工作,但帖子根本没有改变,标题也从来没有更新过。

我可能会错过什么?如果它不起作用,至少我会预料到一个错误。

我确信ID和标题是正确/填写的。

2 个回复
SO网友:Eduardo Rengifo

有时,当我想在外部运行WordPress时,我会使用这段代码。

使现代化php

function find_wordpress_base_path() {
    $dir = dirname(__FILE__);
    do {
        //it is possible to check for other files here
        if( file_exists($dir."/wp-config.php") ) {
            return $dir;
        }
    } while( $dir = realpath("$dir/..") );
    return null;
}

define( \'BASE_PATH\', find_wordpress_base_path()."/" );
define(\'WP_USE_THEMES\', false);
global $wp, $wp_query, $wp_the_query, $wp_rewrite, $wp_did_header;
require(BASE_PATH . \'wp-load.php\');

$post_id = $_POST[\'id\'];
$title = $_POST[\'title\'];

// Update post
$my_post = array(
    \'ID\'           => $post_id,
    \'post_title\'   => $title, // new title
);

// Update the post into the database
wp_update_post( $my_post );

SO网友:Liz Eipe C

请使用以下代码更新标题。作为第一步,包括数据库文件。

require_once \'wp-load.php\';
require_once ABSPATH . \'/wp-admin/includes/taxonomy.php\';
然后使用下面的代码来编辑wordpress标题。

 $updatePost = array(   
        \'ID\' => $postCSVContent[0], // wordpress Id
        \'post_title\'    => $postCSVContent[\'1\'], // Updated title
        \'post_content\'  => $postCSVContent[\'2\'], // Updated content
        \'post_type\' => \'page\',
        \'post_status\'   => \'publish\',
        \'post_author\'   => 1
    );

    wp_update_post( $updatePost );
还请参阅教程,其中解释了如何从CSV读取数据并从外部对文章进行udpate。http://www.pearlbells.co.uk/code-snippets/insert-update-wordpress-post-programmatically/

结束

相关推荐

无法打开Advanced-cache.php,这将破坏媒体库

在我的WordPress安装中,它是3.8版本,所有插件都已更新,它使用的是Magic Fields 2和Hypercache等插件。我无法在帖子中插入图像,因为当我上传时,它会给我一个错误:上载时出错。请稍后再试。帖子“插入媒体”中的媒体库窗口显示为空白,尽管我知道那里有图像,可以通过侧边栏中的查看它们。当我尝试插入带有魔术字段的图像时,当我单击“插入帖子”时,窗口是空白的,它不会插入图像。在wp配置中。php,我已将调试设置为true:define(\'WP\\u DEBUG\',true);我在禁用