أهلا وسهلا بك زائرنا الكريم في منتدى دعم PBBoard الرسمي، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .

كود تحويل عنوان الموضوع الى هاشتاغات



20-03-2025 05:48 مساءً
mc nabulsy
معلومات الكاتب
 يقدم هذا الموضوع كودًا برمجيًا مبتكرًا يعمل على تحسين تجربة المستخدم في منتديات PBBoard من خلال تحويل عناوين المواضيع إلى هاشتاجات قابلة للبحث بشكل ديناميكي. تم تطوير الكود من قبل منتدى انكور التطويري، وهو أحد أبرز المنتديات المتخصصة في تقديم حلول تقنية مبتكرة لتطوير وإثراء تجربة المستخدمين في المواقع والمنتديات الإلكترونية. يتميز هذا الكود بمرونة كبيرة في التعامل مع الكلمات الرئيسية واستخراجها من العناوين، مما يساهم في تسهيل الوصول إلى المواضيع ذات الصلة وتحسين محركات البحث الداخلية (SEO) للموقع. كما يقدم الكود العديد من الفوائد مثل تعزيز التفاعل بين المستخدمين، وتقليل وقت البحث عن المواضيع، وزيادة تنظيم المحتوى عبر الهاشتاجات التي تعمل كروابط مباشرة للبحث، مما يجعل الموقع أكثر احترافية وسهولة في الاستخدام.
معاينة الكود
كود تحويل عنوان الموضوع الى هاشتاغات
تركيب الكود
توجه نحو لوحة الادراة - التحكم بالقوالب - ادخل قالب Show_Subject وابحث عن السطر التالي:
Html

{if {$Info['attach_subject']}}
 {template}attach_show{/template}
 {/if} 


واضف الكود التالي اسفله او اي مكان آخر تريد ان تظهر في الهاشتاغات
Java

<div id="hashtags_{$subject_id}" class="hashtags-container">
 <script>
 (function() {
     function getThreadTitle() {
         const h1Element = document.querySelector('h1');
         if (h1Element) {
             return h1Element.textContent.trim();
         }
         const pageTitle = document.title;
         if (pageTitle) {
             const parts = pageTitle.split('|');
             if (parts.length > 0) {
                 return parts[0].trim();
             }
             return pageTitle.trim();
         }
         return '';
     }
 
     function convertToKeywords(text) {
         if (!text) return [];
         const words = text.split(/\s+/);
         return words
             .filter(word => word.length >= 3)
             .map(word => {
                 word = word.replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g, "");
                 if (word.length >= 3) {
                     return word;
                 }
                 return null;
             })
             .filter(tag => tag !== null);
     }
 
     function addHashtagsToPost(keywords) {
         if (keywords.length === 0) return;
         const hashtagsContainer = document.createElement('div');
         hashtagsContainer.className = 'hashtags-container';
         hashtagsContainer.style.marginTop = '20px';
         hashtagsContainer.style.paddingTop = '10px';
         hashtagsContainer.style.borderTop = '1px solid #eaeaea';
 
         keywords.forEach(keyword => {
             const hashtagLink = document.createElement('a');
             hashtagLink.href = "j‌avascript:void(0);";
             hashtagLink.textContent = `#${keyword}`;
             hashtagLink.style.marginRight = '8px';
             hashtagLink.style.textDecoration = 'none';
             hashtagLink.style.fontWeight = 'bold';
             hashtagLink.style.color = '#0066cc';
             hashtagLink.addEventListener('click', () => {
                 performSearch(keyword);
             });
 
             hashtagsContainer.appendChild(hashtagLink);
         });
 
         const statusDiv = document.getElementById('status_{$subject_id}');
         if (statusDiv) {
             statusDiv.appendChild(hashtagsContainer);
         }
     }
 
     function performSearch(keyword) {
         const searchInput = document.querySelector('input[name="keyword"]');
         if (searchInput) {
             searchInput.value = keyword;
             const event = new Event('input', { bubbles: true });
             searchInput.dispatchEvent(event);
             const searchButton = document.querySelector('button[type="submit"], input[type="submit"]');
             if (searchButton) {
                 searchButton.click();
             }
         } else {
             console.error("Search input not found!");
         }
     }
 
     function main() {
         const title = getThreadTitle();
         const keywords = convertToKeywords(title);
         if (keywords.length > 0) {
             addHashtagsToPost(keywords);
         }
     }
 
     if (document.readyState === 'loading') {
         document.addEventListener('DOMContentLoaded', main);
     } else {
         main();
     }
 })();
 </script>
 </div> 
 

