質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.87%

複数のWordPressの記事を一元管理したい

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 136

gzrita

score 223

現状と実現したい内容について

WordPressで構築された複数のウェブサイトを運営しております。

内訳としては、メインとなるコーポレートサイト(以下、親サイト)と、
その子会社のようなサイト(以下、子サイト)が複数といったかたちで、
すべて別のドメインですが、サーバーは共通のものを使用しています。

また、〈親サイト〉および、それぞれの〈子サイト〉にはブログを設けており、
〈親サイト〉では、〈親サイト〉自身に加え〈子サイト〉含む全サイトの記事が閲覧できますが、
〈子サイト〉では、その〈子サイト〉自身の記事のみが閲覧できます。

そのため更新の際、現状は〈親サイト〉と〈子サイト〉それぞれの管理画面より別途投稿を行っている状況です。

しかし今回、なるべく編集者が作業しやすいよう、
記事を〈親サイト〉にて一元管理できないかという話がのぼりました。

試したことと課題点

■プラグインの活用

まず、MainWPなどのプラグインを複数試してみたのですが、うまく動作しなかったり、
カスタム投稿タイプへの対応が有料だったりするということで、保留とすることとなりました。

■WP REST API v2の活用

次に、実現のためには〈親サイト〉更新の際に〈子サイト〉が自動で更新されることが一番自然に感じたため、
WP REST API v2を活用し〈親サイト〉にて記事更新時のアクションフックtransition_post_statusが動作した際、同一の記事を対応する〈子サイト〉へ投稿するようテストしました。

しかし、transition_post_statusではカスタムフィールドの値などをうまく取得できなかったことと、
画像の投稿方法および、あとから記事編集を行った際などの対応方法がわからず頓挫しております。

お伺いしたいこと

  • ひとつのWordPress管理画面で複数のWordPressを管理したいです。
  • 各WordPressは最新版で、別ドメイン・同サーバーにて管理しています。
  • 管理を行いたいのは投稿のみで、各種設定やユーザー管理等はサイトごとに別途管理しています。
  • 投稿の際に設定したタグによって、対応する〈子サイト〉に反映されるような動きを考えています。

この様な、記事の一元管理の実現について、何か解決策はございますでしょうか。

もちろんアイデアなどでも構いませんので、よろしければアドバイス頂けますと幸いです。
私の力不足で大変ご迷惑をおかけいたしますが、よろしくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

+1

画像の投稿方法

画像の投稿方法↓。多分これ以外にも探せばでてくると思います。先にメディアに画像を登録してから、記事の投稿をします。

【WordPressのWP REST APIで画像をアップロード - Qiita】
https://qiita.com/wktq/items/9edbebe5cac0d52b2adb

【ワードプレス(WordPress)のRestAPIでアイキャッチ画像をアップロードする|茶トラネコ日記】
https://itneko.com/wp-eyecatch/


あとから記事編集を行った際などの対応方法がわからず頓挫しております。 

子サイトへの投稿をした結果(小サイト上でのpost_id)をその記事のカスタムフィールドにでも保存しておいて、編集時に子サイトを編集すればよいです。


transition_post_statusではカスタムフィールドの値などをうまく取得できなかった

$_POSTの値を確認する方法も有りますが、transition_post_statusでwp_schedule_single_event を設定して保存の工程が全て終わってから処理するとか。

【wp_schedule_single_event – WordPress私的マニュアル】
https://elearn.jp/wpman/function/wp_schedule_single_event.html


WordPress には WP REST API 以外に XML-RPC での更新も可能なので、それを使う手もあります。
(検索ワード次第では「セキュリティのために XML-RPC を無効にする」しかでてこない可能性も有りますので「WordPress XML-RPC wp.newPost」くらいで検索するのがお勧め)

【xml rpc - Attach image to post in Wordpress XMLRPC - Stack Overflow】
https://stackoverflow.com/questions/17722743/attach-image-to-post-in-wordpress-xmlrpc/17791287

【WordPressのXML-RPCでwp_optionsを操作する | work.log】
https://worklog.be/archives/2614

【XML-RPCとPHPでWordPressに投稿する | JProgramer】
https://jprogramer.com/wordpress/3775

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.87%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる