WPダッシュボードにバナーを追加する方法はありますか?カスタムウィジェットなどではなく、単純な画像バナーだけを意味します。
JQuery DOM挿入を使用した回避策.
スクリプトを印刷するためのPHP Heredoc sintax の使用に注意してください。 )
function wpse_53035_script_enqueuer(){
echo <<<HTML
<script type="text/javascript">
jQuery(document).ready( function($) {
$('<div style="width:100%;text-align:center;"><img src="http://cdn.sstatic.net/wordpress/img/logo.png?v=123"></div>').insertBefore('#welcome-panel');
});
</script>
HTML;
}
add_action('admin_head-index.php', 'wpse_53035_script_enqueuer');
これは、新しいdivを#welcome-panel
の前の一番上に挿入します。 div #dashboard-widgets-wrap
を使用すると、同じ位置(<h2>Dashboard</h2>
の後とウィジェットの前)に出力されます。
ウェルカムパネルは通常隠れていますが、その一般的な振る舞いについてはよくわかりません。これはあなたのテスト次第だと思います。
[編集]
実際のところ、ページを調べて好きなところに挿入するだけです。
[編集2]
コードで遊んでいます...
次のバージョンはウィジェットのラップをフェードインします。また、imageタグの幅と高さも追加されているため、画像が最後に読み込まれたときに他の要素が "ジャンプ"することはありません。
function wpse_53035_script_enqueuer(){
echo <<<HTML
<style type="text/css">#dashboard-widgets-wrap {display:none;}</style>
<script type="text/javascript">
jQuery(document).ready( function($) {
$('#dashboard-widgets-wrap').delay(1200).fadeTo('slow',1);
$('<div style="width:100%;text-align:center;margin:8px 0"><img src="http://cdn.sstatic.net/wordpress/img/logo.png?v=123" width="483" height="43"></div>').insertBefore('#dashboard-widgets-wrap');
});
</script>
HTML;
}
add_action('admin_head-index.php', 'wpse_53035_script_enqueuer');
admin_head
アクションにフックして、wpbody-content
というIDで背景画像をdiv
に添付するためのカスタムCSSを含めることができます。
http://codex.wordpress.org/Plugin_API/Action_Reference/admin_head-%28plugin_page%29