container1 และ container2 คืออะไรในหน้าดูผลิตภัณฑ์ใน magento


10

ฉันต้องรู้ว่า container1 และ container2 นี้ในหน้ามุมมองผลิตภัณฑ์วีโอไอพีคืออะไร ฉันกำลังพูดถึงไฟล์view.phtmlในสถานที่app/design/frontend/<package>/<theme>/catalog/product/view.phtml

คำถาม upadate:

ฉันถามคำถามนี้เพราะ .. ฉันได้รู้ว่าส่วนเหล่านี้มีหน้าที่ในการแสดงตัวเลือกในหน้ามุมมองผลิตภัณฑ์

ที่จริงปัญหาของฉันคือฉันมี 3 ชุดผลิตภัณฑ์และฉันต้องการแสดงตัวเลือกที่กำหนดเองในไฟล์ phtml ของฉันเอง ฉันมีรหัสเหล่านี้กับฉัน ..

<?php
$id=Mage::getModel('catalog/product')->getIdBySku(123456);
$prod = Mage::getModel('catalog/product')->load($id);
$x=$prod->getOptions();
foreach($x as $y)
 {
echo $y->getTitle();
print_r($y->getValues());
}
?>

ฉันต้องการรับผลิตภัณฑ์ผ่านทาง sku นั่นคือเหตุผลที่ฉันเขียนโค้ดดังนี้สิ่งนี้ฉันได้รับชื่ออย่างถูกต้อง แต่มีค่าไม่แสดงผล (หมายเหตุ: ฉันเพิ่มสองตัวเลือกแบบเลื่อนลงเป็นตัวเลือกที่กำหนดเอง)

ขอบคุณล่วงหน้า.


คุณไปกับ @rajeevktomy นี้ได้อย่างไร
jharrison.au

คำตอบ:


28

สิ่งเหล่านี้เกี่ยวข้องกับตำแหน่งที่แสดงตัวเลือกแบบกำหนดเองของผลิตภัณฑ์

ดูapp/code/core/Mage/Catalog/etc/config.xml:

<design>
    <options_container>
        <option1 translate="label">
            <value>container1</value>
            <label>Product Info Column</label>
        </option1>
        <option2 translate="label">
            <value>container2</value>
            <label>Block after Info Column</label>
        </option2>
    </options_container>
</design>

ที่นี่คุณจะเห็นว่าcontainer1เกี่ยวข้องกับ 'คอลัมน์ข้อมูลผลิตภัณฑ์' ในขณะที่ container2 คือ 'บล็อกหลังคอลัมน์ข้อมูล' ค่าเหล่านี้อธิบายว่าตัวเลือกที่กำหนดเองจะปรากฏที่ใดในหน้ามุมมองผลิตภัณฑ์ คุณสามารถตั้งค่าเหล่านี้เมื่อแก้ไขผลิตภัณฑ์ใน Magento admin ภายใต้แท็บออกแบบ

บล็อกเลย์เอาต์ถูกกำหนดในapp/design/frontend/base/default/layout/catalog.xml:

 <block type="core/template_facade" name="product.info.container1" as="container1">
    <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action>
    <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
    <action method="append"><block>product.info.options.wrapper</block></action>
    <action method="append"><block>product.info.options.wrapper.bottom</block></action>
</block>
<block type="core/template_facade" name="product.info.container2" as="container2">
    <action method="setDataByKey"><key>alias_in_layout</key><value>container2</value></action>
    <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
    <action method="append"><block>product.info.options.wrapper</block></action>
    <action method="append"><block>product.info.options.wrapper.bottom</block></action>
</block>

และในapp/design/frontend/base/default/template/catalog/product/view.phtmlคุณจะเห็นสองสาย:

<?php echo $this->getChildChildHtml('container1', '', true, true) ?>
และ
<?php echo $this->getChildChildHtml('container2', '', true, true) ?>


1
ขออภัยฉันลืมที่จะยอมรับ :-)
Rajeev K Tomy

-4

คุณสามารถแก้ไขไฟล์ phtml ไปที่แอพพา ธ ด้านล่าง / ออกแบบ / ส่วนหน้า / ชื่อ / ค่าเริ่มต้น / แม่แบบ / แคตตาล็อก / ผลิตภัณฑ์ / ข้อมูล / container2.p‌ html หรือถ้าเป็นแอปผลิตภัณฑ์ที่ดาวน์โหลดได้ / ออกแบบ / ส่วนหน้า / ชื่อ / ค่าเริ่มต้น / แม่แบบ /catalog/downloadable/catalog/product/links.phtml

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.