تشریح ساختار سلسله مراتبی قالب وردپرس، قسمت اول
- نویسنده : webelizer در دسته بندی آموزش و هک, وردپرس
- 1 نظر و 4,163 بازدید
- ۹۳/۱۰/۲۱
- ساختار درختی , ساختار سلسله مراتبی
در سیستم مدیریت محتوای وردپرس، صفحات ایجاد شده از فایل های الگوی مختلف به هم گره خورده اند. هر فایل الگو بخش دیگری از صفحه را نمایش داده، و به صورت ترکیبی، کل محتویات صفحات انحصاری استخراج شده از ادمین وردپرس را تشکیل می دهند.
به طور کلی، اینکه کدام فایل الگو به صورت واقعی انتخاب شده است وابسته به یک ساختار درختی محکم و واضح همراه با قوانین نام گذاری در ریشه خود است. در ساختار سلسله مراتبی یک الگوی پیشفرض، با فایل های الگو که اغلب مشخص تر هستند جایگزین شده است. اما بهتر است با ذکر یک مثال به شفافیت و درک بهتر موضوع بپردازیم. با ما همراه باشید.
.
.
فرض کنید یک کاربر صفحه ای به آدرس http://yoursite.com/author/jay را می بیند. در این حالت ابتدا سیستم وردپرس به دنبال فایل الگویی با برچسب author-jay.php در داخل ساختار درختی خود می گردد. آنگاه اگر فایل پیدا نشد به سراغ فایل author.php می رود. همینطور ساختار را کاوش می کند تا به فایل archive.php می رسد. در نهایت هم اگر این فایل نیز پیدا نشد از فایل index.php به منظور رندر کردن اجزای صفحه استفاده می کند. به طور کلی هر زمان که یک کاربر صفحه ای از وبسایت شما را ببیند سیستم داخلی وردپرس از بخش پایین ساختار سلسله مراتبی، به دنبال فایل الگوی مورد نظر می گردد تا آن را پیدا کند.
در این مقاله آموزشی قصد داریم کم کم شما را با آناتومی یک تم وردپرس آشنا کنیم و مرحله به مرحله درک شما را نسبت به اجزای مختلف و متفاوت سلسله مراتب الگو افزایش دهیم.
فایل های الگوی مورد نیاز:
اولین نکته ای که در مورد یک تم وردپرس باید خدمت شما عزیزان عرض کنیم این است که یک تم برای کارکرد صحیح و منطقی خود نیاز به یک سری فایل های خاص دارد. این فایلها تماماٌ فایل های الگو نیستند اما به طور کلی برای اینکه تم وردپرس به خوبی کار کند وجود این فایل ها الزامی است.
به عنوان مثال هر تم وردپرس برای کارکرد صحیح خود نیاز به دو فایل functions.php و style.css دارد. فایل اولی دارای لیستی از توابع است که به منظور سفارشی سازی وردپرس مورد استفاه قرار می گیرد. فایل بعدی نیز در کمترین حالت مورد انتظار، شامل اطلاعات پایه در مورد تم مانند نام تم، توضیحات و نام نویسنده و طراح آن می باشد. چون این فایل ها جز الگوها محسوب نمی شوند ما نیز در این مقاله زیاد به آنها نمی پردازیم اما به طور کلی بهتر است حداقل اطلاعات پایه در مورد این دو فایل داشته باشید.
به طور واقعی هر نوع فایل دیگری به غیر از این دو در ساختار پوشه تم شما، یک فایل الگو از انوع مختلفی خواهد بود که در دو یا چند گروه تجزیه شده اند. به طور کلی به دو دسته می توان آنها را تقسیم بندی کرد. یک سری فایل هایی که بیرون حلقه وجود دارند و یک سری دیگر که داخل حلقه هستند. WordPress loop یا حلقه وردپرس به منظور دریافت محتویات و داده ها از پست ها و صفحات شما مورد استفاده قرار گرفته و در نهایت نیز آنها را روی صفحات واقعی به نمایش می گذارد. در آینده در مورد این فایلها مفصلاٌ صحبت خواهیم کرد اما فعلاٌ لازم است بدانید که این نوع فایل ها در بیرون حلقه وردپرس قرار می گیرند. اگر به دنبال یک معرفی و مقدمه خوب در مورد اینکه حلقه ها چطور کار می کنند هستید می توانید مقالات آتی ما را دنبال کنید.
همانطور که ما به معرفی فایل های الگوی مختلفی که وردپرس از آنها استفاده می کند می پردازیم شما هم به نام های ویژه ای که برای آنها مشخص شده دقت داشته باشید. در واقع این نوع نام گذاری خاص و هدف مند است که وردپرس با کمک آنها می تواند بفهمد در چه زمانی باید از چه نوع فایل الگویی استفاده کند.
فایل های الگوی موجود در بیرون حلقه:
زمانی که من راجع به فایل های موجود در بیرون حلقه صحبت می کنم چیزی که واقعاٌ من از آنها متوجه می شوم این است که اجزای صفحه شما، بیرون از یک پست یا محتویات اصلی صفحه، همه در ویرایشگر پست وارد شده اند. اینها شامل محتوایت موجود در هدر و فوتر شما می شود. هدر شامل تمامی اطلاعات متا و HTML مورد نیاز است که شما می خواهید قبل از محتویات قرار دهید. و فوتر نیز شامل هر نوع داده دیگری، بعد از آن است.
در شرایط مقتضی فایل هدر با نام header.php شناخته می شود. از آن طرف نیز فایل فوتر با نام footer.php مورد استفاده قرار می گیرد. فایل های الگو برای کارکرد صحیح خود به این دو فایل نیاز دارند اما هر دوی آنها بیرون حلقه هستند.
فایل الگوی مهم دیگر نیز sidebar.php نام دارد از این فایل برای هر گونه داده و محتوا، بیرون از ویرایشگر پست مورد استفاده قرار میگیرد. اغلب جایگاه این فایل در سمت راست یا چپ صفحه است اما در شرایط مورد نیاز در هر جایی از صفحه می تواند قرار بگیرد. در واقع این مکان همان جایی است که تم ها معمولا ویجت ها و دیگر اطلاعات فرعی را به نمایش می گذارند.
و اما آخرین فایل الگویی که قصد معرفی آن را داریم فایل comments.php می باشد. از این فایل همانطور که از نام آن مشخص است در بخش مربوط به کامنت ها که در اکثر وبسایت ها و پایین صفحات آنها قرار گرفته اند استفاده می شود. این فایل می تواند پیچیده ترین ساختارها را در ساده ترین شکل دریافت و مورد پردازش قرار دهد. این فایل از یکی سری کدهای HTML و PHP تشکیل شده که مشخص می کنند چگونه کامنتها و جزییات ظاهری و فنی آنها باید در وبسایت به نظر برسد.
فایل های بیرون حلقه مهم هستند اما ساختار اصلی وبسایت های وردپرس وابسته به فایل های الگویی است که شامل محتویات واقعی پست و یا فایل هایی که داخل حلقه هستند. به طور کلی، اینکه کدام فایل الگو برای هر صفحه انتخاب شود بستگی به ترتیب ساختار الگوها و نحوه نامگذاری فایل ها در داخلشان بستگی دارد.
صفحات خانگی:
شاید مهمترین صفحه در ساختار درختی موجود در تم وردپرس شما صفحه خانگی باشد. زمانی که کاربر از صفحه خانگی شما دیدن می کند وردپرس فایل index.php را مورد بررسی قرار داده تا با توجه به کدهای درون آن صفحه نمایش خانگی را به نمایش درآورد. اما لازم است بدانید فایل index.php قدرتمندتر و انعطاف پذیرتر از این حرف هاست. در کمترین حالت می توان گفت که این فایل الگوی مشخص در ساختار سلسله مراتبی وردپرس شما وجود داشته و برای هر صفحه ای از وبسایت شما که فایل الگویی برای آن مشخص نشده، مورد استفاده قرار می گیرد. صفحات آرشیو، صفحات منفرد و … همگی از فایل index.php استخراج می شوند، مگر اینکه فایل الگوی مشخصی در تم گنجانده شده باشد. بعداٌ این موضوع را بیشتر بررسی خواهیم کرد. اما فعلا حداقل چیزی که لازم است، این هست که بدانید index.php یک فایل مطلقاٌ ضروری و مورد نیاز است.
اما فایل دیگری که روی صفحه خانگی وبسایت شما تاثیر می گذارد با نام front-page.php شناخته می شود. اگر این فایل در یک تم گنجانده شده باشد، وردپرس به صورت خودکار از فایل index.php صرف نظر کرده و اولویت را به استفاده از فایل front-page.php برای نمایش محتویات در صفحه اصلی می دهد. در حال حاضر دو روش برای استفاده از فایل front-page.php وجود دارد. اولین روش این است که یک لیست از پست ها را رندر کند که البته این همان روشی است که اغلب شما از آن استفاده می کنید. به هر حال این صفحه می تواند به منظور نمایش یک صفحه ایستا یا همان استاتیک نیز مورد استفاده قرار گیرد. اینکه کدام یک از اینها مورد استفاده قرار گیرد وابسته به تنظیمات شخصی ای است که خودتان اعمال کردید. اگر شما به بخش Settings -> Reading در سیستم مدیریت وردپرس خود رجوع کنید با یک گزینه روبرو خواهید شد که یا شامل یک لیست از پستهای بلاگ بوده و یا شامل یک صفحه ایستا است. در صورتی که گزینه دوم را انتخاب کنید شما این اختیار را دارید که صفحه مورد نظر برای نمایش را نیز انتخاب کنید.
همیشه به یاد داشته باشید دو فایل front-page.php و index.php که پیشتر اشاراتی به آنها شد می توانند هر دو دارنده کد یکسان بوده و دقیقا صفحه خانگی وبسایت شما را به یک صورت به نمایش درآورند. به طور کلی فایل front-page.php توسط وردپرس شما تنها به عنوان صفحه خانگی سایت مورد استفاده قرار می گیرد این در حالی است که فایل index.php به عنوان الگوی پیشفرض برای کل دیگر صفحات مورد استفاده قرار می گیرد. از این رو ساختار پایه صفحه خانگی وبسایت شما به مانند زیر به نظر میرسد:
front-page.php
index.php
همانطور که در ادامه به معرفی فایل های الگوی دیگر سوییچ می کنیم، خواهید دید که این حالت ضرورتاٌ برای ساختار الگوی شما فوق العاده مهم به نظر می رسد.
ترجمه شده توسط تیم آرتاباز، هادی نجار.
————————————
در قسمت آینده، جزئیات بیشتری در مورد ساختار سلسله مراتبی، ارائه خواهد شد.
بازتاب: نحوه نمایش لیستی از نویسندگان به صورت صفحه بندی شده