Перехват панели администратора WordPress для оповещений - PullRequest
0 голосов
/ 05 марта 2010

Как я могу заставить плагин отправлять оповещение на панель инструментов в правом верхнем углу, где обычно может появляться уведомление об обновлении WordPress?

Я думаю, мне нужен какой-то вызов add_filter () или add_action ()в коде плагинов.

1 Ответ

0 голосов
/ 05 марта 2010

Вставьте следующий код в файл functions.php вашей темы или в плагин. Это образец, который вы можете адаптировать и использовать дальше. В этой демонстрации я хотел продемонстрировать, где можно разместить сообщение о том, что пользователю необходимо обновить плагин.

<? function addDashboardAlert() { ?>
<style type="text/css">
.alert {
padding-top:4px;
padding-bottom:6px;
padding-left:302px;
background-color:#ebfbff;
border-bottom:1px solid #CCC;
display:none;
}
</style>
<script type="text/javascript">
$j = jQuery;
$j().ready(function(){ //when page has fully loaded
  $j('h2:contains("Dashboard")').parent().prev().after('<div id="my-plugin-alert" class="alert">X Plugin 2.0 is available. <a href="">Upgrade Now!</a></div>');
  setTimeout("$j('#my-plugin-alert').fadeIn('slow');clearTimeout();",1000);
});
</script>
<? } add_action('admin_head','addDashboardAlert'); ?>

Во-первых, он перехватывает admin_head для вставки некоторого Javascript. В Javascript, поскольку мы знаем, что текущие WordPress включают в себя jQuery, но загружают его с опцией .noConflict (), мы можем присвоить jQuery $ j, чтобы сохранить его в нашем коде. Когда страница полностью загружена, она ищет H2, который содержит «Dashboard», то есть страницу «Dashboard». Затем он немного перемещается по DOM в хороший слот, куда он может вставить предупреждение, а затем добавляет его туда. Он завершается профессиональным вызовом fadeIn ().

...