Wordpress: добавить настраиваемое поле прямо над полем ввода заголовка (без модификации основных файлов)? - PullRequest
4 голосов
/ 02 сентября 2010

Кто-нибудь знает, как добавить поле ввода (или любой другой тип html) непосредственно над (или под) полем ввода заголовка на странице редактирования сообщения?

Я ищу способ сделать это без изменения основных файлов (я делаю это как часть плагина, который создает пользовательский тип записи).

Мне не известны какие-либо доступные перехватчики wp в этой области файла edit-form-advanced.php , которые могли бы помочь. Я действительно надеюсь, что некоторые из них придумали гениальное обходное решение!

Ответы [ 2 ]

5 голосов
/ 11 июня 2015

Начиная с версии 3.5 WordPress появились новые хуки для экрана добавления / редактирования сообщений, называемые edit_form_after_title и edit_form_after_editor.Так что теперь я думаю, что мы можем легко добавить новый HTML-элемент после ввода WordPress заголовка и содержимого ввода.

просто используйте фильтр, как это на вашем functions.php

add_action( 'edit_form_after_title', 'my_new_elem_after_title' );
function my_new_elem_after_title() {
    echo '<h2>Your new element after title</h2>';
}

add_action( 'edit_form_after_editor', 'my_new_elem_after_editor' );
function my_new_elem_after_editor() {
    echo '<h2>Your new element after content</h2>';
}
2 голосов
/ 02 сентября 2010

Вы на правильном пути; преследовать точку входа add_action ('admin_head'). То, что вы хотите, может быть сделано с помощью JavaScript + jQuery (который встроен в WP). Чтобы отобразить поле ввода над полем ввода заголовка, сделайте что-то вроде этого:

add_action('admin_head', 'my_admin_head_in_posts');
function my_admin_head_in_posts() {
?>
jQuery('#post').before(
'<div id="id_my_field" class="updated below-h2">' +
'<input type="text" name="my_field" value="lol" />' + 
'</div>'
);
<?php
}

И вы должны увидеть что-то вроде этого: alt text

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...