Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Saif Obeidat 79 posts 293 karma points
    May 30, 2019 @ 09:33
    Saif Obeidat
    0

    How to prevent Examine from returning deleted nodes?

    Hello,

    I am using Examine to return some nodes in certain document type alias.

    Refering to this document: https://our.umbraco.com/documentation/Reference/Searching/Examine/Quick-Start/

     results = searcher.CreateQuery().Field("__IndexType", "content").And().Field("__NodeTypeAlias", "client").Execute();
    

    All is perfect if there are no deleted nodes, but if there, I get some issues like counting the results and other things because of those deleted nodes.

    The question is, how to avoid deleted nodes from returning ?

  • Saif Obeidat 79 posts 293 karma points
    May 30, 2019 @ 21:44
    Saif Obeidat
    0

    I noticed that when I empty the recycle bin, the issue will be gone.but I think this wouldn't be the perfect solution.

    Can you help guys??

  • August 7 posts 117 karma points
    May 30, 2019 @ 22:00
    August
    0

    Have you tried setting 'supportUnpublished' to false on the indexer at ExamineSettings.config?

    https://our.umbraco.com/documentation/Reference/Config/ExamineSettings/

  • Saif Obeidat 79 posts 293 karma points
    Jun 10, 2019 @ 10:05
    Saif Obeidat
    0

    Thanks @August

    Do you know how to implement this on Umbraco8 ? , because Umbraco8 project doesn't have Examine config file.

  • James Hull 4 posts 24 karma points
    Jun 17, 2019 @ 06:50
    James Hull
    0

    I'm having the same issue in Umbraco 8. How can we exclude the deleted nodes from appearing in the search?

  • Mila Pandurska 75 posts 350 karma points
    Jun 25, 2019 @ 07:26
    Mila Pandurska
    0

    Hi, all, I have the same issue. My query returns deleted records. Does anyone have a solution?

    Mila

  • Mila Pandurska 75 posts 350 karma points
    Jun 25, 2019 @ 11:48
    Mila Pandurska
    0

    I found a work around. I attach to ContentService.Trashing += ContentService_Trashing; event. Keep in mind that when you delete an item in the umbraco admin none the following event is fired:

     ContentService.Deleting 
     ContentService.Deleted
    

    which is why I attach to ContentService.Trashing. So In ContentService_Trashing method I manually remove this item from the search idnex:

    private void ContentService_Trashing(IContentService sender, MoveEventArgs<Umbraco.Core.Models.IContent> e)
            {
         foreach (var item in e.MoveInfoCollection)
                {
                    if (item.Entity.ContentType.Alias ==  "articleDetailsPage")
                            {
                                IIndex index;
                                if (_examineManager.TryGetIndex("NewsSearchIndex", out index))
                                {
                                    index.DeleteFromIndex(item.Entity.Id.ToString());
                                }
                            }
    
    
                                IIndex index;
                                if (_examineManager.TryGetIndex("ExternalIndex", out index))
                                {
                                    index.DeleteFromIndex(item.Entity.Id.ToString());
                                }
                    }
                }
    }
    

    In my code I have configured custom index for my articles. If the element is articleDetails it should be removed from my custom index and the external idex as well.

    Regards Mila

  • Yakov Lebski 427 posts 1654 karma points
    Jun 27, 2019 @ 10:37
    Yakov Lebski
    0

    I think it can be an issue when rebuilding indexes, in v7 it easy supportUnpublished=false as was sad before

    without access to ExamineSettings.config I think it can work with query over path property, when page deleted it moved under -10 query should be not in path: -10*

  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies