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

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

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

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

PHP

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

0回答

300閲覧

WordPressで「wp.media」が「is undefined」になってしまう

moimoimoi

総合スコア16

WordPress

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

PHP

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

1クリップ

投稿2019/02/19 08:32

前提・実現したいこと

WordPress初心者です。
メディアアップローダーに独自のタブを追加するために、JSで「wp.media」を使えるようにしたいです。
解決策のご指南をよろしくお願い致します。

発生している問題・エラーメッセージ

consoleに下記エラーです。

TypeError: wp.media is undefined

該当のソースコード

1行目のwp.mediaで上のエラーになります。

js

1var l10n = wp.media.view.l10n; 2wp.media.view.MediaFrame.Select.prototype.browseRouter = function( routerView ) { 3 routerView.set({ 4 upload: { 5 text: l10n.uploadFilesTitle, 6 priority: 60 7 }, 8 browse: { 9 text: l10n.mediaLibraryTitle, 10 priority: 40 11 }, 12 my_tab: { 13 text: "New Tab", 14 priority: 20 15 } 16 }); 17};

試したこと

functions.phpに下記を書いているのですが、これでは「wp.media」は使えないのでしょうか?

php

1function my_media_script(){ 2 wp_enqueue_media(); 3} 4add_action( 'wp_enqueue_scripts', 'my_media_script' );

またはこのようなフックも試してみたのですが、やはりエラーは変わりません。

php

1function my_media_script(){ 2 wp_enqueue_media(); 3} 4add_action( 'admin_enqueue_scripts', 'my_media_script' );

他に必要なものはあるのでしょうか?

もし必要なコードは上で足りているのであれば、原因を探すために必要な作業はどのようなものになりますか?

初心者なので基本的な面が不足しているかもしれませんが、ありがちな失敗談など皆様のご経験を踏まえてお聞かせ願えませんでしょうか。

補足情報(FW/ツールのバージョンなど)

バージョン:WordPress 5.0.3(最新)
使用テーマ:Twentyfifteen(最新)

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問