بالتوفيق للجميع
والسلام ختام
تم تحرير الموضوع بواسطة :mc nabulsy بتاريخ: 20-03-2025 05:50 مساءً


look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 01:07 صباحاً   [1]
جنرال الحب
معلومات الكاتب
تمت تجربته 
حاولت تغيير مكانه اسفل المرفقات او فوق مسارات التنقل لاكن لا يتغيير مكانه 
وبارك الله في جهودك

look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 02:11 صباحاً   [2]
جنرال الحب
معلومات الكاتب
ملاحظة اخرى 
هذه الميزه تعمل فقط للاعضاء اي ان محركات البحث لن تستفيد منها الكود يحتاج تعديل :upset:
 

look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 02:59 صباحاً   [3]
mc nabulsy
معلومات الكاتب
المشاركة الأصلية كتبت بواسطة: جنرال الحب بتاريخ: 21-03-2025 02:11 صباحاًملاحظة اخرى 
هذه الميزه تعمل فقط للاعضاء اي ان محركات البحث لن تستفيد منها الكود يحتاج تعديل :upset:
 
 

ما فهمت اخي
ما بظهر للزوار؟
اذا قصدك عند الضغط المفترض تعدل صلاحيات الزوار من لوحة الادارة - المجموعات
للزوار بحيث يستطيعون البحث بالموقع

تم تحرير المشاركة بواسطة :mc nabulsy بتاريخ:21-03-2025 03:00 صباحاً


look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 03:01 صباحاً   [4]
جنرال الحب
معلومات الكاتب
نعم اخي لا يعمل إلا للاعضاء فقط 
عند الضغط على اي كلمة تخرج الرسالة التالية
رسالة إدارية
معلومات اسمك أو كلمة مرورك اللذان ادخلتهما غير صحيحين. رجاءً اضغط زر العودة للخلف, و أدخل البيانات الصحيحة ثم حاول مرة أخرى. إذا كنت نسيت كلمة المرور؟ اضغط هنا!

look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 03:01 صباحاً   [5]
جنرال الحب
معلومات الكاتب
البحث للزوار مفعل جرب بنفسك

look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 03:35 صباحاً   [6]
Soliman
معلومات الكاتب
 لاتعمل الروابط على الكلمات بشكل جيد ولا يظهر للزوار 
يبدو لي  نفس عمل الكلمات الدلالية التي تظهر اسفل الموضوع

لتعديله واضافته لكلمات عنوان الموضوع بعلامة الهشتاق #
 وربطه بمحرك بحث المنتدى مباشرة استخدم هذا الكود
CODE
<div style="margin-top: 20px; padding-top: 10px; border-top: 1px solid rgb(234, 234, 234);">
 <?php
 $yry = $PowerBB->_CONF['template']['keywords'];
 $c1 = explode(",",$yry);
 for ($i = 0; $i < sizeof($c1); $i++) {
 echo '<a href="index.php?page=search&amp;option=1&amp;keyword='.$c1[$i].'&amp;search_only=1&section=all&amp;sort_order=DESC" style="margin-right: 8px; text-decoration: none; font-weight: bold; color: rgb(0, 102, 204);">#'.$c1[$i].'</a>';
 }
 ?>
 </div>




ولربطه بالكلمات الدلالية للمنتدى مباشرة استخدم هذا الكود 
CODE
<div style="margin-top: 20px; padding-top: 10px; border-top: 1px solid rgb(234, 234, 234);">
 <?php
 $yry = $PowerBB->_CONF['template']['keywords'];
 $c1 = explode(",",$yry);
 for ($i = 0; $i < sizeof($c1); $i++) {
 echo '<a href="index.php?page=tags&amp;show=1&amp;tag='.$c1[$i].'" style="margin-right: 8px; text-decoration: none; font-weight: bold; color: rgb(0, 102, 204);">#'.$c1[$i].'</a>';
 }
 ?>
 </div>



الكود يوضع اسفل او اعلى هذا السطر في قالب: show_subject
CODE
{get_hook}show_subject_down_text{/get_hook}

 


  او يمكنك استخدام خاصية اضافة برنامج مساعد جديد 
من لوحة تحكم الإدارة» الإضافات البرمجية» إضافة برنامج مساعد جديد
واضافة الكود وربط الـ  Hook Name ب:  show_subject_down_text
 

look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 03:04 مساءً   [7]
جنرال الحب
معلومات الكاتب
المشاركة الأصلية كتبت بواسطة: Soliman بتاريخ: 21-03-2025 03:35 صباحاً لاتعمل الروابط على الكلمات بشكل جيد ولا يظهر للزوار 
يبدو لي  نفس عمل الكلمات الدلالية التي تظهر اسفل الموضوع

لتعديله واضافته لكلمات عنوان الموضوع بعلامة الهشتاق #
 وربطه بمحرك بحث المنتدى مباشرة استخدم هذا الكود
CODE
<div style="margin-top: 20px; padding-top: 10px; border-top: 1px solid rgb(234, 234, 234);">
 <?php
 $yry = $PowerBB->_CONF['template']['keywords'];
 $c1 = explode(",",$yry);
 for ($i = 0; $i < sizeof($c1); $i++) {
 echo '<a href="index.php?page=search&amp;option=1&amp;keyword='.$c1[$i].'&amp;search_only=1&section=all&amp;sort_order=DESC" style="margin-right: 8px; text-decoration: none; font-weight: bold; color: rgb(0, 102, 204);">#'.$c1[$i].'</a>';
 }
 ?>
 </div>




ولربطه بالكلمات الدلالية للمنتدى مباشرة استخدم هذا الكود 
CODE
<div style="margin-top: 20px; padding-top: 10px; border-top: 1px solid rgb(234, 234, 234);">
 <?php
 $yry = $PowerBB->_CONF['template']['keywords'];
 $c1 = explode(",",$yry);
 for ($i = 0; $i < sizeof($c1); $i++) {
 echo '<a href="index.php?page=tags&amp;show=1&amp;tag='.$c1[$i].'" style="margin-right: 8px; text-decoration: none; font-weight: bold; color: rgb(0, 102, 204);">#'.$c1[$i].'</a>';
 }
 ?>
 </div>



الكود يوضع اسفل او اعلى هذا السطر في قالب: show_subject
CODE
{get_hook}show_subject_down_text{/get_hook}

 


  او يمكنك استخدام خاصية اضافة برنامج مساعد جديد 
من لوحة تحكم الإدارة» الإضافات البرمجية» إضافة برنامج مساعد جديد
واضافة الكود وربط الـ  Hook Name ب:  show_subject_down_text
 
 
تم التعديل وجاري التجربة 
بارك الله في جهودكم 

look/images/icons/i1.gif كود تحويل عنوان الموضوع الى هاشتاغات
  21-03-2025 03:22 مساءً   [8]
mc nabulsy
معلومات الكاتب
مشكور أخي سليمان



المواضيع المتشابهه
عنوان الموضوع الكاتب الردود الزوار آخر رد
[مجابه] اثناء تحويلي لاستايل ظهر خطأ حيث لا يظهر عنوان الموضوع في "آخر مواضيعي" كاملا محمد الصاوي
10 1784 ezzeldean

الكلمات الدلالية






الساعة الآن 06:08 PM