短代码显示在错误的位置,始终在顶部

时间:2014-03-04 12:17:05

标签: php position return shortcode ob-start

我在网上商店工作,将在结账前显示购物车。就像现在一样,这是购物车前的结账。

我无法让它发挥作用。 我遇到了一个问题,即插件始终显示在内容的顶部。 我已经解决了这个问题。现在我更新了这个插件并尝试了同样的东西,因为你可以在看到它时读到它。

代码是这样的原始代码:

public function __construct() {

    add_action('init', array( &$this, 'start_session' ), 1);

    add_shortcode( 'woocommerce_klarna_checkout', array(&$this, 'klarna_checkout_page') );

    //add_action( 'woocommerce_proceed_to_checkout', array( &$this, 'checkout_button' ), 12 );

    add_filter( 'woocommerce_get_checkout_url', array( &$this, 'change_checkout_url' ), 20 );



}

// Set session
function start_session() {      

    $data = new WC_Gateway_Klarna_Checkout;
    $enabled = $data->get_enabled();

    if(!session_id() && $enabled == 'yes') {
        session_start();
    }
}

// Shortcode
function klarna_checkout_page() {

    $data = new WC_Gateway_Klarna_Checkout;
    $data->get_klarna_checkout_page();


    }

我试过这个:

            ob_start();
    $data->get_klarna_checkout_page();
    $output_string=ob_get_contents();;
    ob_end_clean();

    return $output_string;

比孔插件消失,只显示的是/ *

正如我在顶部写的那样,这个解决方案适用于插件的错误版本,但现在还没有。 而我在webb上找到的就是这个解决方案。所以,如果有人有任何想法我会喜欢它。

Mabey问题是短代码不在我放ob_start()的功能中; ? 我喜欢php上的新手,似乎不能让我的自己工作。

0 个答案:

没有答案