> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aftersell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# تعذّر تمرير صفحة المتجر عند إغلاق Upcart

> توضح هذه المقالة كيفية إصلاح مشاكل تمرير صفحة المتجر التي تحدث بعد إغلاق Upcart.

<div id="overview">
  ## نظرة عامة
</div>

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

يمكنك إصلاح ذلك باستخدام الإعدادات المدمجة داخل Upcart أو بإضافة تخصيص صغير لإزالة سلوك قفل التمرير.

***

كيفية الإصلاح

<div id="using-built-in-solutions">
  # استخدام الحلول المدمجة
</div>

في معظم الحالات، يمكن للخيارات المدمجة في إعدادات Upcart حل مشاكل التمرير دون الحاجة إلى كود مخصص.

1. **فعّل "Override existing scroll locking logic"**:

   * افتح Cart Editor في إعدادات Upcart.
   * انتقل إلى **Settings** → **Cart settings**، ثم وسّع **Advanced Settings**.
   * فعّل **Override existing scroll locking logic**. يغطي وصفه هذه الحالة بالضبط: قالب أو تطبيق خارجي يترك الصفحة مقفولة التمرير بعد إغلاق السلة.

   لا يوجد إعداد منفصل للتمرير على الجوال أو الطبقات العلوية — مربع الاختيار الواحد هذا يغطي الحالتين.

اتبع هذه الخطوات لتطبيق تخصيص يعيد تمرير الصفحة بعد إغلاق السلة.

***

<div id="accessing-custom-html-settings">
  ## الوصول إلى إعدادات Custom HTML
</div>

1. افتح **تطبيق Upcart** من لوحة تحكم Shopify.
2. انتقل إلى **Cart Editor**.
3. افتح **Settings** واختر علامة التبويب **Custom HTML**. الإعدادات عبارة عن صف من علامات التبويب — إذا لم ترَ Custom HTML، فهي خلف **More settings**.

***

<div id="adding-the-code">
  ## إضافة الكود
</div>

1. للحالات المتقدمة أو الخاصة التي لا تحلها الحلول المدمجة، يمكنك تطبيق كود HTML مخصص في Upcart. اختر مكان تطبيق كود HTML في Upcart. لهذا الإصلاح، اختر القسم **Above Announcements/Rewards**.
2. أضف مقتطف الكود التالي:

```
<script>  
window.upcartSubscribeCartOpened(() => {  
  var elementLockingThePage = document.querySelector('body');  
  if (elementLockingThePage != null) {  
    elementLockingThePage.setAttribute('style', 'overflow-Y:hidden !important');  
  }  
});  
window.upcartSubscribeCartClosed(() => {  
  var elementLockingThePage = document.querySelector('body');  
  if (elementLockingThePage != null) {  
    elementLockingThePage.setAttribute('style', 'overflow-Y:scroll !important');  
  }  
});  
</script>
```

<Note>
  **ملاحظة قديمة:** ما زالت دوال الاستدعاء `window.upcartOnCartOpened` و`window.upcartOnCartClosed` تعمل لكنها مهملة وتسجّل تحذيرات في وحدة التحكم. استخدم `upcartSubscribeCartOpened` و`upcartSubscribeCartClosed` لجميع النصوص البرمجية الجديدة.
</Note>

1. احفظ تغييراتك.
2. حدّث واجهة متجرك واختبر إغلاق السلة للتأكد من استعادة التمرير.

***

<div id="why-this-happens">
  ## لماذا يحدث هذا
</div>

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

يستعيد النص البرمجي أعلاه سلوك التمرير الطبيعي عن طريق إعادة ضبط خاصية overflow للصفحة يدويًا عند فتح السلة أو إغلاقها.

***

هل تحتاج إلى مساعدة أو مزيد من استكشاف الأخطاء

<div id="additional-steps-before-contacting-support">
  # خطوات إضافية قبل التواصل مع الدعم
</div>

1. تأكد من تفعيل **Override existing scroll locking logic**.
2. تحقق مرة أخرى مما إذا كان كود مخصص أو نصوص برمجية خارجية قد تتداخل.

إذا كنت لا تزال تواجه مشاكل في التمرير بعد تطبيق الإصلاح، فقد يستخدم قالبك محددًا مختلفًا أو منطق تمرير مخصصًا.

تواصل مع **دعم Upcart** للمساعدة في تحديد المحدد الصحيح، أو تواصل مع **مطوّر القالب** للمساعدة في تعديل إعدادات التمرير في قالبك.
