0

WordPress管理者に自動ログインしていくつかのアクションを実行したいので、これにsnoopy phpクラスを使用しました。私のサンプルコードはこちら

<?php
include 'Snoopy.class.php';
$snoopy = new Snoopy;
 $submit_url = "http://localhost/wordpress/wp-login.php";   
 $submit_vars["log"] = "admin"; //username
 $submit_vars["pwd"] = "admin";  //password
 $submit_vars["rememberme"] = "forever"; 
 $submit_vars["redirect_to"] = "http://localhost/wordpress/wp-admin/";
 $submit_vars["testcookie"] = "1";
 $submit_vars["wp_submit"] = "submit"; 
 $snoopy->submit($submit_url,$submit_vars); 
print $snoopy->results; 
 ?>

しかし、私は得ています:

ERROR: Cookies are blocked or not supported by your browser. You must enable cookies to use WordPress.

ただし、手動でログインすることはできますが、これは機能せず、ブラウザでも Cookie が有効になっています。

私が間違っているのは何ですか?どうすればこれを機能させることができますか?

4

1 に答える 1

0

ヘッダーを印刷します。

print_r ($snoopy->headers);

出力:

... [5] => Set-Cookie: wordpress_test_cookie=WP+Cookie+check; ...

ただし、Cookieを印刷します

print_r ($snoopy->cookies);

届ける

... [wordpress_test_cookie] => WP Cookie check ...

解決策: セット

$snoopy->cookies['wordpress_test_cookie']="WP+Cookie+check";

Snoopy がプレーンテキストの Cookie コンテンツをクリアし、空白に「+」を設定するため、送信前に手動で。

于 2014-10-21T09:02:03.947 に答える