WordPress仪表板上的自定义内容
Posted
技术标签:
【中文标题】WordPress仪表板上的自定义内容【英文标题】:Custom Content on WordPress Dashboard 【发布时间】:2012-08-01 01:43:21 【问题描述】:我正在尝试找出将自定义内容添加到将在我的管理面板中定义的 wordpress 仪表板的最佳方法。
所以基本上我会让我的管理员帐户能够设置某些设置,而其他用户(订阅者、编辑者等)在登录时会看到自定义仪表板(管理员也会看到) .
到目前为止,我已经清除了整个仪表板,并且知道如何向其中添加小部件,但我正在尝试添加自定义 html(没有小部件框)。
有什么建议/想法吗?我希望得到一些帮助,谢谢!
【问题讨论】:
这样的工作是否可行,或者您是否对学习使用 php API 自定义仪表板更感兴趣? wordpress.org/extend/plugins/adminimize 我从 adminimize 为我的插件使用了几个想法,这是一个很好的开始。但我希望用户能够在仪表板上基本上有 4 个部分,这些部分可以是自定义 html,也可以是他们可以简单地输入一些信息并为他们生成“部分”的东西。 【参考方案1】:也许您可以简单地在您的 functions.php
中添加一个自定义函数,其中包含您的特定 HTML 内容,如下所示:
/* add content */
function customContent()
echo '<div><p>Custom Lorem Ipsum Content</p></div>';
/* add action */
add_action('load-index.php', 'customContent');
在这种情况下,您将在仪表板的管理栏下向所有用户显示一些 customContent。但是现在做造型将是相当多的工作。那么为什么不使用具有其功能的普通 customDashboardWidgets 并重置样式呢?
/* add content */
function customContent()
echo '<div><p>Custom Lorem Ipsum Content</p></div>';
/* add widget */
function add_customDashboardWidget()
wp_add_dashboard_widget('wp_dashboard_widget', 'Custom Content', 'customContent');
/* add action */
add_action('wp_dashboard_setup', 'add_customDashboardWidget' );
最后你可以做一些样式:
<style type="text/css">
.postbox,
.postbox div.handlediv,
.postbox h3.hndle
background: none;
border: none;
</style>
注意:如果在 functions.php
中插入样式,请确保在 CSS 之前/之后正确关闭/打开 PHP 标记
【讨论】:
这很棒。它完美地工作。但是如何在其中指定用户角色?我有 LearnDash 插件,它创建了一个新角色(即讲师),我希望这个角色只能看到小部件。请问可以为此编辑您的代码吗?【参考方案2】:以下功能将从您的仪表板中删除一些不需要的框。它还添加了一个名为“帮助和支持”的自定义框。您可以将任何 html 添加到此部分。
将以下代码添加到您的functions.php
//Remove unwanted boxes and Add a custom widget called 'Help and Support
function my_custom_dashboard_widgets()
global $wp_meta_boxes;
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
wp_add_dashboard_widget('custom_help_widget', 'Themes: Help and Support', 'custom_dashboard_help');
function custom_dashboard_help()
echo '<p>Support: <a href="#" target="_blank">Support Forum</a><i> (For members only).</i><p><p>Wants to customize your theme by our WordPress Experts? <a href="#" target="_blank">Customize my theme</a> <i>(Our wp Experts will do it for you!)</i></p>';
希望对你有帮助。
【讨论】:
我已经掌握了大部分内容,目前正在尝试找出不使用仪表板小部件的解决方案。基本上,我想要一些可以让你通过插件 100% 自定义仪表板的东西。所以如果你想要一张彩虹的图片,你可以将它设置在一个 HTML 框中,它就会出现(不在小部件或任何字段中,只是空白的 HTML)。有什么想法吗?以上是关于WordPress仪表板上的自定义内容的主要内容,如果未能解决你的问题,请参考以下文章
在 thingsboard 上的自定义控件小部件仪表板上显示 thingsboard 设备属性最新值