I found the code for the simple view is located in a file called view_ldesc.php. And it does not work. Because they're trying to echo something that they didn't load first. Here's a snippet from it:
<div class="product-ldesc">
<?php echo $this->product->product_long_desc; ?>
</div>
But the long description works on the product browse pages. Here's the snippet in that one that actually works. I included the short description in this snippet so you can see how lazy these guys that coded it are. They used the same class for the long description ('product-short-description')...
<?php if($this->params->get('list_show_short_desc', 1)): ?>
<div class="product-short-description"><?php echo $this->product->product_short_desc; ?></div>
<?php endif; ?>
<?php if($this->params->get('list_show_long_desc', 0)): ?>
<div class="product-short-description"><?php echo $this->product->product_long_desc; ?></div>
<?php endif; ?>
Actually, that's not the issue. But, why not just leave it so people can see how careless the coding is.
Here's the next issue I found. As you can see below, they load the short description and try to echo the long description from it...
Anyway, replace the garbage code with the code below an it will display both the short description (part before 'read more') and also the long description...<?php echo $this->loadTemplate('sdesc'); ?>
<div class="product-desc">
<?php echo $this->product->product_long_desc; ?>
</div>
Oh, and if you used their product display module and had to use the other fix I mentioned, don't forget to also fix this in the core component files because the layout overrides also don't work correctly for links coming from the module.<?php echo $this->loadTemplate('sdesc'); ?>
<?php echo $this->loadTemplate('ldesc'); ?>
<div class="product-desc">
<?php echo $this->product->product_short_desc; ?>
<?php echo $this->product->product_long_desc; ?>
</div>
Comments