易优搜索全站内容并从文章内容中搜索关键字的解决方法

网站运营 强烈建议 2024-03-22 07:50 83 0

  在易优搜索中,默认情况下是从文章标题中进行搜索。这是因为数据库中存储的标题内容是纯文本,所以无需进行过滤。然而,在某些情况下,我们需要从文章内容中全站搜索并检索关键词,而默认的搜索功能显得不够灵活。但是,通过灵活运用SQL语句,我们可以直接实现这一功能。具体方法如下:

  {eyou:sql sql="select aid from ey_article_content where content like '%$keywords%' union select aid from ey_archives where title like '%$keywords%' union select aid from ey_product_content where content like '%$keywords%' limit 0,5" }

  {eyou:sql sql="select aid from ey_archives where aid='$aid'" id="field3"}

  

  •   {eyou:arcview aid="$field3.aid" id="field2" addfields="content" }

      

    {$keywords,"$keywords",$field2.title|str_replace}

      {eyou:assign name="neirong" value="$field2.content|html_msubstr"}

      

    {$neirong,$keywords|diy_content}

      {$field2.add_time|MyDate='Y-m-d',###}

      

  •   {/eyou:arcview}

      {/eyou:sql}

      {/eyou:sql}

      然而,需要注意的是,易优数据库中的字段存储的是带有HTML标签的内容。如果搜索的关键字包含常见的HTML标签(如"a"、"p"、"br"等),会导致搜索结果显示全部文章。尽管这种方法勉强可行,但可能会影响搜索结果的准确性。因此,建议对搜索关键字进行过滤或限制,以避免这个问题。

      综上所述,通过使用SQL语句和适当的关键字过滤,我们可以实现从文章内容中搜索关键字的全站搜索功能。希望这个解决方法对你有所帮助。

    本站资源均来自互联网或会员发布,如果不小心侵犯了您的权益请与我们联系。我们将立即删除!谢谢!