در این آموزش قصد داریم شما را با ساخت قالب وردپرس از پایه به کمک Underscores آشنا کنیم. به شما خواهیم گفت که چه فایل هایی در «قالب پایه ی Underscores» وجود دارد و کدهای درون آن را نیز بررسی خواهیم کرد. در پایان آموزش شما دانش اولیه برای استفاده از قالب پایه ی Underscores را خواهید داشت و خواهید توانست که با آن شروع به ساخت قالب وردپرس از پایه کنید.
قبل از این که شروع به توضیح درباره Underscores کنیم، باید تفاوت بین «قالب پایه» و «فریمورک قالب وردپرس» برای شما روشن باشد.
در ابتدا باید گفت که هر دو مورد (Starter Theme و Theme Framework) می توانند بر روی وردپرس نصب شوند و مثل بقیه ی قالب ها (Theme) نقش یک قالب یا پوسته ی وردپرسی را ایفا کنند. هر دوی این موارد برای این ساخته شده اند که نقش یک زیرساخت برای ساخت قالب های وردپرسی کامل را ایفا کنند.
قالب های پایه یا قالب های زیرساختی (Starter Theme) به عنوان یک قالب کامل برای سایت استفاده نمی شوند. این قالب ها دارای عملکردهای اولیه ی یک قالب وردپرسی هستند و فاقد هرگونه تنظیمات پیشرفته و استایل های خاص می باشند. این قالب ها حداقل کد لازم برای شناخته شدن به عنوان قالب را دارا می باشند. در حقیقت برای ساختن یک قالب با استفاده از «قالب پایه» یا Starter Theme، باید کدها و فایل هایی به این قالب پایه و ابتدایی اضافه کنید. Underscores هم یکی از همین قالب های پایه است که دارای تعدادی فایل و کد اولیه برای شروع ساخت قالب وردپرسی می باشد.
در عوض یک «فریمورک قالب» دارای عملکردها و کدهای بیشتری نسبت به «قالب پایه» می باشد. مثلا علاوه بر فایل ها و کدهای اولیه، سئوی داخلی، قابلیت های اشتراک گذاری، متا تگ ها و غیره در یک «فریمورک قالب» یا Theme Framework وجود دارد. در حقیقت برای ساختن یک قالب با استفاده از Theme Framework شما باید یک زیرپوسته بسازید و از Theme Framework به عنوان قالب پدر یا parent theme برای آن استفاده نمایید. پس باید کدهای زیرپوسته یا Child Theme را ویرایش کنید، نه کدهای خود قالب را (theme framework).
برای ساخت قالب وردپرس از پایه به سایت underscores.me بروید و در آنجا نامی برای قالب خود انتخاب و سپس بر روی کلید generate کلیک کنید.
نامی که برای قالب خود انتخاب می کنید در تمام فانکشن های مورد نیاز جایگذاری خواهد شد. به عبارت دیگر این نام، نام قالب خواهد بود که در آینده با استفاده از این قالب پایه می سازید. این نام درون فانکشن ها و کدهای فایل های قالب مورد استفاده قرار خواهد گرفت. بنابراین حتما با دقت زیاد و با توجه به استاندارد های وردپرس این نام را انتخاب کنید.
اولین نکته ای که باید رعایت کنید این است که از یک دامنه و هاست واقعی برای طراحی و توسعه ی قالب های وردپرسی استفاده نکنید. توصیه می شود که از یک لوکال هاست (localhost) برای تست کردن قالب بهره ببرید. یک محیط توسعه ی محلی یا لوکال هاست بر روی کامپیوتر خود راه اندازی کنید و وردپرس را در آن نصب کنید تا بدین وسیله بتوانید قالبی را که از underscores دانلود کردید را ویرایش کرده و به صورت زنده نمایش دهید و تست کنید.
همچنین برای خطایابی و راحتی در توسعه ی قالب خود می توانید از افزونه های زیر نیز استفاده کنید (آن ها را در وردپرس لوکال هاست خود نصب کنید)
زمانی که یک برگه یا پست در وردپرس ایجاد می شود، وردپرس id مخصوصی به آن اختصاص می دهد که نشان دهنده ی نوع آن محتوا خواهد بود (انواعی مثل post و page و attachment و غیره).
هربار که محتوایی می خواهد نمایش داده شود، نوع آن بررسی می شود و فایل php مخصوص به آن محتوا برای نمایش انتخاب می شود. مثلا اگر نوشته (post) باشد، با استفاده از فایل مخصوص به آن نمایش داده می شود و اگر محتوای ما یک برگه (page) باشد هم با استفاده از فایل تعریف شده برای آن، به نمایش گذاشته خواهد شد.
تگ های الگو (Template tags) فانکشن هایی هستند که برای ایجاد اطلاعات پویا در فایل های قالب مورد استفاده قرار می گیرند. در حقیقت این فانکشن ها نحوه ی نمایش اطلاعات بوسیله ی آن فایل را مشخص می کنند.
برای مثال، زمانی که نوشته ای (post) با id به شماره 1288 برای نمایش فراخوانی می شود، وردپرس از فایل single.php برای نمایش این محتوا استفاده خواهد کرد. درون این فایل Template tag یا فانکشن هایی وجود دارند که نحوه ی نمایش اطلاعات را مشخص می کنند.
قبل از این که به طراحی قالب های وردپرسی بپردازید باید دانش کافی در خصوص فانکشن ها،Template tagها و فایل های وردپرس داشته باشید. عکس بالا را نیز به دقت بررسی نمایید.
اطلاعات اصلی قالب مثل ادرس سازنده، نام سازنده، توضیحات قالب، دسته بندی های قالب و غیره درون کامنت های فایل style.css قرار دارند که می توانید آن ها را ویرایش کنید.
پس از ساخت قالب، یک اسکرین شات از قالب بگیرید و آن را به جای عکس screenshot.png موجود در underscores ذخیره کنید.
دسته بندی های موجود در کامنت های مذکور را باید با یک کاما از هم جدا کنید.
توضیحات بیشتر در خصوص کامنت های معرف قالب، و به طور کلی در رابطه با فایل style.css در آموزش های من موجود است. همچنین می توانید آموزش های بیشتری را راجع به طراحی قالب وردپرس را در آموزش های من پیدا کنید. لطفا نظرات و سوالات خود را در زیر همین پست به اشتراک بگذارید.
زمانی که محتوایی برای نمایش آماده می شود، وردپرس نوع آن محتوا را بررسی می کند و با یک فایل php خاص آن را به نمایش می گذارد. اگر محتوای مذکور با هیچ یک از فایل های وردپرس مثل index.php ، archive.php یا search.php مطابقت نداشته باشد، آنگاه محتوا با استفاده از این فایل به نمایش گذاشته می شود.
این فایل ها در دایرکتوری langueges این قالب پایه موجود می باشند. این فایل ها توسط کدهای درون functions.php بارگذاری می شوند. کدهایی مثل load_theme_textdomain این کار را می کنند. در بسیاری از اوقات هم ممکن است که نخواهید قالب را ترجمه کنید و این کار را به کاربر واگذار نمایید.
این فایل مربوط به عملکردهای وردپرس می شود و فانکشن های قالب را در بر دارد. در زیر به به برخی از فانکشنلیتی های این فایل اشاره می کنیم:
این دو فایل به صورت پیشفرض در functions.php انکیو (enqueue) نشده اند. با انکیو کردن هر یک از این دو فایل، سایت شما به دو بخش تقسیم می شود. بخش «محتوا» و بخش «سایدبار». اگر content-sidebar.css را انکیو کنید، سایدبار در سمت راست و محتوا در سمت چپ سایت قرار می گیرد. اگر sidebar-content.css را انکیو کنید سایدبار در سمت چپ و محتوا در سمت راست سایت قرار می گیرد.
برای کدهای هر دو فایل، کلاس هایی تعیین شده است. شما می توانید به این کلاس ها در فایل style.css استایل هایی بدهید و قالب خود را زیباتر کنید. کلاس های زیادی برای برگه های یک قالب وردپرسی وجود دارد. در شکل زیر به برخی از کلی ترین و مهم ترین کلاس ها اشاره کرده ایم.
تقریبا تمامی استایل های مربوط به قالب ما در این فایل قرار می گیرند. استایل هایی مربوط به متن ها (typography)، فرم ها (forms)، منوها (navigation)، ابزارک ها (widgets)، محتوای پست ها (content of posts)، برگه ها (pages)، کامنت ها (comments)، تگ های اچ تی ام ال (HTML elements)، و غیره.
دسته بندی استایل دهی ها در این فایل به شکل ذکر شده در بالا است. برای تغییر و استایل دهی به هر المان باید کلاس (Class)، آیدی (id) یا تگ (tag) آن را بفهمیم و سپس در فایل style.css به آن استایل دهی کنیم. برای این کار تسلط کافی به زبان CSS نیاز است.
قالب پایه Underscores به صورت پیشفرض به پست ها و برگه ها، تصویر شاخص اختصاص نمیدهد. شما باید این قابلیت را به صورت دستی به قالب خود اضافه کنید
همچنین این قالب پایه دارای فایلی جداگانه برای نمایش اطلاعات نویسنده (author.php) نیست و به جای آن از فایل archive.php استفاده می کند. لذا نیاز است تا خودتان فایل author.php را بسازید.
دایرکتوری root این قالب در عکس زیر نشان داده شده است. به طور کلی و با نادیده گرفتن فایل های sass، این قالب دارای 36 فایل با فرمت های مختلف (اکثرا css و php) می باشد.
قالب پایه Underscores توسط تیم توسعه ی خود وردپرس ساخته شده است. هر چند وقت یکبار این قالب پایه دستخوش تغییراتی می شود که باعث بهبود آن شده و به آرمان های این تیم نزدیک تر می شود. در این آموزش سعی کردیم به مهم ترین دایرکتوری ها و مهم ترین فایل ها اشاره کنیم. چه قالب پایه ای بهتر از این قالب که توسط خود تیم وردپرس ساخته شده و توسط این تیم پیشنهاد می شود؟! حتما فایل ها و کدهای تک تک دایرکتوری های این قالب را بررسی کنید و آن ها را به خوبی یاد بگیرید. در صورتی که به آموزش های Underscores علاقه مند هستید، در زیر همین پست اطلاع رسانی کنید تا مطالب بیشتری در اینباره قرار داده شود.
امیدوارم که آموزش ساخت قالب وردپرس از پایه درک اولیه و مناسبی از این قالب را برای شما ایجاد کرده باشد. سوالات و نظرات خود را در زیر همین مطلب بنویسید.
منبع: سایت QNimate
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.