我正在尝试将 WordPress 帖子 URL 发布到我的 Twitter。我已经创建了 twitter 消费者密钥、消费者秘密密钥、访问令牌、访问令牌秘密(免费计划)。
可能从客户端(Twitter 端)收到连接错误。
我的代码:
require_once plugin_dir_path(__FILE__) . '/vendor/autoload.php';
use Abraham\\TwitterOAuth\\TwitterOAuth;
// I have a button, On its click this function is called to Post Hello world message to Twitter.
/* if (isset($_POST['start_auto_tweet'])) {
TweetPost();
}
*/
function TweetPost() {
define('CONSUMER_KEY', 'xxxxxxxxxxxxxxxxxxxx');
define('CONSUMER_SECRET', 'xxxxxxxxxxxxxxxxxxxx');
define('ACCESS_TOKEN', 'xxxxxxxxxxxxxxxxxxxx');
define('ACCESS_TOKEN_SECRET', 'xxxxxxxxxxxxxxxxxxxxxxxx');
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
$content = $connection->get("account/verify_credentials");
if ($connection->getLastHttpCode() == 200) {
echo '\nRequest successful. getLastHttpCode Content equal to 200: ';
} else {
echo 'Error in getLastHttpCode';
}
$tweet = $connection->post('statuses/update', array('status' => 'Hi'));
if ($tweet) {
echo 'Success: Your message Hi has been posted to Twitter.';
} else {
echo "\nError: Could not post the Hi message to Twitter. $tweet\n";
}
}
我收到:
“getLastHttpCode 中的错误”和“错误:无法将 Hi 消息发布到 Twitter”。
请有人帮我解决这个问题,我已经使用了https://twitteroauth.com/(Composer通过CMD在插件文件夹中导入TwitterOAuth库)。
它应该将“嗨”消息发布到我的 Twitter 个人资料中。稍后,我想通过 WordPress cron 自动发布 WordPress 帖子 URL。
当错误输出只是您放在那里的字符串时,很难进行故障排除。我建议尝试获取有关您的请求和响应的更多信息,以找出问题的根源。您可以尝试使用
error_log()
函数将这些写出来供您检查。也许是这样的:
if ($connection->getLastHttpCode() == 200) {
echo '\nRequest successful. getLastHttpCode Content equal to 200: ';
} else {
error_log('Error in getLastHttpCode: ' . $connection->getLastHttpCode());
echo 'Error in getLastHttpCode';
}
还有回复
if ($tweet) {
echo 'Success: Your message Hi has been posted to Twitter.';
} else {
// Log tweet error message to PHP error log
error_log('Error posting tweet: ' . json_encode($connection->getLastBody()), 3, 'error.log');
echo "\nError: Could not post the Hi message to Twitter.\n";
}
现在看看你的 php/error.log 中是否有任何有用的东西,或者你配置的任何地方,应该能够在你的 php.ini 中找到它的 error_log。