search_result.html 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. {include file="header" /}
  2. <link rel="stylesheet" href="/assets/xtu/search-page.css?v=20260415-1809">
  3. <main class="xtu-search-page page-main-offset">
  4. <section class="xtu-search-shell xtu-search-result-shell">
  5. <div class="content-1200-wrap xtu-search-shell-inner">
  6. <form class="xtu-search-simple-form" method="get" action="{:cms_lang_url(addon_url('cms/search/index'))}">
  7. <div class="xtu-search-simple-box">
  8. <span class="xtu-search-simple-icon"><i class="bi bi-search"></i></span>
  9. <input type="search" name="q" class="xtu-search-simple-input" value="{$q}" placeholder="{:cms_t('search_placeholder_all','请输入关键词搜索产品、新闻或帮助')}" maxlength="25" autocomplete="off" required>
  10. <input type="hidden" name="modelid" value="{$modelid}">
  11. <input type="hidden" name="scope" value="{$scope|default='site'}">
  12. <input type="hidden" name="tab" value="{$defaultTab|default='product'}">
  13. </div>
  14. </form>
  15. {php}
  16. $searchScope = !empty($scope) ? $scope : 'site';
  17. $productTabUrlParams = ['q' => $q, 'modelid' => $modelid, 'scope' => $searchScope, 'tab' => 'product', 'page' => 1];
  18. $newsTabUrlParams = ['q' => $q, 'modelid' => $modelid, 'scope' => $searchScope, 'tab' => 'news', 'page' => 1];
  19. $helpTabUrlParams = ['q' => $q, 'modelid' => $modelid, 'scope' => $searchScope, 'tab' => 'help', 'page' => 1];
  20. if (!empty($time)) {
  21. $productTabUrlParams['time'] = $time;
  22. $newsTabUrlParams['time'] = $time;
  23. $helpTabUrlParams['time'] = $time;
  24. }
  25. {/php}
  26. <div class="xtu-search-simple-tabs xtu-search-simple-tabs-switch" role="tablist">
  27. <a class="xtu-search-simple-tab {if $defaultTab=='product'}is-active{/if}" href="{:cms_lang_url(addon_url('cms/search/index', $productTabUrlParams))}">{:cms_t('search_tab_product','产品')} <em>{$groupCounts.product|default=0}</em></a>
  28. <a class="xtu-search-simple-tab {if $defaultTab=='news'}is-active{/if}" href="{:cms_lang_url(addon_url('cms/search/index', $newsTabUrlParams))}">{:cms_t('search_tab_news','新闻')} <em>{$groupCounts.news|default=0}</em></a>
  29. <a class="xtu-search-simple-tab {if $defaultTab=='help'}is-active{/if}" href="{:cms_lang_url(addon_url('cms/search/index', $helpTabUrlParams))}">{:cms_t('search_tab_help','帮助')} <em>{$groupCounts.help|default=0}</em></a>
  30. </div>
  31. <div class="xtu-search-tab-panels">
  32. {if $defaultTab=='product'}
  33. <div class="xtu-search-tab-panel is-active" data-panel="product">
  34. <div class="xtu-search-simple-list">
  35. {if !empty($list)}
  36. {volist name="list" id="vo"}
  37. <article class="xtu-search-simple-item">
  38. <a class="xtu-search-simple-media" href="{$vo.url}" title="{$vo.title}">
  39. {if !empty($vo.thumb)}<img src="{$vo.thumb}" alt="{$vo.title}">{else /}<div class="xtu-search-simple-placeholder">XTU</div>{/if}
  40. </a>
  41. <div class="xtu-search-simple-body">
  42. <div class="xtu-search-simple-meta"><span>{:getCategory($vo['catid'],'catname')}</span></div>
  43. <h2 class="xtu-search-simple-title"><a href="{$vo.url}">{$vo.title|cms_highlightKeyword=###,$q|raw}</a></h2>
  44. <div class="xtu-search-simple-desc">{if !empty($vo.description)}{$vo.description|cms_highlightKeyword=###,$q|raw}{elseif !empty($vo.content)}{$vo.content|strip_tags|mb_substr=0,180,'utf-8'}...{/if}</div>
  45. </div>
  46. </article>
  47. {/volist}
  48. {else /}
  49. <div class='xtu-search-empty'><h3>{:cms_t('search_empty_product_title','没有找到相关产品内容')}</h3><p>{:cms_t('search_empty_retry','可以尝试更换关键词重新搜索。')}</p></div>
  50. {/if}
  51. </div>
  52. </div>
  53. {elseif $defaultTab=='news' /}
  54. <div class="xtu-search-tab-panel is-active" data-panel="news">
  55. <div class="xtu-search-simple-list">
  56. {if !empty($list)}
  57. {volist name="list" id="vo"}
  58. <article class="xtu-search-simple-item">
  59. <a class="xtu-search-simple-media" href="{$vo.url}" title="{$vo.title}">
  60. {if !empty($vo.thumb)}<img src="{$vo.thumb}" alt="{$vo.title}">{else /}<div class="xtu-search-simple-placeholder">XTU</div>{/if}
  61. </a>
  62. <div class="xtu-search-simple-body">
  63. <div class="xtu-search-simple-meta"><span>{:getCategory($vo['catid'],'catname')}</span><span class="dot"></span><span>{$vo.publish_time|date='Y-m-d'}</span></div>
  64. <h2 class="xtu-search-simple-title"><a href="{$vo.url}">{$vo.title|cms_highlightKeyword=###,$q|raw}</a></h2>
  65. <div class="xtu-search-simple-desc">{if !empty($vo.description)}{$vo.description|cms_highlightKeyword=###,$q|raw}{elseif !empty($vo.content)}{$vo.content|strip_tags|mb_substr=0,180,'utf-8'}...{/if}</div>
  66. </div>
  67. </article>
  68. {/volist}
  69. {else /}
  70. <div class='xtu-search-empty'><h3>{:cms_t('search_empty_news_title','没有找到相关新闻内容')}</h3><p>{:cms_t('search_empty_retry','可以尝试更换关键词重新搜索。')}</p></div>
  71. {/if}
  72. </div>
  73. </div>
  74. {else /}
  75. <div class="xtu-search-tab-panel is-active" data-panel="help">
  76. <div class="xtu-search-help-list">
  77. {if !empty($list)}
  78. {volist name="list" id="vo"}
  79. <article class="xtu-search-help-item">
  80. <div class="xtu-search-help-meta">
  81. <span>{:getCategory($vo['catid'],'catname')}</span>
  82. </div>
  83. <h2 class="xtu-search-help-title">
  84. <a href="{$vo.url}">{$vo.title|cms_highlightKeyword=###,$q|raw}</a>
  85. </h2>
  86. <div class="xtu-search-help-desc">
  87. {if !empty($vo.description)}{$vo.description|cms_highlightKeyword=###,$q|raw}{elseif !empty($vo.content)}{$vo.content|strip_tags|mb_substr=0,180,'utf-8'}...{/if}
  88. </div>
  89. </article>
  90. {/volist}
  91. {else /}
  92. <div class='xtu-search-empty'><h3>{:cms_t('search_empty_help_title','没有找到相关帮助内容')}</h3><p>{:cms_t('search_empty_retry','可以尝试更换关键词重新搜索。')}</p></div>
  93. {/if}
  94. </div>
  95. </div>
  96. {/if}
  97. </div>
  98. {if !empty($pages)}
  99. <div class="xtu-search-pagination">{$pages|raw}</div>
  100. {/if}
  101. </div>
  102. </section>
  103. </main>
  104. {include file="footer" /}