我是NopCommerce的新手,我有一个问题,我希望能够在ProductTemplate.Simple.cshtml上显示一个指示器,以显示产品是新的。因此,我正在尝试找出最好的方法,或者NopCommerce上目前是否有一个服务已经提供了解决方案。
我现在被这个问题的解决方案卡住了?有没有人知道从哪里开始找?还是遇到了同样的问题?
发布于 2018-11-03 13:06:58
从问题的描述中,我假设你想在详细页面上指出产品是新的,因此你必须修改代码。
在Nop.Web > Models > Catalog ProductDetailsModel中添加一个新字段
public partial class ProductDetailsModel : BaseNopEntityModel
{
...
public bool IsNew { get; set; }
}通过Nop.Web >工厂> ProductModelFactory为其赋值
public virtual ProductDetailsModel PrepareProductDetailsModel(Product product, ShoppingCartItem updatecartitem = null, bool isAssociatedProduct = false)
{
var model = new ProductDetailsModel {
...
...
IsNew = product.MarkAsNew
};
}添加条件,在查看页面显示:
<div class="product-name">
<h1 itemprop="name">
@Model.Name
@if (Model.IsNew)
{
<b>(This is a new product)</b>
//TODO: add your code here
}
</h1>
</div>要检查它是否正常工作,在管理员端将产品标记为新的(我在这里使用了苹果iCam )

转到并刷新详细信息页面:

希望这能有所帮助!
发布于 2018-11-02 23:23:38
您可以尝试在非商业市场上找到ribbon插件,或者您可以自己开发它。否则,您可以根据"ProductOverviewModel“的"MarkAsNew”属性在presentation==>nop.web==>themes==>your theme==>Shared==>_ProductBox.cshtml上显示新的贴纸。
https://stackoverflow.com/questions/52964195
复制相似问题