getID3() に対する Wordpress の 3.6 サポートを利用しようとしていますが、MP3 に ID3 タグを書き込むのに問題があります。私が使用しているコードは次のとおりです。
if ( ! class_exists( 'getID3' ) ) {
require(ABSPATH.WPINC.'/ID3/getid3.php' );
}
# I had to custom install the write library because WP doesn't include it by default, evidently
getid3_lib::IncludeDependency(TEMPLATEPATH.'/lib/getid3/write.php', __FILE__);
$testfile = "/Users/jplew/Sites/dev.example.com/content/uploads/mp3.mp3";
$tagwriter = new getid3_writetags;
$tagwriter->filename = $testfile;
$tagwriter->tagformats = array('id3v2.4');
$TagData['title'][] = 'My Heart Will Go On';
$TagData['artist'][] = 'Celine Dion';
$TagData['genre'][] = '90s Classics';
$tagwriter->tag_data = $TagData;
if ($tagwriter->WriteTags()) {
echo 'success';
} else {
echo 'failure';
}
私は一貫して「失敗」しています。getid3_writetags
関数へのパスは問題ありません。print_r($tagwriter);
Iを指定すると、すべての配列が出力されるため、これを知っています。ただし、「警告」配列と「エラー」配列は両方とも空です。
さらに、次のことを行うと、すべての正しいタグ情報が正常に返されます。
$data = $getid3->analyze( $testfile );
print_r($data)
demo.write.php
また、デモに含まれているものも実行すると失敗することに注意してください。それはstarting to write tag(s)
止まるところまで行きます。
何か案は?getid3.org フォーラムに投稿したいのですが、私の IP はブラックリストに登録されています。:(