Class ProductCatalogSettings
- Namespace
- Dynamicweb.Ecommerce.ProductCatalog
- Assembly
- Dynamicweb.Ecommerce.dll
Holds the configuration read from a product catalog paragraph's backend settings, controlling which products are listed, how they are paginated, filtered, and exported.
public class ProductCatalogSettings
- Inheritance
-
ProductCatalogSettings
- Inherited Members
Remarks
Construct from a paragraph ID or a Properties object. The resulting instance is used internally by the product catalog pipeline to build ProductListViewModelSettings and drive the search/index query.
Constructors
ProductCatalogSettings()
Initializes a new instance of ProductCatalogSettings with default values.
public ProductCatalogSettings()
ProductCatalogSettings(Properties)
Initializes a new instance of ProductCatalogSettings from a Properties bag.
public ProductCatalogSettings(Properties properties)
Parameters
propertiesPropertiesThe paragraph properties to read settings from.
ProductCatalogSettings(int)
Initializes a new instance of ProductCatalogSettings by loading the properties of the specified paragraph from the database.
public ProductCatalogSettings(int paragraphId)
Parameters
paragraphIdintThe ID of the paragraph whose properties are loaded. Ignored when 0 or negative.
Properties
CompareTemplate
Gets or sets the path to the Razor template used for the product comparison view.
public string CompareTemplate { get; set; }
Property Value
FeedTemplate
Gets or sets the path to the Razor template used to render product feed output.
public string FeedTemplate { get; set; }
Property Value
FieldToSpellCheck
Gets or sets the name of the index field used for spell-check suggestions.
public string FieldToSpellCheck { get; set; }
Property Value
IndexQuery
Gets or sets the raw index query string sent to the search engine (e.g. Elasticsearch).
public string IndexQuery { get; set; }
Property Value
IndexQueryConditions
Gets or sets additional query conditions appended to IndexQuery.
public string IndexQueryConditions { get; set; }
Property Value
IndexQuerySortByParams
Gets or sets the sort-by parameters appended to the index query.
public string IndexQuerySortByParams { get; set; }
Property Value
PageSize
Gets or sets the number of products per page. 0 returns all products without pagination.
public int PageSize { get; set; }
Property Value
ParameterToSpellCheck
Gets or sets the query-string parameter name that triggers spell-check (e.g. "q").
public string ParameterToSpellCheck { get; set; }
Property Value
ProductListTemplate
Gets or sets the path to the Razor template used to render the product list.
public string ProductListTemplate { get; set; }
Property Value
ProductTemplate
Gets or sets the path to the Razor template used to render a single product.
public string ProductTemplate { get; set; }
Property Value
RetrieveMyListsBasedOnCustomerNumber
Gets or sets a value indicating whether "My Lists" are retrieved by customer number rather than by user ID.
public bool RetrieveMyListsBasedOnCustomerNumber { get; set; }
Property Value
SelectedAssetCategories
Gets or sets the system names of the asset categories whose media should be populated. An empty array means no asset categories are populated.
public string[] SelectedAssetCategories { get; set; }
Property Value
- string[]
SelectedAssets
Gets or sets the MediaViewModel property names to populate within each asset.
public string[] SelectedAssets { get; set; }
Property Value
- string[]
SelectedPriceProperties
Gets or sets the PriceViewModel property names that should be populated. Only properties listed here will be filled on price view models in the list.
public string[] SelectedPriceProperties { get; set; }
Property Value
- string[]
SelectedProductCategoryFields
Gets or sets the system names of the product category fields to include.
public string[] SelectedProductCategoryFields { get; set; }
Property Value
- string[]
SelectedProductFields
Gets or sets the system names of the custom product fields (EcomProducts columns) to include.
public string[] SelectedProductFields { get; set; }
Property Value
- string[]
SelectedProductListProperties
Gets or sets the ProductListViewModel property names that should be populated.
public string[] SelectedProductListProperties { get; set; }
Property Value
- string[]
SelectedProductProperties
Gets or sets the ProductViewModel property names that should be populated. Only properties listed here will be filled on each product view model in the list.
public string[] SelectedProductProperties { get; set; }
Property Value
- string[]
SelectedStockUnits
Gets or sets the StockUnitViewModel property names to populate.
public string[] SelectedStockUnits { get; set; }
Property Value
- string[]
SelectedVariantInfo
Gets or sets the VariantInfoViewModel property names to populate.
public string[] SelectedVariantInfo { get; set; }
Property Value
- string[]
ShortDescriptionLength
Gets or sets the maximum character length used when truncating ShortDescription. 0 means no truncation.
public int ShortDescriptionLength { get; set; }
Property Value
ShowFacetOptionsWithNoResults
Gets or sets a value indicating whether facet options with a product count of zero are included in the facet list.
public bool ShowFacetOptionsWithNoResults { get; set; }
Property Value
TrackQueries
Gets or sets a value indicating whether queries are tracked for analytics purposes.
public bool TrackQueries { get; set; }
Property Value
UseGroupSortInGroupContext
Gets or sets a value indicating whether the group-defined sort order is applied when browsing within a specific group context.
public bool UseGroupSortInGroupContext { get; set; }
Property Value
Methods
GetFacetGroups()
Returns the facet group names configured for this catalog. An empty enumerable means all facet groups are shown.
public IEnumerable<string> GetFacetGroups()