私はWP用のオーディオプレーヤープラグインをダウンロードしました。構文はとても単純です。ポストエディタ/抜粋に[audio:my_file.mp3]
という行を追加して、ループ内でそれをそれぞれthe_content()
またはthe_excerpt()
で呼び出します。
ユーザーがファイルをアップロードするメタボックスを構築したいと思います。それに応じてプラグイン構文が自動的に生成されます。メタデータをDBに挿入する方法は知っていますが、get_post_meta()
またはthe_meta()
で引っ張っても、目的のプラグインコンテンツ(オーディオプレーヤーなど)に置き換えることなく、そのまま構文を取得できます。
私はフィルタdefault_content
を使ってエディタ/抜粋に構文を動的にインジェクトすることを考えましたが、このフィルタは通常の投稿にのみ適用されますが、mineはカスタム投稿タイプ(オーディオ)です。あなたのアイディアは大歓迎です。
カスタムTinyMCEボタンのように聞こえるのが仕事の理想的な候補でしょう。
WordPressのコーデックスでは、作成方法に関する優れた記事 を作成しています 。あなたは本質的にあなた自身のコールバックでTinyMCEツールバーにボタンを追加するでしょう、それはオーディオファイルを選択してそして自動的にショートコードを挿入するためにモーダルポップアップを引き起こすことができます。
同様に、アップロードされたメディアアイテムの出力にフックして、そのアイテムのショートコードを投稿にリンクするリンクを表示することもできます(Thickboxポップアップ内にアップロードされた場合)。 。
利用可能なフックとフィルタについてはwp-admin/includes/media.php
のget_media_item()
とget_attachment_fields_to_edit()
を調べてください。