! Запросто с WordPress - доступная ручная работа по правилам оптимального интернета
...здесь Ваша реклама.?.
Здравствуйте !
написано: — 
отредактировано: 2018-09-13
издатель:  в теме: Контент, шапка site: кодингS реплики: будьте первым в диалоге
 
Запросто с WordPress - студия ATs media fashion Reception WordPress golden

Добавим в текстовый редактор пояснительные сообщения для авторов — управление из админки

На днях на одном из моих подопечных сайтов, который администрирую, реализовал одну в общем-то полезную штуку, о которой меня просили админы…

Дело в следующем: прежде всего доложу, что описанная в статье, так сказать — фичя, возможно, потребуется тем владельцам сайтов, у которых на сайте трудятся авторы. Это замечательно! Однако, не все эти авторы так запросто владеют текстовым редактором — попросту совершают массу ошибок, на исправления которых уходит масса времени. Так вот, чтобы сэкономить уйму полезного времени, как раз и нацелена задача сей статьи.

В итоге у нас в админке — в текстовом редакторе, при редактировании статьи появится некая пояснительная записка главного администратора. Что возможно поместить в это сообщение, ограничено только нашей фантазией — даже видео!! Управление — набор сообщения из админки!..

Что жж, добавим в текстовый редактор раздел для пояснительных сообщений администрации:


 

 

 

обогатим текстовый редактор пояснительным разделом для авторов

 

 

 

На скриншоте ниже видно, где примерно будет располагаться сообщение: кстати сказать, подобные, скажем так, памятки для авторов, возможно поместить где угодно, в смысле перед каждым разделом управления текстовым редактором: было бы желание!

 

 

 

памятки в текстовый редактор

 

 

 

Перво-наперво советую создать где-нить в корне шаблона папку my-functionss и в ней файл, ну, скажем, с именем: edit-post-func.php

 

 

 

Как организовать файл функций, или перенести некоторые важные наработки для сайта в плагин (что весьма целесообразнее!!), читайте в этом полезном ПОСТЕ

 

 

 

Не забудьте добавить в functions.php для определения папки и созданного файла такую строку:

 

 

include_once "my-functionss/edit-post-func.php"; // подсказки в текстовом редакторе

 

 

 

В созданный файл поместим такой код, который призван внедрить в текстовый редактор наше сообщение: то есть используем хук edit_form_after_title — если повнимательнее присмотреться к хуку, то по строке достаточно просто понять, где выведется сообщение — … after_title после тайтла, т.е. после заглавия…

 

Хуков для подобных задач очень много, о них ниже по тексту…

 

 

 

 

к оглавлению $

код для вывода в текстовом редакторе сообщения авторам, редакторам…

 

 

 

<?php
// сообщение будет помещено под заглавием статьи
add_action( 'edit_form_after_title', 'callback_ats_edit_form_after_title' );
function callback_ats_edit_form_after_title( $post ) {
if (current_user_can('author') or (current_user_can('editor') or (current_user_can('administrator')))) {
// чтобы видел свои сообщения АДМИН - or (current_user_can('administrator')) = или редактор: editor - автор: author
$als_options = get_option('ats_edit_options');
echo "<div style='margin-top: 10px;padding: 15px;color: #fff;background: #3ab902;clear: both;'>";
echo $als_options['atsy_text_edit'];
echo "</div>" ;
}
}

 

В коде даны кое какие пояснения (если решите модернизировать). Возможно, например, вывести какое-то постоянное сообщение напрямую в коде минуя настройки в админке… через оператор echo.

 

 

 

echo "<div style='margin-top: 7px;padding: 12px;color: #fff;background: #9876aa;clear: both;'>Это моё сообщение <b>edit_form_after_title</b></div>";  // пояснения

 

 

 

Callback — англ. call — вызов, англ. back — обратный — попросту — функция обратного вызова (программирование) Передача исполняемого кода в качестве одного из параметров другого кода: то бишь новый кастомный параметр возможно прицепить к ХУКУ (получится так называемый ХАК))

 

…но это так, к слову — функцию можете называть по своему желанию…

 

 

 

Как вариант, можно сделать вывод сообщения только для админа и авторов — для админа, это для того чтоб контролировать отображение сообщений…

Также возможно помимо прочего сообщения авторам, добавить сообщение только для редакторов… но для этих задач следует немножечко подредактировать данный в статье код.

 

