Full Text Search does not pick up meta keywords

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
10 лет назад
Hi

I've configured our SQL server to enable Full Text Search.   I've then configured nopCommerce 3.1 to use Full Text Search using option for USING CONTAINS and AND with prefix_term.

If I go to my SQL database and look at the properties for nopCommerceFullTextCatalog, I can see that the tables assigned to the catalog include dbo.Product.  I can then also see the columns from that table assigned to the search catalog.  I want to enable the columns MetaKeywords, MetaDescription and MetaTitle which is easy to do from within SQL server Management Studio. However, enabling these columns makes no difference to nopCommerce search results.  I cannot get results based on the product listing meta data.

Can anyone advise how to fix this?

Thanks and best regards
Nick
10 лет назад
Did you rebuild your full text catalog?
10 лет назад
hi
Yes I did.  However, I still haven't had any success.
8 лет назад
Were you able to resolve this issue?  If so, what was the fix?
8 лет назад
Hi
Enable Full text search in MSS recomended only when like operator works as not fast as desired. FTS search image fields containg large text or pictures with OCR.
So it has no relation to your problem
This may help you
https://www.nopcommerce.com/boards/t/41475/default-serch-box-behavior.aspx
7 лет назад
May be too late but in case someone else sees this....

To get Meta keywords to return in your search (using Full text search) you have to add the field to the FullText_Enable stored procedure and add the query to the ProductLoadAllPaged stored procedure.  

For the other Meta fields, just add the fields to the FullTest_Enable SP and add two more queries to the  ProductLoadAllPaged using the Meta Keywords query as a stating point.

BTW, I'm forcing it to always search for SKU, so I removed the if statement...

FullText_Enable
  -- Change the line that creates the Full text index for the name, short description and full description as follows:

CREATE FULLTEXT INDEX ON [Product]([Name], [ShortDescription], [FullDescription], [Sku], [MetaKeywords])


ProductLoadAllPaged
  -- Insert the queries to the SP, I put them between the localized product full description query and the product tag query


    --SKU
    --IF @SearchSku = 1
    --BEGIN
      SET @sql = @sql + '
      UNION
      SELECT p.Id
      FROM Product p with (NOLOCK)
      WHERE '
      IF @UseFullTextSearch = 1
        SET @sql = @sql + 'CONTAINS(p.[Sku], @Keywords) '
      ELSE
        SET @sql = @sql + 'PATINDEX(@Keywords, p.[Sku]) > 0 '
    --END

    --[MetaKeywords]
    SET @sql = @sql + '
    UNION
    SELECT p.Id
    FROM Product p with (NOLOCK)
    WHERE '
    IF @UseFullTextSearch = 1
      SET @sql = @sql + 'CONTAINS(p.[MetaKeywords], @Keywords) '
    ELSE
      SET @sql = @sql + 'PATINDEX(@Keywords, p.[MetaKeywords]) > 0 '
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.