على الرغم من أن البحث الذي يأتي مع WordPress يمكنه البحث عن بعض الأشياء، إلا أنه في بعض الأحيان لا تكون نتائج البحث مرضية بالضرورة، ولا يوجد بحث مشترك أو بحث غامض، لذلك يتعين عليك أحيانًا تحديد كلمات رئيسية دقيقة للحصول على نتائج البحث. علاوة على ذلك، يعتمد البحث الذي يأتي مع WordPress بشكل كبير على استعلامات قاعدة بيانات MysqL، والتي يمكن أن تستغرق وقتًا طويلاً إذا كانت قاعدة البيانات كبيرة.
ليس من الصعب استبدال البحث الافتراضي في WordPress. الأشخاص الذين يعرفون هذا الفن يعرفون بشكل أساسي أن الموقع:wzfou.com xxx يمكنه البحث عن محتوى موقع الويب المحدد، وقد أطلق Baidu وGoogle عمليات بحث مخصصة، مما يعني الموقع:wzfou. com.com xxx مضمن مباشرة في الموقع ويمكن للمستخدمين رؤية النتائج دون الانتقال إلى Baidu وGoogle بعد النقر على "بحث".
ومع ذلك، يعتمد البحث المخصص في بايدو وجوجل على فهرس محرك البحث بالنسبة للمواقع الجديدة التي تحتوي على فهارس قليلة، في بعض الأحيان لا يمكن البحث عن مقالات جديدة، مما يؤثر على تجربة المستخدم. ونتيجة لذلك، وُلد Elasticsearch، وهو محرك بحث مجاني مفتوح المصدر ومُصمم ذاتيًا، وهو محرك بحث وتحليل بيانات موزع وقابل للتطوير وفي الوقت الفعلي يمكنه التعامل مع البحث في النص الكامل والإحصائيات في الوقت الفعلي للبيانات المنظمة. .
ستشارك هذه المقالة كيفية دمج Baidu وبحث Google المخصص والبحث المبني ذاتيًا في Elasticsearch مع WordPress. تتضمن المزيد من المقالات حول إنشاء موقع WordPress وتحسين WP ما يلي:
- تجربة تحسين Linux php-fpm-تستهلك عملية php-fpm ذاكرة كبيرة ولا تسبب مشاكل في الذاكرة
- يضيف WordPress أمثلة على إنتاج زر مكافأة Alipay وWeChat ورابط مكافأة Paypal.me
- يوصى بخمسة برامج قراءة RSS ممتازة - مع مجموعة من كبار برامج قراءة RSS المحلية والأجنبية
ملاحظة: تم التحديث في 1 سبتمبر 2019، يمكن للأصدقاء الذين لا يريدون إزعاج عمليات البحث المخصصة في Baidu وGoogle تجربة محرك البحث الممتاز التابع لجهة خارجية في الموقع: استخدم Algolia لإضافة الوقت الفعلي إلى -وظيفة البحث في الموقع إلى WordPress-Search بجودة أعلى ومحتوى أكثر دقة.
ملاحظة: تم التحديث في 2 ديسمبر 2019، إذا كنت ترغب في إنشاء بحث مجاني أكثر قوة وأسرع في الموقع، فيمكنك أيضًا تجربة
1. محرك البحث بايدو في الموقع
موقع إلكتروني:
- HTTPS://resource.baidu.com/color/wiki/introduce
1.1 استخدام محرك البحث بايدو في الموقع
الخطوة الأولى هي إضافة اسم مجال موقع الويب الذي تريد استخدامه إلى محرك بحث Baidu.
2.1 استخدام بحث Google المخصص
قم أولاً بتسجيل الدخول إلى صفحة بحث Google المخصص الرسمية، ثم انقر فوق لإنشاء بحث مخصص جديد.
الخطوة التالية هي تعيين عنوان URL الذي تريد فهرسته وتسميته وما إلى ذلك. (اضغط للتكبير)
بمجرد إنشائه، يمكنك النقر للحصول على الرمز.
يوفر البحث في موقع Google أيضًا إعدادات المظهر وتحسين نتائج البحث ووظائف أخرى، والتي يمكنك ضبطها وفقًا لاحتياجاتك. (اضغط للتكبير)
يتيح لك بحث Google المخصص تثبيت نتائج بحث محددة والإكمال التلقائي والمرادفات والمزيد.
هذا هو تأثير البحث الخاص ببحث Google المخصص، كما أن تضمينه في صفحة ويب قد يتأثر أيضًا بـ CSS الأصلي، لذا تحتاج إلى تحسينه بنفسك. (اضغط للتكبير)
يمكن لبحث Google المخصص أيضًا البحث عن الصور، وهو أمر قوي حقًا.
2.2 لا يعرض بحث Google المخصص المشكلة
لأسباب معروفة، لا يمكن عرض بحث Google المخصص بشكل صحيح في الصين، فكيف يمكن حل هذه المشكلة؟ الطريقة الممكنة هي استخدام التوليد العكسي (راجع: الربط العكسي لـ Nginx)، أو توطين الملفات ذات الصلة بالبحث المخصص في Google. ومن الصعب تنفيذها...
يمكن بالفعل استضافة بحث Google المخصص، مع التأثيرات التالية:
- HTTPS://color.Google.com/color/public URL?appear=011545314673148308753:3 ولا يمكن تدمير 6-KFC
3. Elasticsearch البحث الذاتي
موقع إلكتروني:
- HTTPS://wuwuwu.elastic.co
3.1 قم بتثبيت Elasticsearch
لتثبيت Elasticsearch، يمكنك الرجوع بشكل أساسي إلى البرنامج التعليمي الرسمي، وفيما يلي مرجع مباشر لطريقة تثبيت imququ.com:
كل من الجهاز الظاهري والبيئة عبر الإنترنت هما Ubuntu 14.04.4 LTS، ويستخدم Elasticsearch أحدث إصدار. قبل أن يبدأ كل شيء، تحقق أولاً من تثبيت بيئة Java على الجهاز. وإذا لم يكن الأمر كذلك، فيمكنك تثبيتها من خلال الأمر التالي:
sudo apt-get install openjdk-7-jre-headless
قم بتنزيل الحزمة المضغوطة Elasticsearch 2.3.0 وقم بفك ضغطها:
wget -c https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/zip/elasticsearch/2.3.0/elasticsearch-2.3.0.zip unzip elasticsearch-2.3.0.zip
أعد تسمية الدليل elasticsearch-2.3.0
الذي تم فك ضغطه إلى ~/es_root
(لا توجد قيود على الاسم والموقع، يمكنك نقله إلى أي مكان تعتقد أنه مناسب). لا يتطلب Elasticsearch التثبيت ويمكن تشغيله مباشرةً (ملاحظة: لا يمكن تشغيله باستخدام الحساب الجذر):
BASHcd ~/es_root/bin/ chmod a+x elasticsearch ./elasticsearch
إذا لم تتم طباعة أي رسالة خطأ على الشاشة، فقد تم بدء تشغيل خدمة Elasticsearch بنجاح. قم بإنشاء محطة جديدة واستخدم الضفيرة للتحقق:
BASHcurl -XGET http://127.0.0.1:9200/?pretty { "name" : "Melissa Gold", "cluster_name" : "elasticsearch", "version" : { "number" : "2.3.0", "build_hash" : "8371be8d5fe5df7fb9c0516c474d77b9feddd888", "build_timestamp" : "2016-03-29T07:54:48Z", "build_snapshot" : false, "lucene_version" : "5.5.0" }, "tagline" : "You Know, for Search" }
إذا رأيت المعلومات المذكورة أعلاه، فكل شيء طبيعي، وإلا، فيرجى العثور على السبب وفقًا لرسالة الخطأ التي تظهر على الشاشة. على الرغم من أن Elasticsearch نفسه مكتوب بلغة Java، إلا أنه يمكنه التفاعل مع العالم الخارجي من خلال واجهة RESTful، وهي مريحة للغاية.
افتراضيًا، لا يمكن الوصول إلى خدمة RESTful الخاصة بـ Elasticsearch إلا عن طريق الجهاز المحلي، مما يعني أنه لا يمكن الوصول إلى الخدمة الموجودة في الجهاز الظاهري من المضيف. لتسهيل تصحيح الأخطاء، يمكنك تعديل الملف ~/es_root/config/elasticsearch.yml
وإضافة السطرين التاليين:
network.bind_host: "0.0.0.0" network.publish_host: _non_loopback:ipv4_
ولكن لا تقم بتكوين بهذه الطريقة في بيئة الإنترنت، وإلا فيمكن لأي شخص تعديل بياناتك من خلال هذه الواجهة.
3.2 تثبيت تحليل IK
ستقوم أداة تجزئة الكلمات التي تأتي مع بحث Elasticsearch بفصل كل حرف صيني تقريبًا بشكل مباشر، دون تقسيم الكلمات وفقًا للمفردات. من أجل معالجة عمليات البحث الصينية، تحتاج أيضًا إلى تثبيت البرنامج الإضافي لتجزئة الكلمات الصينية. أنا أستخدم elasticsearch-analys-ik، الذي يدعم المعجم المخصص.
أولاً، قم بتنزيل البرنامج الإضافي elasticsearch-analys-ik الذي يتوافق مع Elasticsearch:
wget -c https://github.com/medcl/elasticsearch-analysis-ik/archive/v1.9.0.zip unzip v1.9.0.zip
بعد فك الضغط، انتقل إلى دليل التعليمات البرمجية المصدر للمكون الإضافي وقم بتجميع:
BASHsudo apt-get install maven cd elasticsearch-analysis-ik-1.9.0 mvn package
إذا سار كل شيء على ما يرام، فيمكن العثور على الملفات المترجمة في الدليل target/releases/
. قم بفك ضغطه وانسخه إلى الدليل المقابل لـ ~/es_root
:
mkdir -p ~/es_root/plugins/ik/ unzip target/releases/elasticsearch-analysis-ik-1.9.0.zip -d ~/es_root/plugins/ik/
يوجد ملف تكوين Elasticsearch-analogy-ik في الدليل ~/es_root/plugins/ik/config/ik/
، والعديد منها عبارة عن قوائم كلمات، ويمكنك تعديلها عن طريق فتحها مباشرةً باستخدام النص Editor. تذكر حفظها بتنسيق utf-8.
ابدأ الآن خدمة Elasticsearch. إذا رأيت رسالة مشابهة لما يلي، فهذا يعني أنه تم تثبيت المكون الإضافي لتحليل IK:
plugins [analysis-ik]
3.3 تكوين المرادفات
يأتي Elasticsearch مزودًا بمرشح مرادف يسمى المرادف. من أجل جعل IK والمرادف يعملان في نفس الوقت، نحتاج إلى تحديد محلل جديد، واستخدام IK باعتباره الرمز المميز والمرادف كمرشح. قد يبدو الأمر معقدًا، ولكن في الواقع كل ما عليك فعله هو إضافة قسم للتكوين.
افتح الملف ~/es_root/config/elasticsearch.yml
وأضف التكوين التالي:
YAMLindex: analysis: analyzer: ik_syno: type: custom tokenizer: ik_max_word filter: [my_synonym_filter] ik_syno_smart: type: custom tokenizer: ik_smart filter: [my_synonym_filter] filter: my_synonym_filter: type: synonym synonyms_path: analysis/synonym.txt
يحدد التكوين أعلاه محللين جديدين، ik_syno وik_syno_smart، اللذين يتوافقان مع استراتيجيات تجزئة الكلمات ik_max_word وik_smart الخاصة بـ IK على التوالي. وفقًا لوثائق IK، فإن الاختلافات بين الاثنين هي كما يلي:
- ik_max_word: سيتم تقسيم النص إلى أدق التفاصيل واستنفاد جميع المجموعات الممكنة؛
- ik_smart: سوف يقسم النص إلى تفاصيل أكثر خشونة؛
سيستخدم كل من ik_syno وik_syno_smart عامل تصفية المرادفات لتنفيذ تحويل المرادفات. لتسهيل الاختبار اللاحق، يوصى بإنشاء الملف ~/es_root/config/analogy/synonym.txt
وإدخال بعض المرادفات وحفظه بتنسيق utf-8. على سبيل المثال:
ua,user-agent,userAgent js,javascript 谷歌=>google
3.4 يدمج Elasticsearch WordPress
البرنامج المساعد ووردبريس:
1. إلاستيكبريس: https://wordpress.org/plugins/elasticpress/
2. بحث WP باستخدام Elasticsearch: https://wordpress.org/plugins/db-search-with-elasticsearch/
يمكن أن يساعدنا هذان المكونان الإضافيان لـ Elasticsearch WordPress في دمج بحث Elasticsearch في WordPress أولاً، قم بتنشيط المكون الإضافي، ثم انتقل إلى صفحة إعدادات المكون الإضافي لملء المعلومات المتعلقة بخادم Elasticsearch. (اضغط للتكبير)
بعد ذلك يمكنك مزامنة مقالات وصفحات WordPress مع خادم Elasticsearch وبدء الفهرسة.
4. ملخص
يعد محرك بحث Baidu الموجود في الموقع مناسبًا لمواقع الويب التي لا تستخدم HTTPS والتي تحتوي على فهرس Baidu كبير. ومن غير الملائم جدًا للمواقع والمواقع الجديدة التي تستخدم HTTPS استخدام محرك بحث Google المخصص في الموقع من Baidu الأصدقاء والأصدقاء المحليين توقفوا عن الإزعاج.
يعد البحث المبني ذاتيًا في Elasticsearch أداة جيدة جدًا ذات وظائف قوية. يعد البحث عن النص الكامل لـ WordPress بمثابة "اختبار صغير". يمكن لـ Elasticsearch فهرسة المستندات والبحث فيها وفرزها وتصفيتها، ويمكنها إجراء عمليات بحث معقدة عن النص الكامل .