ماجنتو:الحصول على عنوان URL الخاص بالمنتج للمنتجات ضمن منتج مجمع

StackOverflow https://stackoverflow.com/questions/1949885

  •  21-09-2019
  •  | 
  •  

سؤال

بالنسبة لمنتج مجمع، أود أن أعرض رابطًا للمنتجات البسيطة التي يتكون منها.على سبيل المثال، إذا كان لدي منتج مجمع يسمى مجموعة الطعام المكونة من أطباق وسكاكين وشوك وما إلى ذلك.أرغب في أن يكون لكل منتج فرعي رابط لهذا المنتج الفرعي (انقر فوق اللوحات للانتقال إلى المنتج البسيط للوحات)

<?php foreach ($_associatedProducts as $_item): ?>
    <tr>
        <td><?php echo $this->htmlEscape($_item->getName()) ?></td>
        <td class="a-right">
            <?php echo $this->getPriceHtml($_item, true) ?>
        </td>
        <?php if ($_product->isSaleable()): ?>
        <td class="a-center">
        <?php if ($_item->isSaleable()) : ?>
            <a href="<?php $_item->getProductUrl() ?>">View</a>
        <?php else: ?>
            <p class="availability"><span class="out-of-stock"><?php echo $this->__('Out of stock.') ?></span></p>
        <?php endif; ?>
        </td>
        <?php endif; ?>
    </tr>
<?php endforeach; ?>

هذا مقتطف تعليمات برمجية من ملف grouped.phtml الموجود

app/design/frontend/blank/default/template/catalog/product/view/type/grouped.phtml

على وجه الخصوص الخط الذي لديه $_item->getProductUrl()، هذا لا يعمل ، ولا أعرف الكود اللازم للحصول على عنوان URL لعنصر المنتج المرتبط به.إذا كان أي شخص يمكن أن يساعد هنا سيكون موضع تقدير كبير.

أيضًا، أين يمكنني العثور على الطريقة المتاحة (وكيفية استخدامها) للمنتجات أو الفئات أو $_item وما شابه ذلك؟

هل كانت مفيدة؟

المحلول

من السهل العثور على جميع الطرق والوظائف. تتبع دائمًا إلى القلب /app/code/core/Mage/Catalog/Model/Product.php أو أي من الملفات الأخرى في هذا المجلد.

الكود الخاص بك مثالي. فقط استخدم

$_item->getUrlPath() ;

بدلاً من productURL.

نصائح أخرى

فقط بضع ملاحظات حول الحصول على الطرق / البيانات المتاحة:

أولاً ، للحصول على جميع الطرق المشفرة فعليًا في الفصول الدراسية ، يمكنك الحصول على جميع الأساليب المتاحة مع:

$array = get_class_methods($_item); //yields an array of the methods in the class
var_dump($array); // to see the methods

للحصول على جميع الطرق المتعلقة بالبيانات ، اكتشف أولاً أعضاء البيانات في الفصل. هذا يعمل مع معظم الأشياء في Magento:

$data = $_item->getData(); // $key => $value array

ثم يمكنك الحصول على أي جزء من البيانات تريد طريقتين:

// assuming I want 'my_data'
$data = $_item->getMyData();
$data = $_item->getData('my_data');
<?php echo $this->htmlEscape($_item->getProductUrl()) ?>

أو هنا هو HREF كله:

<a href="<?php echo $this->htmlEscape($_item->getProductUrl()) ?>">
            <?php echo $this->htmlEscape($_item->getName()) ?>
</a>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top