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

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

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

WooCommerceは、2011年にリリースされたWordPressのためのECプラグインです。ECサイトに必要な一連の機能を簡単に導入できる上、柔軟なカスタマイズをすることも可能です。

WordPress

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

PHP

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

Q&A

解決済

1回答

800閲覧

【WordPress】添付ファイル(mp4データ)のIDを指定して、その動画ファイルの横幅と高さを取得したい

bokupiroki

総合スコア54

WooCommerce

WooCommerceは、2011年にリリースされたWordPressのためのECプラグインです。ECサイトに必要な一連の機能を簡単に導入できる上、柔軟なカスタマイズをすることも可能です。

WordPress

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

PHP

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

0グッド

0クリップ

投稿2020/02/13 06:24

###実現したいこと・前提条件

  • WordPressの「メディア」上に存在するビデオファイル(mp4データ)のIDを指定して、メタ情報を出力したい(本例ではID420)
  • 具体的には、動画ファイルの横幅と高さを取得したい
  • メディアファイルのURLを含んだ「video要素」を生成して、そこから横幅と高さを抽出する方法は訳合って使えない

###試したこと
例えば、下記のようにすれば、動画ファイルの再生時間(長さ)を取得することはできました。

php

1$video_meta = get_post_meta( '420' , '_wp_attachment_metadata', true ); 2echo $video_meta['length_formatted'];

同じような要領で、動画ファイルの「横幅」や「高さ」を取得する方法はないでしょうか?

例えばこれが単に、「アイキャッチ画像のIDを指定して元ファイルの幅と高さを取得する」などであれば
「wp_get_attachment_image_src」をという関数?を使えば実現できます。

参考サイト:
https://kotori-blog.com/wordpress/eyecatch_info/

しかし今回は「動画ファイル」です。
そもそもWordPressの動画のメタ情報に、「横幅」や「高さ」が定義されているのかもよくわかりません。

本来はvideoタグでプレーヤーを生成して、そこからjavascriptで動画の高さや横幅を抽出すべきかとは思うのですが、
訳があってWordPressの関数などでどうにかできないか検討しております。

###補足情報(FW/ツールのバージョンなど)
WordPress5.3.2
woocommerce3.8.1

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

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

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

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

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

guest

回答1

0

ベストアンサー

とりあえず内容物が有るか確認してみては。

PHP

1var_dump( $video_meta );

投稿2020/02/13 14:05

kei344

総合スコア69366

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

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

bokupiroki

2020/02/13 15:20 編集

できました! 最終的なコード --- $video_meta = get_post_meta( '420' , '_wp_attachment_metadata', true ); //添付ファイルのIDよりメタデータを取得 echo '解像度:'. $video_meta['width'].'x'.$file_meta['height'].'p'; //取得したメタデータから高さと横幅を出力 --- そもそも配列の中身をどうやって一覧するかがわからなかったので助かりました。 「var_dump」、今後も使います。 ちなみに今回のvar_dump実行結果は下記でした。 --- array(10) { ["filesize"]=> int(266069) ["mime_type"]=> string(9) "video/mp4" ["length"]=> int(13) ["length_formatted"]=> string(4) "0:13" ["width"]=> int(1920) ["height"]=> int(1080) ["fileformat"]=> string(3) "mp4" ["dataformat"]=> string(9) "quicktime" ["audio"]=> array(7) { ["dataformat"]=> string(3) "mp4" ["codec"]=> string(19) "ISO/IEC 14496-3 AAC" ["sample_rate"]=> float(44100) ["channels"]=> int(2) ["bits_per_sample"]=> int(16) ["lossless"]=> bool(false) ["channelmode"]=> string(6) "stereo" } ["created_timestamp"]=> int(-2082844800) } --- ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問