…например, как-нить так добавить условия:

 

 

if (current_user_can('author') or (current_user_can('editor') or (current_user_can('administrator')))) { // administrator для показа и админу, для редактора editor, для авторов author

 

 

 

 

к оглавлению $

код для создания страничек настроек в админке — для организации сообщений авторам

 

 

 

 

Теперь добавим ещё один достаточно длинный, но очень простенький код в созданный файл. Это чудо добавит настройки в админпанель.

 

То есть прямо из админки появится возможность набирать сообщение авторам.

 

Кстати сказать: вывод сообщений возможно настроить по ролям пользователей (в коде даны пояснения) — можно, например, сделать вывод только для авторов (и админа) — редакторы, думается, более продвинутые (об этом говорил чуть выше)…

 

 

 

открыть код

<?php // стартовый php стереть

/**
* Function that adds settings page in the menu
*/
$atss_edit_page = 'edit-ats.php';
// it's part of the URL of the page

add_action('admin_menu', 'ats_edit_options');
function ats_edit_options() {
global $atss_edit_page;
add_options_page( 'Подсказки автору', 'Подсказки автору', 'manage_options', $atss_edit_page, 'edit_option_page'); // в "Пользователях" add_users_page настройки: add_options_page
}
/**
* This return function (Callback)
*/
function edit_option_page(){
global $atss_edit_page;
?><div class="wrap">
<h2>Параметры подсказок авторам по ролям:</h2>
<form method="post" enctype="multipart/form-data" action="options.php">
<?php
settings_fields('ats_edit_options');
do_settings_sections($atss_edit_page);
?>
<p class="submit">
<input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
</p>
</form>
</div>
<?php
}
/************************************************* */
// Create textarea
add_action( 'admin_init', 'ats_edit_settings_textr' );
function ats_edit_settings_textr() {

global $atss_edit_page;

register_setting( 'ats_edit_options', 'ats_edit_options', 'atses_validate_settings' ); // added:
// Added section and
add_settings_section( 'atss_section_edit', '<br />Здравствуйте Админ, редактор..! ...поместите в поле ниже своё сообщение авторам сайта:', '', $atss_edit_page );

$atss_edit_field_params = array(
'type' => 'textarea',
'id' => 'atsy_text_edit',
'desc' => '<br />...если ничего нихотите подсказать автору <span style="font-weight: 700;color: #038900;font-style: italic;">оставьте поле пустым</span>'
);
add_settings_field( 'atsy_texter_field_none', '<br /><br /><br /><br /><br />Введите текст, HTML подсказок:', 'atss_option_display_settings_edit', $atss_edit_page, 'atss_section_edit', $atss_edit_field_params );
}
// textarea function
function atss_option_display_settings_edit($args) {
extract( $args );
$option_name = 'ats_edit_options'; // added:
$o = get_option( $option_name );
switch ( $type ) {
case 'textarea':
$o[$id] = esc_attr( stripslashes($o[$id]) );
$current_user = wp_get_current_user();
echo '' . $current_user->display_name . '&nbsp;&mdash;&nbsp;';
echo 'Ваше сообщение авторам сайтов, например: <br /><span style="font-weight: 700;color: #038900;font-style: italic;"><b>КАКОВ макимальный размер загружаемых картинок, или какое число фотографий возможно использовать в статье и т.п.<br />также возможно добавлять html ссылки на более подробные статьи, либо какие-то административные новости, видеоролики и пр. и пр.</b></span>';
$als_options = get_option('ats_edit_options'); // added: double styles
echo "<br />";
echo "<?php _e('Save Changes') ?>";
echo "<br /><br />";
echo "<textarea placeholder=' Ваше сообщение...' class='code large-text' cols='50' rows='2' type='text' id='$id' name='" . $option_name . "[$id]' >$o[$id]</textarea>";
echo ($desc != '') ? "<br /><br /><span class='description'>$desc</span>" : "";
} }
// fin news textarea function

 

 

 

 

Ну вот в принципе и всё! как только добавите сии коды, всё тут же организуется и для админа (на страничке управления)…

 

 

 

 

пояснительные сообщения для авторов сайта

 

 

 

Сами настройки страницы в административной панели «Настройки» / «Подсказки автору» выглядят так:

 

 

 

настройки сообщений авторам

 

 

 

 

…и для сообщений в текстовом редакторе… — вам останется только протестировать и подстроить опции под себя.

 

 

 

 

к оглавлению $

сообщения авторам в текстовом редакторе — заключение

 

 

 

 

Полезные данные кода:

 

 

В Базе Данных информация хранится в ats_edit_options в таблице wp_options

 

В сериализованном массиве: $als_options = get_option('ats_edit_options');

 

Значение поля textarea — для ввода информации — atsy_text_edit

 

 

 

 

Дополнительные хуки:

 

 

edit_form_top — отработает перед полем ввода заголовка записи

edit_form_before_permalink — отработает после ввода заголовка записи — перед ссылкой записи

edit_form_after_title — отработает после ввода заголовка записи и её постоянной ссылки

 

edit_form_after_editor — отработает после основного поля вывода визуального редактора

submitpage_box (для страниц) и submitpost_box (для произвольных типов записей) — отработает в сайдбаре (виз. редактора)перед выводом метабоксов…

edit_page_form (для страниц) и edit_form_advanced (для других типов записей) — отработает после всех имеющихся метабоксов…

dbx_post_sidebar — отработает после всего контента  — финальный хук для страницы…

 

 

 

 

Эти функциями определим место вывода страницы настроек в административной панели ДЛЯ главного админа сайта:

 

Стартовые функции add_submenu_page() являются add_dashboard_page() — под пунктом меню «Консоль»…

 

…и далее…

add_posts_page() — раздел «Записи»)-

