我正在尝试发布帖子时发推文。在此之前,我在前端页面中实施了https://github.com/abraham/twitteroauth,可以提交表单。
提交表单时发送推文。工作正常。
所有twitteroauth
个文件都在我的child-theme
文件夹中。
现在我想在管理面板提交帖子时发推文。
所以我尝试了以下代码:
<?php
/* Tweet when the post is published */
add_action('future_to_publish', 'send_emails_on_new_event');
add_action('new_to_publish', 'send_emails_on_new_event');
add_action('draft_to_publish' ,'send_emails_on_new_event');
add_action('auto-draft_to_publish' ,'send_emails_on_new_event');
function send_emails_on_new_event($post)
{
require "autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;
$consumerKey = "My Consumer Key"; // Consumer Key
$consumerSecret = "My Consumer Secret"; // Consumer Secret
$accessToken = "My Access Token"; // Access Token
$accessTokenSecret = "My Access Token Secret"; // Access Token Secret
$connection = new TwitterOAuth($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);
/* Media - 2 photos */
$media1 = $connection->upload('media/upload', array('media' => 'https://pbs.twimg.com/media/CTBv1rCVAAEwKjS.jpg'));
$media2 = $connection->upload('media/upload', array('media' => 'https://pbs.twimg.com/media/CTBv1rCVAAEwKjS.jpg'));
$parameters = array(
'status' => 'Tweeted by the post is published',
'media_ids' => implode(',', array($media1->media_id_string, $media2->media_id_string)),
);
$result = $connection->post('statuses/update', $parameters);
if ($connection->getLastHttpCode() == 200) {
echo 'Tweeted successfully';
} else {
echo 'Something went wrong';
}
}
?>
我将此代码放在functions.php
中,但当我转到管理面板时,我收到了以下消息。
所以错误发生在use
当我在前一页的前端页面上尝试时,我也遇到了同样的错误。我通过在get_header();
require "autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;
我认为在使用use
时我必须做些其他事情。那是什么?
我该如何解决这个问题?