2014-01-22 35 views
0

我想添加一個文本取決於選定的屬性選項:我創建一個屬性與選項YES或NO。 我想用php創建,如果我在管理面板中選擇是的,如果應該啓動另一個PHP代碼(這將顯示在類別頁面上的幾個文本) 但是,如果我選擇否它不應該通過代碼,我的意思是不顯示文本Magento selected屬性結果

+0

的問題是,如果我加'code'if($ _product-> getAttributeText( 'messagetimer')==「是」){..文字PHP代碼}'code' MST的特點主要消失我不知道爲什麼 – Gaven

+0

請解釋更好的問題。只有產品屬性爲「是」時,您是否必須在「產品列表」中爲每件產品打印額外的文字? – Thundar

+0

@Thundar是隻有當產品屬性是「是」,但我已經試過像... <?php if($ _product-> getAttributeText('texter')==「Yes」):?> php代碼這裏的文字 <?php endif; ?>所以基本上如果「texter」設置爲YES,那麼運行代碼,如果設置爲no,則不顯示任何信息 – Gaven

回答

1

如果創建一個是/否屬性(選擇是/否的目錄輸入類型字段),那麼你可以檢查只需使用

$_product->getData('my_attribute_code'); 

這將返回值01

所以如果你打算

if($_product->getData('my_attribute_code')){ 
    echo 'My text'; 
} 

注意的是,根據上下文,你可能必須先加載產品得到這個值,所以如果沒有散發出來的的getAttribute功能,因此您可能必須執行此代碼之前的一個:

$_product->load($_product->getId()) 

而這應該工作。

編輯:請注意,如果您創建下拉屬性並手動設置「是」和「否」作爲值,則這不起作用。您需要爲屬性的目錄輸入類型字段選擇是/否。

乾杯

+0

在是/否的情況下使用$ _product-> getResource() - > getAttribute('messagetimer') - > getFrontend() - > getValue沒有屬性的數據不是0/1:它有一對不同的整數值(即:18/19)。每個屬性都不相同。您可以在產品編輯頁面或數據庫中的選擇源代碼中找到正確的值。 – Thundar

+0

是/否Magento中的產品屬性是布爾值。所以他們有0/1的價值。這可以在'eav_attribute'表中進行驗證,您可以在其中找到'eav/entity_attribute_source_boolean'作爲此類屬性的源模型。 – baoutch

+0

我的錯誤。你是對的。 – Thundar