2016-10-25 78 views
1

我正在努力在WooCommerce產品模板文件中包含基於產品標記的某些元素。WordPress/WooCommerce:添加PHP包含條件

所以我有1 content-single-product.php文件,但是我想根據分配給獨特產品的標籤動態地將PHP文件渲染到content-single-product.php文件中。

因此,按鈕的性質是放置一個「出價」,但該公司在3個不同的地點運營,因此希望展示取決於產品在哪裏的不同形式(例如牛津,切爾滕納姆,斯溫頓)。

我創建了3種不同的形式,並上傳他們作爲獨特的PHP文件,並試圖這樣,但沒有運氣:

if(is_product_tag('Cheltenham')) { include 'place_bid_cheltenham.php'; } 

不過即使我已經設定的產品標記爲「切爾滕納姆」這是仍然沒有渲染,當分析包含這個的Div元素時,它只是空的,但是頁面加載正常,沒有語法錯誤。

另外,當我刪除IS_PRODUCT_TAG條件時,按鈕呈現正確。

+0

爲什麼包括嘗試使用[get_template_part(https://developer.wordpress.org/reference/functions/get_template_part/) –

+0

嗨羅希特,感謝回去我,我嘗試這樣做,現在我得到的以下錯誤:(T_CONSTANT_ENCAPSED_STRING)。 –

+0

你使用的是什麼代碼? –

回答

0

is_product_tag()用於確定您是否正在查看該術語的分類頁面。它是像這樣的is_tax()功能的包裝...

function is_product_tag($term = '') { 
    return is_tax('product_tag', $term); 
} 

因此,這不是你在這種情況下所需要的。相反,您將需要使用has_tag()函數(has_term()的包裝函數)來確定產品是否已被標記。

if(has_tag('Cheltenham')) { 
    include 'place_bid_cheltenham.php'; 
} 
+0

非常感謝您的回答!我剛剛嘗試過,但現在它不工作,這個功能在WooCommerce中工作嗎?因爲我似乎無法在這裏找到它:https://docs.woocommerce.com/document/conditional-tags/ –

+0

'has_tag()'是WordPress的一部分(https://developer.wordpress.org/reference/函數/ has_tag /)。這個條件檢查是在循環內完成的嗎? –

+0

這實際上是我添加的代碼(用div封裝)