通用 API – 仪表板小部件

我们常常会听到WordPress的仪表板小组件API,那么这个到底是个什么东西呢。了解这个API是用来做什么的,为什么它对你的WordPress站点如此重要,以及如何轻松地添加小组件到你的仪表板。提升你的站点功能。

通用 API – 仪表板小部件

什么是仪表板小部件 API

仪表板小部件API是WordPress提供的一套工具,它让你能够轻松地在仪表板上添加、删除或修改小工具。这非常适合那些想要直接与用户交流的人——不管是展示信息还是让用户执行某些动作。

看看这些例子吧:

  • Jetpack插件:它能在仪表板上添加一个小工具,让你看到网站的访问统计数据,以及最受欢迎的帖子和页面。
  • Seriously Simple Podcasting:这个插件带有Seriously Simple Stats,可以让你查看你的博客统计信息。另外,它还有一个显示Castos新闻的RSS提要小工具——Castos就是开发这个博客插件的公司。

这些API和小工具让你的WordPress仪表板更加强大和个性化,让信息展示和用户互动更加直接和高效。

通用 API – 仪表板小部件

如何使用仪表板小部件 API

从 WordPress 2.7 版开始,仪表板小部件 API 使向 WordPress 管理仪表板添加新小部件变得简单。你需要了解的主要功能是wp_add_dashboard_widget() function。该函数需要多个参数:

  1. $widget_id– 你的小部件的唯一 ID,它也用作小部件 HTML 输出中的 id 属性
  2. $widget_name– 你的小部件的名称
  3. $callback– 将被调用以输出小部件内容的函数。该函数应该回显小部件的内容

此外,您还可以指定一些可选参数。

  1. $control_callback– 一个可选函数,将被调用以输出控件来配置小部件的数据,以及处理控件已提交的任何数据
  2. $callback_args– 将传递给回调函数的可选参数数组
  3. $context– 一个可选字符串,定义小部件将显示的列。默认值为“正常”,但其他选项包括“side”、“column3”和“column4”
  4. $priority– 一个可选字符串,定义上下文中小部件的优先级。默认值为“核心”,但其他选项包括“默认”、“高”和“低”

为了理解它是如何工作的,让我们构建一个示例仪表板小部件

通用 API – 仪表板小部件

添加仪表板小部件

初始设置和输出

首先,在 wp-content/plugins 目录中创建一个新的插件目录和插件 PHP 文件。对于此示例,你可以将其称为wp-learn-dashboard-widgets.

为了使该插件被识别为 WordPress 插件,你需要添加一个插件标头,至少包含一个插件名称值。

与大多数 WordPress API 一样,你将首先挂钩一个操作。在这种情况下,请使用该wp_dashboard_setup 操作,该操作在仪表板初始化时触发。你将在此处添加我们的小部件。

add_action( 'wp_dashboard_setup', 'wp_learn_dashboard_widget' );
function wp_learn_dashboard_widget(){
    wp_add_dashboard_widget(
        'wp_learn_dashboard_widget',
        'Learn WordPress Dashboard Widget',
        'wp_learn_dashboard_widget_callback'
    );
}

function wp_learn_dashboard_widget_callback(){
    echo '<p>Hello, World!</p>';
}

如果你将此代码添加到空插件文件中,激活插件并加载仪表板,你将在仪表板第一列的底部看到你的小部件。

通用 API – 仪表板小部件

你的内容回调函数具有很大的灵活性,只要它回显有效的 HTML。

wp_get_recent_posts() 尝试使用函数将最新帖子的列表添加到你的小部件中。

function wp_learn_dashboard_widget_callback(){
    $args = array(
        'numberposts' => 5,
        'post_status' => 'publish'
    );
    $recent_posts = wp_get_recent_posts( $args );
    echo '<ul>';
    foreach( $recent_posts as $recent ){
        echo '<li><a href="' . get_permalink( $recent['ID'] ) . '">' . $recent['post_title'] . '</a></li>';
    }
    echo '</ul>';
}

添加小部件控件

你还可以添加一些控件来配置您的小部件。假设你想要控制显示的帖子数量。为此,请配置控件回调函数。

添加一个调用的函数wp_learn_dashboard_widget_control()来处理数据。

function wp_learn_dashboard_widget_control(){
    echo '<label>Enter number of posts to display</label>';
    echo '<input type="text" name="wp_learn_dashboard_widget_numberposts"/>';
}

当你刷新仪表板时,似乎没有发生任何事情,但如果你将鼠标悬停在小部件上,你将看到一个显示“配置”的新链接。单击该链接将显示你刚刚创建的表单。

通用 API – 仪表板小部件

现在,你需要更新控件回调来处理表单提交的数据。

保存数据,使用update_option() 函数,该函数会将值存储在选项表中。

