如何根据 post 设置创建 wordpress 小部件

How to create a wordpress widget based on post settings

我想创建一个 WordPress plugin/widget,我可以通过 Visual Composer 区域(小部件应该是可选的)或简单地作为简码添加到我的 post。

这个小部件的功能是它应该允许我将 post 的设置作为主函数中的参数,这样我就可以根据选择的内容更改小部件的输出post.

例如,我的所有 post 都有类别,如果我选择了某个类别,我想根据该类别更改小部件的输出。

有人知道可以让我开始使用这个的好的样板文件吗?

谢谢

您可以使用 Widget API or the Shortcode API 简码创建自己的小部件。

由于您想根据当前 post 更改显示在您的小部件中的内容,所以在 widget() 方法(该方法将小部件的内容打印在前端)你可以添加你的条件或任何你想在那里打印的东西。

$post 在您的小部件中可用,因此如果您使用自定义字段,您可以使用 get_post_meta() 之类的函数来检索 post 的设置,或者任何其他函数,例如get_the_ID()has_category().

例如:

/**
 * Outputs the content of the widget
 *
 * @param array $args
 * @param array $instance
 */
public function widget( $args, $instance ) {
    if ( has_category( 'books' ) ) {
        echo 'Hey!, I have the Books category!';
    } else {
        echo "Hey... I don't.";
    }
}