【问题标题】:How to display a $_SESSION variable in custom woocommerce checkout field?如何在自定义 woocommerce 结帐字段中显示 $_SESSION 变量?
【发布时间】:2021-07-08 21:26:39
【问题描述】:

我可以通过查看开发工具中的“应用程序”选项卡来验证我的会话变量是否已转移到结帐页面;我有 WC 挂钩设置,允许我更改要插入数据的字段的“默认”/值。

但是,我无法让他们互相阅读。

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

function custom_override_checkout_fields( $fields ) {
     $fields['order']['order_comments']['label'] = "Custom Neon Details (If included)";
     $fields['order']['order_comments']['default'] = $_SESSION["customtext"];
     var_dump( $fields );
     return $fields;
}

正如您从所附图片中看到的那样,我的会话变量出现在该页面上。现在,如何让它将该会话变量添加到 $fields['order']['order_cmets']['default']?

感谢任何帮助!谢谢。

【问题讨论】:

    标签: php wordpress session woocommerce hook-woocommerce


    【解决方案1】:

    在访问$_SESSION 变量之前使用session_start();

    add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
    function custom_override_checkout_fields( $fields ) {
    
        session_start();
    
        $fields['order']['order_comments']['label'] = "Custom Neon Details (If included)";
        $fields['order']['order_comments']['default'] = $_SESSION["customtext"];
        var_dump( $fields );
        return $fields;
    }
    

    或者,您可以将 jQuery 与 sessionStorage 一起使用:

    // set the value of the order comment field via session storage
    add_action( 'wp_footer', 'set_value_order_comments_field_via_session_storage' );
    function set_value_order_comments_field_via_session_storage() {
        ?>
        <script type="text/javascript">
            jQuery(function($){
                var customtext = sessionStorage.getItem("customtext");
                if ( customtext.length ) {
                    $('#order_comments').val(customtext);
                }
            });
        </script>
        <?php
    }
    

    代码已经过测试并且可以运行。将其添加到活动主题的 functions.php 中。

    【讨论】:

    • 谢谢!像魅力一样工作! :)
    猜你喜欢
    • 2021-05-28
    • 1970-01-01
    • 2023-04-10
    • 2016-11-07
    • 1970-01-01
    • 2019-07-28
    • 1970-01-01
    • 2021-04-17
    相关资源
    最近更新 更多