因此,我本周开始了一个新项目,当然,我正在考虑在整个开发过程中我将要发现的问题。我们要做一家设计很好的商店,非常兴奋地做这件事。然而,该设计使用了许多不能放在magento的正常功能中的内容。例如,有一个目录页面,它有很多内容块,包含一些次要信息,比如独特的卖点或一些讲述故事的信息。对于不同的类别,这可以而且将是不同的。我们讨论的是许多小的内容块,而不是可以插入类别描述字段中的内容;)
到目前为止,我主要使用静态块来制作这些内容并在页面上显示它们,甚至可能使用xpath从块中提取我需要的信息,以防止最终用户使用WYSIWYG编辑器破坏设计。但是,我不认为这是一个很好的解决方案,因为只需要创建和使用大量的静态块,而又不放松对所有内容的概述,而且我还怀疑xpath是否真正具有良好的性能(就像用锤子钻进去一样)。
我正在考虑创建一个模块,或者使用一个模块,这样就可以添加属性并与静态块结合使用属性集。这样,您就可以为特定页面创建您自己的字段和组,并使最终用户可以轻松地在他们的网站上编辑信息。然而,我自己做这个(听起来确实很有趣)需要花费很多时间,而且我也找不到这样的模块。
在创建一个新的网络商店时,你们是如何解决这些问题的?有小费吗?
发布于 2015-06-19 13:26:01
最后,我使用了zokibtmkd答案的组合,并将字段添加到默认的静态块中(图像上传函数和链接字段)。这两种解决方案的结合给了我足够多的工作在设计中,而不影响管理或模板。
发布于 2015-05-20 20:35:01
我想您将在类别页面中使用自己的主题和模板,在这里您将设置所有不希望管理员与WYSIWYG编辑器混淆的HTML,并让它们只更改页面的某些部分。为了使管理员能够编辑这些,您需要向类别实体添加新的属性。例如,如果管理员应该为某个框添加文本,那么添加文本类型的属性,如果管理员想要添加编辑器类型的属性等等。然后,在模板中,您将检查类别是否有这些属性中的任何一个,并且它们具有非空值,然后打印它们。
例如:
<?php if ($category->getCustomTextAttribute() != ''): ?> <div id="your-div"> <?php echo $category->getCustomTextAttribute(); ?> </div> <?php endif; ?> <?php if ($category->getPromotionHtml() != ''): ?> <div id="promotion-div"> <?php echo $category->getPromotionHtml(); ?> </div> <?php endif; ?>同样适用于产品页面,不同之处在于,对于产品,您可以通过管理员创建属性,然后在产品页面模板上打印它们,否则,对于需要编写这样的模块的类别,我可以为您提供一个创建类别属性的模块示例。
https://stackoverflow.com/questions/30357397
复制相似问题