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


ピックアップ記事

simplexml_load_fileでRSSを取得・表示させる

2012年02月11日 zencartphp
simplexml_load_fileとは simplexml_load_fileは、PHP5から利用可能になった関数で、XMLをパースしてオブジェクトに代入します。 今回は、オープンソースのECサイト構築システム「ZenCart」に外部ブログ(WordPress)のRSSを表示させてみました。 設置コード [php] <?php $rss = "http://apr20…
「simplexml_load_fileでRSSを取得・表示させる」をはてなブックマークに追加

自動整形&タグ除去回避

2011年11月21日 WordPress
PS Disable Auto Formatting WordPressによる、自動整形、タグ除去などを無効にするプラグイン
「自動整形&タグ除去回避」をはてなブックマークに追加

指定カテゴリに属する子カテゴリ名の一覧を取得(表示)

2011年11月28日 WordPress
以下の例では、カテゴリIDが30のカテゴリを親に持つ、子カテゴリ一覧を表示します。 [php] <?php $categories = get_terms( 'category', array( 'orderby' => 'count', 'hide_empty' => 0, 'child_of' => 30, ) ); foreach($cat…
「指定カテゴリに属する子カテゴリ名の一覧を取得(表示)」をはてなブックマークに追加

Timestamp out of bounds と表示される時

2011年07月26日 web関連php
プログラムを実行しようとすると「Timestamp out of bounds」というエラーが表示されました。 何かと思って調べてみると、どうやらサーバの時間がずれている模様。 なので、以下のようにして解決。 …
「Timestamp out of bounds と表示される時」をはてなブックマークに追加

Facebook と WordPressの連携テスト

2012年01月24日 WordPress
Wordbookerというプラグインを使ってテストしています。
「Facebook と WordPressの連携テスト」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy