2017-02-08 8 views
0

私はAPIKentico 10で製品を無効にするにはどうすればよいですか?

SKUInfoProvider.SetSKUInfo(updateProduct); 

の下に使用して追加することができますkentico 10.Iにおける電子商取引サイトの製品および更新製品のCRUD操作を行っております。また、製品を削除するためのAPIがあり

SKUInfoProvider.DeleteSKUInfo(updateProduct); 

しかし、データベースから製品を削除するのではなく、エンドユーザーに表示されずにデータベースに残るように無効にするだけです。

これは、SKUは、製品のオブジェクトです:

var sku = new SKUInfo 
      { 
       //SKUName = Convert.ToString(dr["SHORT_DESCRIPTION"]).Trim('"') + " (" + Convert.ToString(dr["MANUFACTURER_PART_NUMBER"]) + ")", 
       SKUName = Convert.ToString(dr["MANUFACTURER_PART_NUMBER"]), 
       SKUDescription = Convert.ToString(dr["TECHNICAL_SPECIFICATIONS"]).Trim('"'), 
       SKUShortDescription = Convert.ToString(dr["SHORT_DESCRIPTION"]).Trim('"'), 
       SKUPrice = ValidationHelper.GetDouble(dr["RESELLER_BUY_INC"], 0), 
       SKURetailPrice = ValidationHelper.GetDouble(dr["RRP_INC"], 0), 
       SKUEnabled = true, 
       SKUSiteID = siteId, 
       SKUProductType = SKUProductTypeEnum.Product, 
       SKUManufacturerID = manufacturer.ManufacturerID, 
       SKUDepartmentID = department.DepartmentID, 
       SKUHeight = 100, 
       SKUWidth = 100, 
       SKUAvailableItems = 1, 
       SKUSellOnlyAvailable = true 
      }; 

は私が偽としてSKUEnabledを設定しようとしましたが、それでもユーザーは、製品を無効にする任意のプロパティがあるproduct.Soを見ることができますか?

+1

ユーザとは、Kentico Adminインターフェイスにログインしているユーザ、またはあなたのウェブサイトのエンドユーザがあなたの製品を見ているということですか? –

+0

はいエンドユーザ –

答えて

0

どのようにSkuを表示していますか?それがリピーターの場合は、あなたのwhereの条件で "SKUEnabled = 1"でフィルターする必要があります。

もう1つの選択肢は、製品にページがある場合(スタンドアロンSKUではない場合)、ページ自体を公開解除できることです。

0

まあ...ユーザーは言うごとに商品を見ません。SKU /製品に接続されているページが表示されます。 SKUを無効にすると、そのページはまだ表示されますが、誤っていない場合は「カートに追加」は表示されません。商品ページの公開を解除する必要があります。ドキュメントのDocumentPublishToには、前日の日付に設定する必要があります。

ProductNode.SetValue( "DocumentPublishTo"、DateTime.Now.AddDays(-1));

+1

公開が完了していない場合は、PublishTo日付を 'DateTime.Now'に設定するだけで済みます - 「今」はすでに過去です:) –

+0

true :)私は24時間を過ぎてしまいました – Shof

関連する問題