api.onPageChange(() => {
// التحقق مما إذا كان العنصر بالمعرف 'topic' موجودًا
if ($('#topic').length > 0) {
// إذا كان العنصر 'topic' موجودًا، فابحث عن السمة 'data-user-id'
var userId = $('#topic article').data('user-id');
// التحقق مما إذا كانت السمة 'data-user-id' موجودة
if (userId !== undefined) {
// إجراء طلب API للحصول على معلومات المستخدم
apiReq(`admin/users/${userId}.json`, 'GET')
.then(data => {
// معالجة بيانات الاستجابة
console.log('عدد مشاركات المستخدم:', data.post_count);
// التحقق مما إذا كان للمستخدم قيمة في user_fields["1"]
if (data.user_fields && data.user_fields["1"]) {
// عرض حقل المستخدم داخل أول قسم 'names'
displayUserField(data.user_fields["1"]);
}
// عرض عدد المشاركات داخل أول قسم 'names'
displayPostCount(data.post_count);
})
.catch(error => {
// معالجة الأخطاء
console.error('خطأ في طلب API:', error);
});
} else {
console.log('لم يتم العثور على السمة data-user-id');
}
} else {
console.log('لم يتم العثور على عنصر بالمعرف "topic"');
}
});
// وظيفة لعرض حقل المستخدم داخل أول قسم 'names'
function displayUserField(userFieldValue) {
// البحث عن أول قسم 'names'
var firstNamesDiv = $('.names:first');
// إنشاء عنصر span بفئات 'user-title'
var userFieldSpan = $('<span></span>').addClass('user-title');
userFieldSpan.text(userFieldValue);
// إلحاق عنصر span بأول قسم 'names'
firstNamesDiv.append(userFieldSpan);
}
// وظيفة لعرض عدد المشاركات داخل أول قسم 'names'
function displayPostCount(postCount) {
// البحث عن أول قسم 'names'
var firstNamesDiv = $('.names:first');
// إنشاء عنصر span بفئات 'user-title'
var postCountSpan = $('<span></span>').addClass('user-title');
postCountSpan.text(postCount + ' posts');
// إلحاق عنصر span بعدد المشاركات بأول قسم 'names'
firstNamesDiv.append(postCountSpan);
}
للحصول على قيمة post_count عند عرض منشور أو بطاقة مستخدم، من الضروري تسلسل البيانات لتضمين هذا الحقل. لا يمكن تحقيق ذلك إلا بمساعدة إضافة، والاعتماد على الطلبات لكل مستخدم ليس حلاً واقعياً.
جرب ذلك. الجزء الخاص بـ JavaScript موجود في assets إذا كنت ترغب في إلقاء نظرة.
شيء واحد محدد قد تكون قد أغفلته عند استخدام واجهة برمجة التطبيقات (API) هو القدرة على التخصيص عبر outlets.
أخبرني إذا كنت تريد المزيد من الخيارات.
لا أعرف ما إذا كان ينبغي لي إصدار هذه الإضافة لأنها صغيرة، ولكن ها هي على أي حال:
شكراً جزيلاً على هذا الجهد. سأجربه.
كانت خطتي الفعلية هي تحقيق الميزة التالية:
عرض عدد منشورات المستخدم في المنشورات والتعليقات بجوار الصورة الرمزية.
تعيين عنوان افتراضي لجميع أعضاء المجموعة (مثل: مسؤول).
عرض مستوى الثقة بجوار الصورة الرمزية.
عرض شارة بجوار الصورة الرمزية.
عرض قيمة حقل مستخدم بجوار الصورة الرمزية.
ويمكن للمسؤول تغيير الخيارات.
كما خططت لربط عدد المنشورات تشعبياً حتى يتمكن الآخرون من النقر لرؤية قائمة المنشورات.
على الرغم من أن هذا مكون إضافي صغير، إلا أنني أعتقد أنه يستحق النشر. قد تفكر في إضافة ميزات جديدة كما هو مقترح.
شكراً لك.
أنا في الواقع أحاول الحصول على شيء مثل postCount + TopicCount
ببساطة أريد عد المواضيع كمنشورات.
أحاول أيضًا إظهار ذلك بعد عنوان المستخدم (إذا كان لديه أي). لقد حاولت تعديل كود المكون الإضافي (بعد نسخه) ولكن لم أنجح حتى الآن.
لا يمكنني التعديل، لذلك قمت بتثبيت المكون الإضافي واختبرته، وهو يعمل بشكل جيد جدًا. باستثناء الهاتف المحمول، حيث يتم عرض العدد الإجمالي للمشاركات على يسار الاسم.