簡體   English   中英

將頁面模板加載到簡碼中

[英]Loading page template into shortcode

我正在嘗試將頁面模板加載到簡碼中,以便可以在任何位置輕松加載內容。

我做了一些研究,很多人說這段代碼對他們有用,但是由於某種原因,這似乎無法正確加載我的模板,因為我只能得到一個空白頁。

我知道短代碼正在執行,因為它不會顯示為純文本,因此我猜測加載模板的方式存在問題。

任何幫助深表感謝 。

public function register(){
        add_shortcode( 'sponsor_main_page', array($this,'my_form_shortcode') );
            $RegistrationFormId = esc_attr( get_option( 'ik_form_id' ) );
        }

function my_form_shortcode() {
        ob_start();
        get_template_part( 'template-sponsors.php' );
        return ob_get_clean();
    }

嘗試更准確地解釋您要做什么。 您將此代碼放在哪里? 您的模板包含什么,目的是什么?

首先使用get_template_part必須刪除.php

而且我不知道您要加載哪種類型的模板。 您的代碼似乎想要將變量傳遞給模板。 而且此代碼似乎是Class的方法。

也許您只是將此代碼放在functions.php上,這就是為什么您會得到空白頁的原因。

嘗試在functions.php上使用此代碼

add_shortcode('my-shortcode', 'display_my_template');
function display_my_template() {
    ob_start();
    get_template_part( 'template-sponsors' );
    return ob_get_clean();
}

然后,您可以在頁面中使用簡短代碼,例如[my-shortcode]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM