Close

Profile: ernest

Avatar

User posts

Bugs
8 years ago

Hi, I think that crawler is searching for "Url" string in HTML code and afterwards trying to extract it.
Rename  data-getFilteredProductsUrl= to data-getFilteredProductsAddr=  in two files NopFilters.cshtml and Filters.min.js
. ( I also found , that crawler's IP address belongs to Blue Coat Systems , so definitely not Google )

Bugs
8 years ago

I have added to custom robots.txt



Disallow: /catalog7spikes/getfilteredproducts
. But problems still persists, because other crawlers than Google do not respect it.

Bugs
8 years ago

How to manually add the route to the robots.txt file ?

When webspiders are parsing page with Ajax Filter, they  are causing this error in log file.



This happens quite frequently .I think this is because of code part in rendered HTML : data-getFilteredProductsUrl="/Catalog7Spikes/GetFilteredProducts"

.Can someone explain  me how I can block such things ?

--- System.ArgumentException: The parameters dictionary contains a null entry for parameter 'categoryId' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult GetFilteredProducts(Int32, Int32, Int32, SevenSpikes.Nop.Plugins.AjaxFilters.Models.PriceRangeFilterSlider.PriceRangeFilterModel7Spikes, SevenSpikes.Nop.Plugins.AjaxFilters.Models.SpecificationFilter.SpecificationFilterModel7Spikes, SevenSpikes.Nop.Plugins.AjaxFilters.Models.AttributeFilter.AttributeFilterModel7Spikes, SevenSpikes.Nop.Plugins.AjaxFilters.Models.ManufacturerFilter.ManufacturerFilterModel7Spikes, SevenSpikes.Nop.Plugins.AjaxFilters.Models.VendorFilter.VendorFilterModel7Spikes, Nop.Web.Models.Catalog.CatalogPagingFilteringModel, SevenSpikes.Nop.Plugins.AjaxFilters.Models.OnSaleFilter.OnSaleFilterModel7Spikes, System.String, Boolean)' in 'SevenSpikes.Nop.Plugins.AjaxFilters.Controllers.Catalog7SpikesController'. An optional parameter must be a reference type, a nullable type, or be declared as an optional parameter. Parameter name: parameters at System.Web.Mvc.ActionDescriptor.ExtractParameterFromDictionary(ParameterInfo parameterInfo, IDictionary`2 parameters, MethodInfo methodInfo) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<>c__DisplayClass2b.<BeginInvokeAction>b__1c() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult) at System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndD

8 years ago

Hello everyone,



We have added an attribute set called Availability (Availability , Not Available ) The problem is , that with Nop Ajax Filter we use v3.5 ( not pro version) , even when this attribute is set as Default Product Sort Option is not forcing  on the load of page to sort products by this attribute. Only when click is made on checkbox on left sidebar , page resorting products properly .

My question is :  does PRO version solves this ?