function wp_learn_dashboard_widget_control_callback(){
    if (isset($_POST['wp_learn_dashboard_widget_numberposts'])){
        update_option( 'wp_learn_dashboard_widget_numberposts', sanitize_text_field( $_POST['wp_learn_dashboard_widget_numberposts'] ) );
    }
    $number_posts = get_option( 'wp_learn_dashboard_widget_numberposts', 5 );
    echo '<label>Enter number of posts to display</label>';
    echo '<input type="text" name="wp_learn_dashboard_widget_numberposts" value='.$number_posts.' />';
}

然后,你需要返回到内容回调函数并更新数组$args以使用刚刚保存的值。要获取该值,你可以使用该get_option()函数

function wp_learn_dashboard_widget_callback(){
    $numberposts = get_option( 'wp_learn_dashboard_widget_numberposts', 5 );
    $args = array(
        'numberposts' => $numberposts,
        'post_status' => 'publish'
    );
    $recent_posts = wp_get_recent_posts( $args );
    echo '<ul>';
    foreach( $recent_posts as $recent ){
        echo '<li><a href="' . get_permalink( $recent['ID'] ) . '">' . $recent['post_title'] . '</a></li>';
    }
    echo '</ul>';
}

结论

有关使用仪表板小部件的更多信息,包括如何使用可选回调参数、上下文和优先级参数的示例,请查看developer.wordpress.org 上的仪表板小部件 API 部分


联系我们
文章看不懂?联系我们为您免费解答!免费助力个人,小企站点!
电话:020-2206-9892
QQ咨询:1025174874
邮件:info@361sale.com
工作时间:周一至周五,9:30-18:30,节假日休息
发布者:光子波动,转转请注明出处:https://www.361sale.com/6842/

(2)
上一篇 2024年 3月 30日 上午10:06
下一篇 2024年 3月 30日 上午11:32

相关推荐

  • 解决WordPress安装后出现的500错误的方法

    WordPress是一个常用的工具,让人们能够方便地搭建自己的网站或博客。但有时候,在安装WordPress后,你可能会遇到一个头疼的问题——500内部服务器错误。这个错误意味着服务器在处理你的请求时出了一点问题,不能正确响应。那怎么办呢?别担心,这个错误有很多可能的原因,下面我们会给你一些常见的解决办法,帮你找到问题的根源并解决它,让你的WordPress…

    2024年 4月 16日 WordPress自学建站
    005
  • WordPress网站发布指南:如何发布产品、视频、案例和下载资料

    B2B企业一旦买好域名和服务器,接下来的步骤就是安装WordPress和启用模板,这样第一阶段的工作基本上就完成了。紧接着的任务是整理并发布内容,包括文章、产品、视频、案例和下载资料等。这些内容对于B2B企业在搜索引擎优化(SEO)和关键词排名上起着重要的作用。 但是,WordPress默认的内容管理系统只支持页面和文章,并不直接支持产品、视频、案例、下载资…

    2024年 3月 22日 WordPress自学建站
    0042
  • WordPress网站添加百度统计的手把手教学

    网站开发人员和数字营销专家都知道,使用分析工具来监测他们的网站是非常重要的,这有助于他们提升网站性能。虽然大家都知道并常用Google Analytics,但是对于在中国运营的网站来说,添加百度分析(也称为百度统计)会带来许多额外的好处。 自2009年推出以来,百度分析已被中国超过700万个网站采用。如果您已经使用过Google Analytics,那么您会…

    2024年 3月 22日 WordPress自学建站
    0088
  • WordPress 未登录用户(游客)只显示文章中一张图片 用于引导用户注册

    有的时候我们发布文件,会添加多个图片,但是怎么让未登录用户(游客)只能看到一张图片呢?用户登录后,可看到文章内所有的图片。那本文就介绍以下,修改文件代码,达到这个效果,从而可以引导用户注册。 第一步,在主题文件夹下的funtions.php(路径 /wp-content/themes/你的主题名/funtions.php)文件里添加以下代码(文件末尾) 第二…

    2024年 4月 16日
    0013
  • 如何在 WordPress 中创建“粘性”浮动页脚栏

    你是否正在寻找一种在 WordPress 中创建粘性浮动页脚栏的方法呢? 即使用户滚动浏览页面,粘性浮动页脚栏也会一直显示在网站底部。这样,你可以利用它来推广优惠活动或社交媒体账号,吸引用户停留更久,提高转化率。接下来,我们会一步步教你如何在WordPress上轻松创建一个这样的粘性浮动页脚栏。 WordPress 中的浮动页脚栏是什么? 粘性浮动页脚栏可让…

    2024年 4月 17日 WordPress自学建站
    006

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

联系我们

020-2206-9892

QQ咨询:1025174874

邮件:info@361sale.com

工作时间:周一至周五,9:30-18:30,节假日休息

客服微信