2017年05月30日 WordPressphp

必要なライブラリをダウンロード

XML-RPCを利用するのに必要なライブラリをダウンロードして、インクルードします。 IXR_Library.phpをダウンロード
include_once("IXR_Library.php");
$client=new IXR_Client("http://wordpress-domain.com/xmlrpc.php");

新規投稿の設定

	$wp_username="WP-USERNAME";
	$wp_password="WP-PASSWORD";

	$postdate = new IXR_Date(mktime(0,0,0,4,20,2017));
	$gmtpostdate = new IXR_Date(mktime(0,0,0,4,20,2017));  

$url = "http://~~";


$status = $client->query(	'metaWeblog.newPost',
						'',
						$wp_username,
						$wp_password,
						array(
  							'title' => $title,
								'description' => $description,
								'dateCreated' => $postdate,
								'date_created_gmt' => $gmtpostdate,
  							// その他、カスタムフィールド、アイキャッチ、タグなどをここで設定可能①
								'post_status' => 'publish'
							),
						2);	// 0:下書き 1:公開 2:予約投稿
 

 if($status){ echo "成功";}
else{ echo $client->getErrorMessage();}

カスタムフィールドなどを設定する

上のコードの①のあたりに追加します。アイキャッチの場合はメディアIDを指定します。

設定出来るパラメータはこちらで確認出来ます。 XML-RPC MetaWeblog API

//カスタムフィールドを設定する
	 "custom_fields" => array(
           array( "key" => "url", "value" => $url ),
	 ),
//タグを設定する
       'mt_keywords' =>  array('tag1', 'tag2', 'tag3'),

//アイキャッチを設定する
'wp_post_thumbnail' => $img["id"],

画像のアップロード

$thumbnail_url = "http://~~~~.png";

$filename = pathinfo( $thumbnail_url );
$filename = $filename["basename"];
$imgInfo = getimagesize($thumbnail_url);
$type = $imgInfo["mime"];

$bits = new IXR_Base64(file_get_contents($thumbnail_url));
$status1 = $client->query(
"wp.uploadFile",
1,
$wp_username,
$wp_password,
array(
        "name" => $filename,
        "type" => $type,
        "bits" => $bits,
        "overwrite" => false,
        "post_id" => $post_id
)
);
$img = $client->getResponse();
echo $client->getErrorMessage();

投稿した画像のメディアIDを取得
$media_id = $img["id"];

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

wordpressのパンくずリストをmicrodata対応させる[追記あり]

2014年08月04日 web関連WordPressphpSEO対策
WordPressのパンくずリストをリッチスニペット(microdata)に対応させてみました。 リッチスニペットについては下記を参考にしてください。 リッチ スニペット - パンくずリスト(Google) 対応後のコードはGistにあります。という割に、Gistの使い方がよくわかっていません・・。 少しずつ勉強していきます。(^_^;) microdata対応のWordpr…
「wordpressのパンくずリストをmicrodata対応させる[追記あり]」をはてなブックマークに追加

twitter API v1.1を使ってツイート投稿

2014年08月01日 web関連phptwitter API
twitterのAPIを利用してツイートする必要があったので、メモ。 準備 まず、twitterのdevサイトでapp登録しておきます。 次に、ツイートする際に必要なOAuthという認証作業を簡単にしてくれるOAuthライブラリtwitteroauthをダウンロードします。リンク先に飛んだら右下の方にDownload ZIPというボタンがあるのでそこからダウンロード出来ます。 …
「twitter API v1.1を使ってツイート投稿」をはてなブックマークに追加

表示中ページの条件分岐

2011年11月21日 WordPress
条件分岐一覧 is_front_page()トップページかどうか。 is_home()投稿ページ(固定ページを設定していなければトップページ)かどうか。 is_single()個別記事かどうか。カッコにID、タイトル、スラッグを入れて判定できる。 is_page()ページかどうか。カッコにID、タイトル、スラッグを入れて判定できる。 is_singular()個別記事でもページ…
「表示中ページの条件分岐」をはてなブックマークに追加

WordPressでindex.htmlとindex.phpを混在させる

2011年06月14日 WordPress
なんともない話題ではありますが、既存のサイトを公開したまま、index.phpの方で、WordPressを入れて、リニューアルをと思ってたんですが、index.phpもindex.htmlもWordPressのホームディレクトリにリダイレクトされてるようです。 どうしたもんかと思ってたら、簡単に解決する方法がありました。 wp-include内のcanonical.phpファイルを開き、270行…
「WordPressでindex.htmlとindex.phpを混在させる」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy