it-swarm.asia

تعديل الملفات الأساسية وورد

لماذا ا؟

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

لا تخترق الأساسية.

لماذا هو عموما فكرة سيئة لتغيير الملفات الأساسية؟

يعتبر؟

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

ماذا؟

لقد فكرت في جميع الخيارات ، ولكن الحل الوحيد هو اختراق الملفات الأساسية. كيف يجب أن تذهب حول القيام بذلك؟ كيف سيؤثر وجود نواة تم تغييرها على سير العمل ، مثل التحديث؟

21
googletorp

إذا كنت يجبالاختراق الأساسية ، فكر في القيام بذلك بطريقة تجعلها قابلة للمد للآخرين.

إضافة هوك العمل

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

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

Refactor ملف أساسي

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


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

القرصنة الأساسية هي الطريقة التي يتطور بها WordPress ويتطور ، لكنه أمر خطير بالنسبة لشخص يتعلم فقط PHP أو بدون خبرة في العمل مع WP الملفات. يرجى البدء بمكون إضافي قبل لمس المكونات الأساسية - إذا قمت بفك المكونات ، فيمكنك إلغاء تثبيته بسرعة (الإزالة عبر بروتوكول نقل الملفات إذا لزم الأمر) ... ولكن إذا قمت بقطع المكونات الأساسية ، فقد تحدث أشياء سيئة لموقعك ومن المحتمل أن تكون في موقعك قاعدة البيانات كذلك.

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

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

21
EAMann

لا تخترق الأساسية.

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

بالتأكيد ، اختراق الأساسية!

بالتأكيد يمكنك بالفعل اختراق الأساسية ، على سبيل المثال باستخدام نظام إدارة الإصدار مثل SVN. يساعدك على الحفاظ على التغييرات الخاصة بك على التعليمات البرمجية الأساسية بما يتماشى مع تحديثات المشروع. كما أنه يساعد على إنشاء تصحيحات لبرنامج WordPress وإرسالها إلى المشروع.

القرصنة الأساسية هي في الواقع صنع وورد تتطور.

الاعتبارات

إذا كنت لا ترغب في تثبيت SVN كامل ولا تزال تعرف أي (بعض) الملفات التي قمت بتغييرها ، يمكنك استخدام المزيد من الأدوات ذات المستوى المنخفض مثل Diff/Merge (للفوز: WinMerge ) أو المحررين الذين لديهم قدرات مقارنة (على سبيل المثال Notepad ++ مع قارن Plugin ). على Linux ، يمكنك بسهولة تثبيت أدوات مساعدة لسطر الأوامر تفعل الشيء نفسه. محرر Geany يأتي مع تكامل Nice Shell راجع للشغل. .

أنا أفضل Eclipse PDT للوظائف الشاقة. ولكن هذا ليس من أجل التحرير السريع أو الاختراق.

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

3
hakre

القضايا هي:

  1. في كل مرة تقوم فيها بإجراء تحديث للجوهر (على سبيل المثال بسبب إصلاح الأمان ، وما إلى ذلك) ، سيتعين عليك تحديثه يدويًا ، بدلاً من تشغيل التحديث التلقائي.
    إذا كنت ترغب في القيام بذلك ، فقم بتيسير الحياة على نفسك:
    • حدد كل تغيير بعلامة شائعة (مثل: // PATCH START و // PATCH END)
    • استخدم أداة مثل WinMerge لمقارنة المصدر الحالي بالمصدر الجديد ، ونسخ عبر التغييرات التي يلزمك فيها.
    • سيتعين عليك الانتباه في حالة تغير مساحة الشفرة التي تنسخها وإجراء التغييرات المناسبة على تصحيحاتك
    • انتبه إلى أن هذه وظيفة "لا تنتهي" ، وتستغرق وقتًا مستحقًا للفوترة ، ما لم تتمكن من إعادة تعبئة عميلك.
  2. قد تتسبب في حدوث مشكلات عدم توافق مع المكونات الإضافية التي تتوقع أن يعمل الجهاز بطريقة معينة - وهذا سيتطلب اختبارًا إضافيًا

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

2
Dan Smart