LoginSignup
8

More than 5 years have passed since last update.

WordpressでXML-RPCを利用した記事投稿用ライブラリをPHPで作った(サムネイル付)

Last updated at Posted at 2016-11-23

だれか作っている人いるかなと思ったのですが、意外にもいなかった(探せなかった)ので、自分が使っていたWordpressへ自動投稿するスクリプトを切り出して、記事投稿用ライブラリを作ってみました。

Wordpress記事投稿プログラムって何が良いの?

普通に自分の知見を書く分には、記事投稿プログラムは全く使う場面はありません。

例えばアフィリエイトサイトを作る際に、AmazonAPIなどと組み合わせて使う事によって、自動で記事が生成され、苦労せずページ数を増やすことが出来ます。(もちろんGoogleに評価されるためには工夫は必要ですが。)

他のライブラリと何が違うの?

あまり記事投稿用ライブラリを見たことがありませんが、主にカテゴリ投稿やサムネイル投稿が簡単に出来ることが挙げられます。

インストール方法

packagistに登録したので、composerで簡単にインストールできます。

composer.json
{
    "require": {
       "yuzuru-s/post-to-wp": "1.0.*"
    }
}
composer install

これでインストール完了です。

使い方

以下がサンプルプログラムになります。

<?php
require __DIR__ . '/vendor/autoload.php';
use YuzuruS\Wordpress\Post;

$wp = new Post('wordpress_user_name', 'wordpress_passwd', 'example.com');

// カテゴリ事前登録
$res = $wp->makeCategories([
    ['name' => 'かて1', 'slug' => 'cate1'],
    ['name' => 'かて2', 'slug' => 'cate2'],
]);

// 記事投稿
$wp
    ->setTitle('たいとる')
    ->setDescription('本文')
    ->setKeywords(['key1','key2'])
    ->setCategories(['かて1','かて2'])
    ->setDate('2016-11-11')
    ->setWpSlug('entry')
    ->setThumbnail('https://www.pakutaso.com/shared/img/thumb/SAYA160312500I9A3721_TP_V.jpg')
    ->post();
  1. 自身のwordpressで設定したID,PASSWORD,サイトのドメインを設定
  2. 設定したいカテゴリを事前登録。記事投稿時に存在しないカテゴリを登録された場合、「未分類」とされてしまいます。
  3. タイトル、本文、キーワード(あれば)、カテゴリ(あれば)、投稿日(省略すれば現在時刻)、設定したいサムネイルURL(あれば)をメソッドチェーンで設定しpostする。

これだけで、ご自身のwordpressに記事が投稿されます。

まとめ

手前味噌ですが、私が作ったマルコフ連鎖ライブラリを組み合わせて使うと幸せになるかもしれません。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8