add_media_page() — раздел «Медиафайлы»

add_links_page() — раздел «Ссылки»

add_pages_page() — раздел «Страницы»

add_comments_page() — раздел «Комментарии»

add_theme_page() — раздел «Внешний вид»

add_plugins_page() — раздел «Плагины»

add_users_page() — раздел «Пользователи»

add_management_page() — раздел «Инструменты» — и конечно же add_options_page() — раздел «Настройки», которую я использовал в примере.

 

 

 


подписка feedburner Online консультация по работе c сайтом на WordPress

 

 

 


...А мне остаётся только раскланяться... и пожелать полезной работы в сети

 

 


...город веб мастеров Михалика.ru - запросто с WordPress

 

 

 

Нажатия на кнопочки определяют Ваше высокое гражданское сознание
Удачи в работе и творчестве..!
 ! самое читаемое:
   Как выбрать хостинг — пошаговые инструкции (обзоры 4 хостингов) — нюансы модного ssl сертифицирования   Как добавить свой новый (второй) сайт в Яндекс Директ   Как добавить ссылки на самые комментируемые по времени посты в сайдбар или на страничку   Продвижение контентом или нужно настраивать сайт — валидный код шаблона..?   Убираем циклическую ссылку h1 логотипа на главной странице   Шаблон RealMik 4.0.2 — создать сайт на wordpress с максимальной выгодой для начинающего блогера   Ускоряем сайт: основные кэш и gzip правила .htaccess которые нужно знать   Подключение jQuery библиотеки от CDN Google — рационально!..   Как исключить вывод (выборочно) поста с главной страницы сайта — регулировка в админке   Выведем последние комментарии в любом месте сайта — несколько вариантов   Как перевести сайт на https — сертификат ssl — шифрование   YouTube закроет монетизацию для обывателя… как площадку для заработка на видеороликах   Яндекс ИКС — новый индекс качества сайта, заместо ТИЦ   Санкции вебмастера Яндекс (фатальные ошибки) — предупреждения, или что это?..
↔ перетаскивайте ленту ↔
ещё статьи по теме:

смотреть ещё статьи в теме Контент, шапка site: кодингS
меточная навигация:


Комментарии © 0 к статье: Добавим в текстовый редактор пояснительные сообщения для авторов — управление из админки

Поделитесь соображениями: Ваши мысли очень важны! $ правила комментирования ©

Внимание! Обязательные поля помечены *

  отныне доступен плагин: privacy-policy ©

 необходимо принять правила конфиденциальности и пользовательского соглашения
Яндекс.Метрика
? Skype консультация Skype консультацияЕсли вы выбрали для своего сайта sms WordPress и только-только начинаете изучать панель управления контентом, то этот вариант оnline консультаций — практически по любым вопросам — для вас! Skype олайн