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


ピックアップ記事

Dreamweaverでソースコードの整形

2014年08月22日 HTML5・CSS3jQuery・javascriptphp
Dreamweaverでソースコードの整形
HTMLやCSSなどのソースコードを簡単に整形する方法です。 Dreamweaver以外でも出来るソフトがあるようですが、手元のDWを使うのが一番便利そうなので、今回はDWのやり方を紹介します。 …
「Dreamweaverでソースコードの整形」をはてなブックマークに追加

PHPでGET送信かPOST送信かを判別する方法

2012年02月02日 php
$_SERVER["REQUEST_METHOD"] PHPでGET送信かPOST送信かを確認するには「$_SERVER["REQUEST_METHOD"]」を調べます。 使い方 [php] <?php //POST送信かどうか if($_SERVER["REQUEST_METHOD"] == "POST"){ echo "POST送信です…
「PHPでGET送信かPOST送信かを判別する方法」をはてなブックマークに追加

表示中ページの条件分岐

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

WordPressのWP-PageNaviが動かない場合の対処法

2012年02月04日 WordPress
WP-PageNaviは、WordPressでページングを可能にしてくれるプラグインですが、以下のように「query_posts」を指定していると、正常に動かないようです。 WP-PageNaviが正常に動かない例 [php]<?php if ( have_posts() ) : query_posts('cat=1&showposts=5' ); ?> [/php] 上記…
「WordPressのWP-PageNaviが動かない場合の対処法」をはてなブックマークに追加

WordPress ソースコードを整形する SyntaxHighlighter

2011年05月27日 WordPress
SyntaxHighlighter Evolved を入れてみました。WordPress バージョン3.xx(調べるのメンドイ)ですが、ん~~すんなり動きませんでした。 デフォルトでは、コードを表示するにはしてくれるのですが、ソースをコピーなどのボタンが表示されない状態でした。 テンプレートの関係などあるのかなと思い、複数のテンプレートでも試しましたが、変化なしでした。 いろいろ調べました&…
「WordPress ソースコードを整形する SyntaxHighlighter」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy