カスタム投稿タイプを作成しました。エディタページのタイトルの下とテキストエディタの上にテキストを表示します。これどうやってするの?
Add_meta_boxを使ってみましたが、エディタの上に移動できませんでした。
最善の方法は、JavaScriptを使用して要素を注入することです。
そのページのマークアップの要旨は次のとおりです。
<div id="poststuff">
<div id="post-body" class="metabox-holder columns-2">
<div id="post-body-content">
<div id="titlediv">
... other stuff ...
</div>
<div id="postdivrich" class="postarea">
... other stuff ...
</div>
</div>
</div>
</div>
titlediv
はタイトルです。 postdivrich
はコンテンツエディタです。あなたは何かを の間に挿入したいです それら。 jQueryを使うと、これはとても簡単です。 titlediv
の後にマークアップを挿入するように言うだけです。
jQuery(function($) {
var text_to_insert = "This is some text you'll throw between the title and editor.";
$('<p>' + text_to_insert + '</p>').insertAfter('#titlediv')
});
これは私のサイトでその正確なコードを使った結果です。
投稿の追加/編集画面用の新しいフック: edit_form_after_title
add_action( 'edit_form_after_title', 'myprefix_edit_form_after_title' );
function myprefix_edit_form_after_title() {
echo '<h2>This is edit_form_after_title!</h2>';
}
この問題を抱えている人は誰でも、この投稿をチェックしてください。 編集画面のその他のフック 新しいネイティブWordpressフックによってカスタムコンテンツを挿入できます。
@DrMoskoの回答に記載されているとおりに使用します。
Custom Meta Box を追加して、その中に自分たちのことをします。
いくつかのフックがあります それは not メタボックスで、管理ページにコンテンツを挿入するために使用できます。
add_action( 'edit_form_top', function( $post )
{
echo '<h1 style="color:red">edit_form_top</h1>';
});
add_action( 'edit_form_after_title', function( $post )
{
echo '<h1 style="color:red">edit_form_after_title</h1>';
});
add_action( 'edit_form_after_editor', function( $post )
{
echo '<h1 style="color:red">edit_form_after_editor</h1>';
});
add_action( 'edit_page_form', function( $post )
{
// edit_page_form is ONLY for pages, the other is for the rest of post types
echo '<h1 style="color:red">edit_page_form/edit_form_advanced</h1>';
});
add_action( 'dbx_post_sidebar', function( $post )
{
echo '<h1 style="color:red">dbx_post_sidebar</h1>';
});