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

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

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

1296閲覧

【WordPress(おそらく超難題)】全記事の更新ボタンを自動で押したい

spellbound

総合スコア190

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/07/20 07:58

背景

  • 各記事の更新ボタンを押した時、フックし、callApiBeforePostingという自作のPHPファイルを実行させる仕様になっています(下記のコードで設定)

php

1add_action('publish_post', 'callApiBeforePosting'); 2function callApiBeforePosting() { 3 require_once('../wp-content/themes/travelify/call-api-before-posting.php'); 4}

やりたいこと

⑴ 記事の編集ページで更新ボタンを押す
callApiBeforePostingという自作のPHPファイルを当該記事に対して実行させる
⑶ 記事の更新及び処理が完了

上記のプロセスを全記事でやりたいです。

なぜ実装するのか

全記事(約300記事くらい)に対して手動でその行為を行うと非常に時間が掛かります。
そこで、そのプロセスを自動化したいと思いました。

何かヒントだけでも教えて頂けると幸いです。
もしくは、きっぱり出来ないと伝えて下さるだけでも助かります。
気軽にご回答お願い致します。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

publish_postアクションにフックされた関数を実行することが目的なのであれば、以下のような関数をつくって、それを任意のタイミングでコールすればいいのではないでしょうか。

PHP

1/* 以下のコードは動作確認をしていませんので、ご参考までに。 */ 2function teratail85024() 3{ 4 $myposts = get_posts('posts_per_page=-1'); 5 foreach($myposts as $mypost) : 6 do_action('publish_post', $mypost->ID, $mypost); 7 endforeach; 8}

投稿2017/07/20 12:00

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

spellbound

2017/07/21 12:05

まさかコードで実装できるとは思っていませんでした。 ありがとうございます!!
guest

0

Seleniumを活用すればできそうかな。

・記事一覧URLの取得
⇒記事一覧を取得するのは簡単そう

・取得した記事一覧URLにアクセスし、更新ボタンを押す
⇒Seleniumで行けそう

投稿2017/07/20 08:13

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

spellbound

2017/07/20 08:15

記事一覧のURLは簡単に取れます。 Selenium...知らなかったです! 調べてみます、ありがとうございます!
moonphase

2017/07/20 08:21

普通のドライバを使うとWebブラウザが起動してしまいますので、ヘッドレスというモードで動かすのがいいです。そうすれば、ブラウザが起動せずに動いてくれます。 http://qiita.com/orangain/items/db4594113c04e8801aad こちら参考になさってください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問