انکد قالب وردپرس بدون خراب شدن ساختار

انکد قالب وردپرس نسبت به افزونه ظرافت بیشتری می‌خواهد، چون وردپرس فایل‌های قالب را بر اساس نام و ساختار پیدا می‌کند. اگر فایل اشتباهی را انکد کنید، ممکن است قالب اصلا شناسایی نشود یا سفارشی‌ساز از کار بیفتد. در این مقاله می‌بینید کدام فایل‌ها باید دست‌نخورده بمانند و چطور خروجی سالم بگیرید.

این مقاله در یک نگاه

  • فایل style.css هرگز نباید انکد شود؛ وردپرس هدر قالب را از آن می‌خواند.
  • فایل‌های تمپلیت مثل single و page معمولا بهتر است خوانا بمانند.
  • functions.php و کلاس‌های منطقی بهترین گزینه برای انکدند.
  • سفارشی‌ساز و ویجت‌ها بعد از انکد باید کامل تست شوند.
  • قالب انکدشده روی هر هاستی با لودر فعال کار می‌کند.

تفاوت قالب با افزونه

وردپرس افزونه را از روی هدر فایل اصلی می‌شناسد، اما قالب را از روی فایل style.css و ساختار فایل‌ها. این تفاوت بنیادی، قواعد انکد را عوض می‌کند.

علاوه بر این، وردپرس از سیستمی به نام Template Hierarchy استفاده می‌کند: بسته به نوع صفحه، دنبال فایل با نام مشخصی می‌گردد (مثلا single.php یا archive.php). این فایل‌ها معمولا بیشتر ساختار نمایشی دارند تا منطق ارزشمند.

فایل‌هایی که نباید انکد شوند

فایلدلیل
style.cssوردپرس هدر و مشخصات قالب را از آن می‌خواند؛ اصلا PHP نیست
screenshot.pngتصویر پیش‌نمایش قالب
فایل‌های ترجمهساختار زبانی خراب می‌شود
assets شامل js و cssPHP نیستند
theme.jsonفایل پیکربندی است نه کد
تمپلیت‌های نمایشیمعمولا مشتری می‌خواهد سفارشی کند
مهم‌ترین نکته اگر style.css را دستکاری کنید، وردپرس قالب را نمی‌شناسد و در فهرست پوسته‌ها نمایش نمی‌دهد. این فایل باید کاملا دست‌نخورده بماند.

فایل‌هایی که ارزش انکد دارند

ارزش واقعی یک قالب حرفه‌ای معمولا در بخش‌هایی است که کاربر نمی‌بیند: پنل تنظیمات، کلاس‌های سازنده صفحه، منطق سفارشی‌سازی و اعتبارسنجی لایسنس.

  1. functions.php قلب منطق قالب؛ مهم‌ترین گزینه برای انکد.
  2. کلاس‌های داخل inc یا includes منطق کسب و کار و ابزارهای اختصاصی.
  3. کلاس اعتبارسنجی لایسنس اولویت اول از نظر محافظتی.
  4. پنل تنظیمات قالب بخشی که معمولا سرمایه‌گذاری زیادی رویش شده.

قاعده کلی همان است که در کدام فایل‌ها را نباید انکد کرد توضیح داده شده: منطق انکد شود، نمایش و داده خوانا بماند.

تست قالب انکدشده

قالب بیشتر از افزونه با هسته وردپرس تعامل دارد، پس تست کامل‌تری لازم دارد. این موارد را حتما بررسی کنید.

شناسایی قالب آیا در بخش پوسته‌ها با نام و تصویر درست ظاهر می‌شود؟

سفارشی‌ساز آیا تنظیمات باز می‌شود و تغییرات ذخیره می‌شود؟

انواع صفحات صفحه اصلی، نوشته تکی، آرشیو، برگه و صفحه ۴۰۴ را باز کنید.

ویجت‌ها و منوها آیا نواحی ویجت و منوها درست ثبت شده‌اند؟

مشکلات رایج

مشکلعلتراه‌حل
قالب در فهرست پوسته‌ها نیستstyle.css دستکاری شدهآن را دست‌نخورده بگذارید
سفارشی‌ساز خطا می‌دهدمبهم‌سازی نام کلاس‌هامبهم‌سازی را برای آن بخش غیرفعال کنید
تمپلیتی بارگذاری نمی‌شودنام فایل تغییر کردهنام فایل‌ها باید دقیقا حفظ شود
خطای needs to be installedلودر روی هاست فعال نیستراهنمای رفع خطا

برای مقایسه با فرایند افزونه، انکد افزونه وردپرس را ببینید و برای مشکلات عمومی وردپرس، مشکلات رایج انکد در وردپرس. اطلاعات فنی در سایت ionCube موجود است.

جمع بندی: در انکد قالب وردپرس، تفاوت اصلی با افزونه این است که وردپرس قالب را از روی style.css و نام فایل‌ها می‌شناسد. پس style.css و نام فایل‌های تمپلیت باید دست‌نخورده بمانند و تمرکز انکد روی functions.php و کلاس‌های منطقی و لایسنس باشد. بعد از انکد حتما شناسایی قالب، سفارشی‌ساز و همه انواع صفحات را روی یک وردپرس تازه تست کنید.

سوالات متداول

style.css را می‌توانم انکد کنم؟

خیر. وردپرس مشخصات قالب را از هدر این فایل می‌خواند و اصلا PHP نیست. اگر دستکاری شود، قالب شناسایی نمی‌شود.

تمپلیت‌ها را انکد کنم؟

معمولا نه. این فایل‌ها بیشتر ساختار نمایشی دارند و مشتری اغلب می‌خواهد سفارشی‌شان کند. تمرکز را روی functions و کلاس‌های منطقی بگذارید.

سفارشی‌ساز بعد از انکد خطا می‌دهد، چرا؟

معمولا به دلیل مبهم‌سازی نام کلاس‌هایی که به صورت رشته‌ای فراخوانی می‌شوند. مبهم‌سازی را برای آن بخش غیرفعال کنید.

قالب انکدشده روی همه هاست‌ها کار می‌کند؟

بله اگر ionCube Loader فعال باشد که روی اکثر هاست‌های اشتراکی فعال است یا با یک تیک فعال می‌شود.

نام فایل‌ها بعد از انکد تغییر می‌کند؟

خیر و نباید هم تغییر کند. وردپرس تمپلیت‌ها را از روی نام پیدا می‌کند، پس ساختار و نام فایل‌ها باید دقیقا حفظ شود.

مطالب مرتبط: انکد افزونه وردپرس · مشکلات انکد وردپرس · کدام فایل‌ها را انکد نکنیم