Vra

Ek moet 'n manier om die waarde van 'n persoonlike kenmerk wys in plaas van die "Produk Naam" word in die onderstaande beeld te vind.

 Gegroepeerde produkte tafel
(bron: magentocommerce.com )

Ek werk met /app/design/frontend/default/defaultx/template/catalog/product/view/type/grouped.php

Die kode hieronder nie werk nie (die persoonlike kenmerk is yearmade):

<?php if (count($_associatedProducts)): ?>  
<?php foreach ($_associatedProducts as $_item): ?>  
    <tr>  
        <td><?php echo $this->htmlEscape($_item->getYearmade()) ?></td>

Enige hulp sal waardeer word.

EDIT: En die antwoord blyk heel eenvoudig te wees. Jy sien wat ek versuim het om bo te noem, is dat daar is inderdaad uitset ... maar dat dit net 'n nommer (bv: 52). Blyk dit was die ID vir die persoonlike kenmerk waarde (Dit was 'n vervolg tipe persoonlike kenmerk).

So in opsomming
Dit werk vir persoonlike eienskappe van tekstipe:

echo $this->htmlEscape($_item->getYearmade())

Maar vir al die ander vorme van persoonlike kenmerk (ek dink), moet die volgende gebruik word:

echo $this->htmlEscape($_item->getAttributeText('yearmade'))

Ek sou nie hierdie ontdek sonder die mees uitstekende antwoord verskaf deur Alan Storm, hieronder. Baie dankie meneer.

Was dit nuttig?

Oplossing

Alle Magento modelle het 'n "getData" metode beskikbaar, wat 'n PHP-reeks sleutel / waarde pare sal terugkeer. Probeer om dit by die top van jou grouped.phtml lêer (na $ _product gedefinieer)

print('<pre>');print_r($_product->getData());print('</pre>');

Jy moet uitset wat iets soos die volgende lyk sien.

Array
(
    [store_id] => 1
    [entity_id] => 3437
    [entity_type_id] => 4
    [attribute_set_id] => 27
    [type_id] => grouped
    [sku] => 
    [category_ids] => 
    [created_at] => 2009-04-16 03:37:51
...     

So, kan jy 'n verskeidenheid van eiendomme te gryp en trek net die sleutel uit. Jy kan ook Magento se gerief / magic getX en setX metodes gebruik. Op al Magento modelle, kan jy toegang tot enige eiendom in die data opgestel deur die roeping van 'n metode wat gebaseer is op die kameel geval weergawe van die naam,

$created_at = $_product->getCreatedAt();
$_product->setCreatedAt($date);

So, wat ook al jou persoonlike kenmerk naam is, jy moet in staat wees om dit met behulp van die bogenoemde te kry, en as jy nie seker is net print_r of var_dump die inhoud van die skikking teruggekeer deur getData ().

Ten slotte, as die persoonlike kenmerk is op een van die verwante produkte eenvoudige produk, jy wil iets meer soos

$_associatedProducts[0]->getCreatedAt();

Ander wenke

Ek het dieselfde probleem.

  1. Jy moet grouped.phtml spoor app/design/frontend/base/default/template/catalog/product/view/type/grouped.phtml

  2. Kry die item, byvoorbeeld $_item[units]

  3. Voeg 'n sel in die tabel en plak eggo $_item['units'];

  4. Dis al:)

Van ver. 1.3. en in 1.4 te moet jy gebruik $ _ item nie $ _ produk , vir my hierdie werk goed in groupable tafel te.

Voorbeeld:

<?php echo $_item->getAttributeText('your attribute'); ?>
Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top