CSS/HTML مخصص في سمة غير افتراضية (بدون مكون)

يسمح السمة الافتراضية بتخصيص CSS/HTML في إعداداتها.

كتجربة، أردت إخفاء المخطط الزمني، وتم تقديم اقتراح رائع للقيام بذلك باستخدام CSS (موضوع مختلف). كان الاقتراح هو تنفيذ الأسطر الأربعة كمكون سمة. ليس بالأمر الصعب، لكنني اعتقدت أن خيار CSS المخصص في السمة الافتراضية قد يكون أسهل.

لقد قمت بتغيير السمة الخاصة بي وأدرجت الأسطر الأربعة كـ CSS مخصص. وبالفعل نجح هذا بشكل مثالي.

هذا يجعلني أتساءل لماذا يتوفر هذا CSS/HTML المخصص (هنا فقط). ألن يكون من المنطقي أكثر أن يكون هذا كإعداد عام؟

من المحتمل أن يكون هناك أيضًا استخدام لـ CSS المخصص في سمة معينة، ولكن سيكون هناك فائدة أيضًا من إعداد عام، أليس كذلك؟

تعديل: مجرد إضافة رابط هنا للموضوع الرئيسي الذي يناقش CSS المخصص، والذي وصف نهج السمة “الافتراضية” المذكور أعلاه: Making custom CSS changes on your site

المكون المتصل بكل سمة هو نوع من الإعدادات العامة. ما الذي سيختلف إذا كان لديك علامة تبويب أو قسم أو مكون “رسمي” آخر لذلك؟

إعجاب واحد (1)

حسنًا، تعني المكون أنه يتعين عليك تحرير المكون، ثم تحديث المكون في مثيل Discourse الخاص بك.

للتوضيح، فإن سير عمل السمات والمكونات رائع للغاية. أعتقد فقط أنه قد يكون من المفيد تحرير أشياء CSS الصغيرة بشكل مباشر / مخصص.

إعجاب واحد (1)

آه… لا، لا تفعل. التغييرات تكون فورية بعد الحفظ.

أولاً، كنت تتحدث عن تغيير عام، والآن تقوم بتعديل سمة واحدة مباشرة. حسنًا، إذا كنت تجري تغييرات لسمة واحدة فقط، فسيكون من الجيد لو كان هناك خيار لكل سمة. ولكن عندما تكون تغييرات CSS في مكون واحد، يمكنك تعطيله بسهولة وسرعة عندما (وليس إذا…) تسوء الأمور بسبب خطأ، أو تعارض، أو ترقيات…

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

إعجاب واحد (1)

بالفعل، كان هذا هو السبب بالتحديد الذي جعلني أتساءل عن خيار CSS مخصص عام يعمل عبر السمات.

ولديك: المكون الذي يحمل تغييرات CSS.

أنا جديد لذا بالتأكيد أفتقد شيئًا ما.

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

أليس هذا هو الطريق الصحيح (أو الأسهل)؟

إعجابَين (2)

لماذا قد تفعل ذلك؟ إلا إذا كنت تخطط لمشاركته. ولكن لا مشكلة كبيرة - ثم تنقر على زر التحديث لمكونك.

أنا تائه قليلاً الآن. كيف ستضع تغييرات CSS الخاصة بك بسهولة أكبر في ملف CSS عام (سيكون هذا مكونًا أيضًا)؟ ماذا لو كنت ترغب في تغيير سمة Air، كيف تعتقد أنك ستقدم هذه التغييرات؟

إعجاب واحد (1)

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

إعجابَين (2)

ربما يكون من الأسهل أن أقدم مثالاً ملموسًا.

أريد إخفاء الخط الزمني (كمجرد تجربة)، وقد تلقيت مساعدة كبيرة من @merefield للقيام بذلك باستخدام CSS:

.topic-navigation {
  display: none
}

لهذه التجربة، أريد القيام بذلك على مستوى عالمي. إنها تجربة، لذا لا أحتاج إلى القيام بذلك بأكثر الطرق هيكلية / قابلة للتكرار / صحيحة تقنيًا.

المكون ليس مشكلة كبيرة. ولكن ما هو أقل مشكلة هو إعداد Edit CSS في السمة الافتراضية. لقد جربته وهذا يعمل بشكل مثالي.

ومع ذلك، أريد أن أرى ما يفكر فيه أعضاء مجتمعي، لكني أستخدم السمة zeronoise، التي لا تحتوي على إعداد Edit CSS.

سؤالي الآن هو، ألن يكون من المفيد أن يكون لدى Discourse طريقة للتلاعب قليلاً بـ CSS، بالطريقة التي يمكن بها ذلك إذا قمت بتعيين السمة Default.

للتوضيح، أفهم أن هناك حالة استخدام لـ Edit CSS خاصة بالسمة، لذا سيكون بالإضافة إلى Edit CSS في Default، وليس بدلاً من.

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

وشكراً لكم جميعاً على مشاركة أفكاركم. :pray:

بروح حك جلدك بنفسك أفكر في أخذ كود تعديل CSS/HTML من السمة الافتراضية وتعبئته في مكون سمة منفصل أو إضافة (مع الاحتفاظ بـ GPL-2 بالطبع).\n\nأعتقد أن المكون سيكون الأسهل.

الآن أنا تائه تمامًا.
يجب عليك استخدام مكون منفصل من صنعك لهذا الغرض. وهذا المكون هو إعداداتك العامة بمعنى أنك ستقوم بتمكينه في كل السمات التي تستخدمه.

بتغييرات CSS أساسية؟ أليس هذا مبالغًا فيه بعض الشيء؟

هذا هو السبب بالفعل الذي دفعني لبدء هذا الموضوع بأكمله.

كيف تقترح إجراء تغييرات CSS أساسية؟

تفضيل شخصي.

لا يوجد نظام للتحكم في الإصدارات في قائمة المسؤول.

إنها أيضًا طريقة لتحسين معرفتك.

إعجابَين (2)

مرحباً باستيان :slight_smile:

لا يمكنك تعديل HTML و CSS لسمة/مكون “خارجي” مباشرة لأن التغييرات سيتم الكتابة فوقها عند تحديث السمة/المكون. كان لا يزال ممكناً قبل حوالي سنتين أو ثلاث سنوات، ولكن تم إزالة هذه الميزة.

يمكنك إنشاء مكون محلي جديد مباشرة في واجهة Discourse لتجاوز CSS للسمة الحالية الخاصة بك (من علامة تبويب CSS الخاصة بالمكون)، أو إنشاء مكون جديد كمشروع GitHub ستقوم بتحديثه من خلال صفحة المكون (“تحديث” الزر في كل مرة يتم فيها تعديل المستودع).

هل أفهم ما تريد فعله بشكل صحيح وهل هذا يجيب على أسئلتك؟

إعجابَين (2)

مرحباً @Canapin رائع! شكراً لك.:pray: هذا بالضبط ما كنت أبحث عنه.

ربما يفسر هذا أيضاً سوء الفهم مع @Jagster، هناك طريقة مباشرة للقيام بما كنت أحاول القيام به، لكنني لم أكن على علم بأن هذا ينشئ مكوناً جديداً مباشرة من الواجهة (مما يسمح بتخصيص CSS).

ربما سيكون من المفيد إضافة هذا إلى الأدلة الرائعة حول السمات و/أو CSS بواسطة @Johani.

3 إعجابات