WordPress自定义小部件 - 模板标签输出错误的地方

时间:2011-05-12 21:05:25

标签: wordpress

我正在尝试编写一个简单的自定义小部件,允许用户注册特殊优惠。因此,对于我的表单的“动作”,我希望它读取action =“bloginfo('template_directory')。'/ theme / php / handler.php'”但每次我引用bloginfo标记时,输出都会被抛出小部件<li>

示例位于http://shineaz.com - 底部的右侧边栏。

这是我的功能小部件():

function widget($args, $instance) {
    // outputs the content of the widget
    extract( $args, EXTR_SKIP);
    $args['title'] = isset($instance['title']) ? $instance['title'] : 'Sign up for Special Offers';

    echo $before_widget;
    echo $before_title . $args['title'] . $after_title;
    echo '<form id="special_offers" method="post" action="' . bloginfo('template_directory') . '/custom/php/special-offer-handler.php">
        </form>';
    echo $after_widget;
}

由于

1 个答案:

答案 0 :(得分:0)

您应该更改它以返回值,而不是echo:

function widget($args, $instance) {
// outputs the content of the widget
extract( $args, EXTR_SKIP);
$args['title'] = isset($instance['title']) ? $instance['title'] : 'Sign up for Special Offers';

return $before_widget;
return $before_title . $args['title'] . $after_title;
return '<form id="special_offers" method="post" action="' . bloginfo('template_directory') . '/custom/php/special-offer-handler.php">
    </form>';
return $after_widget;
}

然后使用echo widget();来回显模板中的小部件