在该主题的函数.php文件中添加html链接

时间:2021-11-05 作者:Stéphane Dumas

我使用的选项是,人们需要有一个帐户才能结账。因此,签出页面被阻止。此时,您将收到消息“您必须登录才能结账”。

为了提高客户不必搜索单击下一步的位置,我想添加额外的超链接文本。

我发现这段代码工作得很好,但HTML在“我的消息”区域中不起作用。

function filter_woocommerce_checkout_must_be_logged_in_message( $message ) {
    $message = \'MY MESSAGE\';
    return $message; 
}
add_filter( \'woocommerce_checkout_must_be_logged_in_message\', \'filter_woocommerce_checkout_must_be_logged_in_message\', 10, 1 );
到目前为止,我已经做到了这一点,但html在我这方面还没有发挥作用。

function filter_woocommerce_checkout_must_be_logged_in_message( $message ) {
    $message = \'<span>You must be <a href="#"logged in</a></span>\';
    return $message; 
}
add_filter( \'woocommerce_checkout_must_be_logged_in_message\', \'filter_woocommerce_checkout_must_be_logged_in_message\', 10, 1 );

1 个回复
SO网友:Michelle

您缺少开始链接的结束标记(<a>) 标记,尝试:

function filter_woocommerce_checkout_must_be_logged_in_message( $message ) {
    $message = \'<span>You must be <a href="#">logged in</a></span>\';
    return $message; 
}
add_filter( \'woocommerce_checkout_must_be_logged_in_message\', \'filter_woocommerce_checkout_must_be_logged_in_message\', 10, 1 );
(如果需要,您也可以直接在此处弹出登录表单,而不是关闭链接):

function filter_woocommerce_checkout_must_be_logged_in_message( $message ) {
        $login_form = wp_login_form( [ \'echo\' => false ] );
        $message = \'<p>You must be logged in:</p>\';
        $message .= $login_form;
        return $message; 
    }
    add_filter( \'woocommerce_checkout_must_be_logged_in_message\', \'filter_woocommerce_checkout_must_be_logged_in_message\', 10, 1 );

相关推荐

从SANITIZE_html_CLASS排除URL

我搜索了类似的问题,但什么也没找到。我编写了一个元框,用于添加自定义URL,这些URL会添加到单个帖子的按钮中,但当URL添加到编辑帖子屏幕上的元框字段并保存时,它会将URL从以下内容中删除:http://example.com 对此:httpexamplecom 我假设由于sanitize\\U html\\U classes函数与save\\U post函数一起使用,如下所示:add_action( \'save_post\', \'projecturl_save\', 1, 2