سؤال

كيف يمكنني تغيير Kentico CMS إعدادات البحث لعرض جزء من النص من نتائج البحث كما في Google؟ في الوقت الحاضر يظهر فقط المسار في النتائج.

هل كانت مفيدة؟

المحلول

يعتمد ذلك على كيفية إعداد البحث الخاص بك حقًا.

على مستوى الصفحة إذا كنت تستخدم طراز Engine Portal ، الذي يستخدمه غالبية الأشخاص الآن ، يجب عليك التحقق من عنصر واجهة المستخدم التي تستخدمها ، بشكل أساسي يتلخص في بحث منتظم أو بحث ذكي.

إذا كنت تستخدم نموذج قالب ASPX ، فقد تضطر إلى فتح مصدرك للصفحة ومعرفة ملف USERCONTROL الذي تستخدمه من ~/cmswebparts/search/أو ~/cmswebparts/smartsearch/

بمجرد معرفة التحكم في المستخدم الذي تستخدمه ، فإنه مسألة فحص التحول الذي يستخدمه. على الأرجح ستستخدم واحدة مما يلي:

cms.root.searchresults cms.root.smartsearchresults cms.root.smartsearchResultswithimages

انقر على تحرير التحويل وتحقق من الحقل الموجود داخل المكالمة إلى SearchHighlight ، عادة ، "المحتوى". ثم تعلم أنها تسحب من المحتوى الرئيسي للمستند. لقد رأيت أيضًا أن هذا مرتبط بحقل مختلف مثل "العنوان" أو "التسمية التوضيحية". لكن الافتراضي هو "المحتوى".

إذا كنت لا تزال لا ترى نتائج مع جزء من النص ، فتأكد من أن لديك إعداد فهرس البحث الذكي ، الموجود في CMSIteManager -> Administation -> البحث الذكي. إذا لم تر موقعك في قائمة الفهرس ، فأنت بحاجة إلى إضافة موقع. تأكد من إعادة بنائه وتحسينه (انقر فوق تحرير على الصف للوصول إلى هذه الخيارات). بعد ذلك يتم إعادة بناء كل ذلك ، يجب أن ترى النص يظهر تحت النتيجة.

نصائح أخرى

شيء واحد يجب ملاحظته ، هو أنه كما ذكر @Jao ، فإن هذا لا يأخذ سوى 280 حرفًا من محتوى الصفحة. إذا كنت تتطابق مع نص البحث ، فلن يحدث في أول 280 حرفًا ، فلن يحدث أي تسليط الضوء.

جرب ما يلي في تحويل نتيجة البحث الخاصة بك:

<p>
<%# SearchHighlight(HTMLHelper.HTMLEncode(TextHelper.LimitLength(HttpUtility.HtmlDecode(HTMLHelper.StripTags(GetSearchedContent(DataHelper.GetNotEmpty(Eval("Content"),"")),false, " ")), 280, "...")),"<span style=\"background-color: #FEFF8F\">","</span>") %>
</p>

سيظهر هذا أول 280 حرفًا من المحتوى الخاص بك ، مع تمييز مصطلحات البحث.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top