web-dev-qa-db-ja.com

wp_handle_upload内からファイルアップグレードの起点を見つける方法は?

私は "wp_handle_upload"フィルタにフックするプラグインを持っています。その範囲内で、私はアップロードがどこから来たのかを識別できるようにしたいと思います。テンプレートのヘッダー画像).

私の関数に渡される唯一のものは、file、url、typeの配列です。どこから来たのかを特定する方法はありますか?

私はおそらく例外を作成し、スタックトレースを調べることができました、それはまともな解決策ですか?もしそうなら、私はスタックで何を探しているのでしょうか?

ありがとうございます。

1
Jason

私はそれがwordpressのapiの一部ではないので私は本当に好きではないフォームのパラメータを見て、それを把握することができました。誰かがもっと良いアイディアを持っているなら、コメントを残してください。

$_REQUEST['post_id'] > 0 // it's being uploaded from a page/post
$_REQUEST['post_id'] == 0 // it's being uploaded from the media library
empty($_REQUEST['post_id']) // it came from somewhere else (plugin, theme, etc)

投稿やライブラリにとっては信頼できるようですが、プラグインやテーマがパラメータを追加して他のタイプの1つであると考えさせる可能性があるため、 "other"はおそらく100%信頼できるものではありません。

1
Jason