ما هي أفضل طريقة جديدة لتعديل مكون الثيم البعيد؟

منذ أشهر (أو ربما أكثر، لم أكن أبدًا على اطلاع كافٍ)، كان بإمكاننا تعديل HTML/CSS لأي مكون من مكونات السمة، وليس فقط المكون المحلي.

كان هناك تنبيه فقط يقول: «كن حذرًا، إذا تم تحديث هذا المكون، فسيتم مسح تعديلاتك».

بشكل منصف، أشعر بالحنين إلى هذا السلوك (أنا مسؤول المنتدى، ويجب أن أعرف ما أفعله، لدي ملف يحتوي على جميع التعديلات التي يجب عليّ إعادة تحديثها؛ الأمر شاق، لكن على الأقل يمكنني فعله).

لم يعد بإمكاننا فعل ذلك الآن؛ المكون الوحيد للسمة الذي يمكن لمسؤول المنتدى تعديله هو المكون الذي يكتبه مباشرة في Discourse، أو المكون الذي يمكنه الوصول إليه عبر مستودع Git الخاص به.

لذا، سؤالي هو:
إذا كنت بحاجة حقًا إلى تعديل بعض مكونات السمات الأخرى، فما أفضل طريقة للقيام بذلك؟

  • تفرع (Fork) مستودع Git الأصلي في مستودع Git جديد؟
    • الإيجابيات: من السهل نسبيًا إدارة تحديثات المكون الأصلي (TC).
    • السلبيات: الأمر أكثر شقًا مما كان عليه من قبل.
  • نسخ ولصق الملفات في مكون سمة محلي جديد؟
    • الإيجابيات: أقل شقًا (يتم كل شيء في مكان واحد).
    • السلبيات: لا يمكن إضافة بعض الملفات عبر لوحة الإدارة، أعتقد.
    • السلبيات: من الصعب متابعة تحديثات المكون الأصلي (TC).
  • الإبقاء على المكون الأصلي وإضافة مكون جديد يعدله؟
    • الإيجابيات: يتم التحديث تلقائيًا.
    • الإيجابيات: آمن نسبيًا.
    • السلبيات: يعمل لبعض التعديلات (مثل CSS) ولكن ليس لكل شيء (لا يمكن تعديل مكون Handlebars حقًا دون نسخ ولصق كل شيء).
    • السلبيات: ربما يكون ممكنًا، لكنه صعب عند تعديل الودجات (على الأقل، لم أجد طريقة لإضافة بضعة أسطر من الكود في ودجت).

ما هي اقتراحاتكم؟

أعتقد أنك تفهم. يبدو أن إضافة مكون سمة خاص بك مع تخصيصاتك هو الحل الأفضل لك.

سأختار بين «تفرع من مستودع Git الأصلي في مستودع Git جديد» و«الحفاظ على المكون الأصلي وإضافة مكون جديد يعدّل المكون الأصلي». إذا كانت التغييرات التي تجريها جوهرية بما يكفي، قم بتفرع مستودع المكون. أما إذا كانت التغييرات بسيطة تتعلق بالتنسيق فقط، فإن إنشاء مكون جديد يحتوي فقط على التعديلات البديلة هو الخيار المنطقي.