انواع پست ها در وردپرس – Post Type ها در وردپرس

در این قسمت از آموزش های طراحی قالب وردپرس با انواع پست ها در وردپرس آشنا خواهیم شد. در این آموزش می آموزیم که post type های پیش فرض وردپرس که در هنگام نصب وردپرس، در دسترس ما قرار می گیرند، چه چیزهایی می باشند و همین طور با انواع پست سفارشی یا همان custom post types و نحوه کار آن ها، آشنا خواهیم شد.

انواع مختلفی از محتوا ها در وردپرس موجود می باشند. در واقع همه چیز در وردپرس یک پست (که در فایل ترجمه وردپرس فارسی، به نوشته ترجمه شده است) محسوب می گردد. انواع محتواها به صورت عادی به عنوان یک نوع از پست در وردپرس شناخته می شوند، یعنی هر چیز یک پست بوده اما نوع آن ها می تواند باهم متفاوت باشد.

انواع پست ها در وردپرس

این تشابه اسمی ممکن است باعث قاطی شدن بعضی از مفاهیم برای توسعه دهندگان شود و کمی آن ها را گیج کند. مثلا یک نوشته (که معادل نام انگلیسی آن پست می باشد) یکی از انواع پست ها در وردپرس می باشد. در واقع یکی از انواع پست ها در وردپرس نوشته می باشد. به همین صورت، یک صفحه نیز یکی دیگر از انواع پست ها در وردپرس (یا همان Post Types در وردپرس) می باشند.

بصورت داخلی و در کارکرد هسته وردپرس، همه انواع پست ها در وردپرس (یا همه Post Type ها در وردپرس) در یک جا و در جدولی به نام wp_posts نگهداری می شوند و تنها تفاوت آن ها در ستون یا فیلدی است که post_type نامیده می شود.

علاوه بر  انواع پست ها در وردپرس که بصورت پیش فرض در وردپرس موجود می باشد، شما می توانید post type های جدید در وردپرس ایجاد کنید که با نام Custom Post Types یا پست های سفارشی، شناخته می شوند.

در بخش مربوط به “ آشنایی با Template Files در وردپرس “، به صورت خلاصه بیان شد که انواع پست ها در وردپرس به چه صورت با Template File های مختلف، به نمایش در می آیند.

از آنجایی که همه هدف Template File ها این است که محتوای سایت شما با روش درستی به کاربر نمایش داده شود، تمام هدف Post type ها در وردپرس نیز این است که برای هسته وردپرس مشخص کنند که با چه محتوایی روبرو هستند. این دسته بندی باعث می شود وردپرس درک کند که چگونه باید محتوای مورد نظر را مورد پردازش قرار دهد.

اگر بخواهیم کلی بگوییم، انواع پست ها در وردپرس به نوعی به Template File های به خصوصی در هسته وردپرس ارتباط دارند و در واقع Post Type یک محتوا برای نمایش و پردازش در یک سایت وردپرس ، به Template File مخصوص به خود متصل می باشد.

انواع پست های پیش فرض در وردپرس

در حال حاضر ۵ نوع پست مختلف برای کاربران در وردپرس موجود می باشد که هنگام نصب وردپرس، به صورت داخلی در وردپرس ایجاد می گردد:

  • Post : نوع پست یا post type برابر post می باشد

  • Page : نوع پست یا post type برابر page می باشد

  • Attachment : نوع پست یا post type برابر attachment می باشد

  • Revision : نوع پست یا post type برابر revision می باشد

  • Navigation menu : نوع پست یا post type برابر nav_menu_item می باشد

Post type های پیش فرض در وردپرس، می توانند توسط قالب ها یا پلاگین های ساخته شده توسط شما، مورد تغییر واقع شده و یا حتی حذف گردند اما این کار توصیه نمی شود. توصیه می شود که در هنگام توسعه قالب وردپرس یا پلاگین وردپرس، انواع پست های پیش فرض وردپرس که بصورت built-in  پس از نصب وردپرس، در دسترس می باشند، حذف یا پاک نشوند.

عمومی ترین انواع پست ها در قالب وردپرس که شما به عنوان یک توسعه دهنده، روزانه با آن ها بسیار سر و کار خواهید داشت، شامل Post و Page و Attachment و Custom Post Type می باشند. در این بخش در مورد پست تایپ های Revision و Navigation Menu صحبت نخواهیم کرد اما بخش هایی را در قسمت های آینده، مورد بررسی قرار خواهیم داد تا حدودی با نحوه عملکرد آن آشنا گردید.

نوع Post در وردپرس چیست و چه کاری انجام می دهد؟

Post ها در بلاگ وردپرس مورد استفاده قرار می گیرند. آن ها دارای مشخصات زیر هستند:

  • در یک ترتیب برعکس بر اساس زمان مرتب شده و نمایش داده می شوند (یعنی جدید ترین نوشته یا پست همواره در ابتدای صف قرار می گیرد)

  • دارای مشخصات تاریخ و زمان یا همان  date and time stamp می باشند

  • دارای دسته بندی های پیش فرض وردپرس (یا Default Taxonomy) بر اساس دسته ها ( categories ) و برچسب ها ( Tags ) می باشند.

  • برای ساختن feed ها در سایت وردپرس مورد استفاده قرار میگیرند.

علاوه بر این، توسعه دهندگان قالب ها می توانند (در صورتی که تمایل داشته باشند) نوع Post را در صفحه front-page.php به نمایش در بیاورند.

Template File هایی که نوع Post را در قالب وردپرس نمایش می دهند، عبارتند از:

  • single.php و single-post.php

  • category.php و تمامی تکرارهای آن

  • tag.php و تمامی تکرارهای آن

  • taxonomy.php و تمامی تکرارهای آن

  • archive.php و تمامی تکرارهای آن

  • author.php و تمامی تکرارهای آن

  • date.php و تمامی تکرارهای آن

  • search.php

  • home.php

  • index.php

نوع Page در وردپرس  چیست و چه وظایفی دارد؟

Page ها یک نوع پست ثابت یا همان Static Post Type ها هستند که جدا از محتواهای عادی وبلاگ و همین طور feed سایت می باشند. مشخصات Page عبارت است از:

  • نداشتن وابستگی به زمان، آن ها بدون زمان یا همان time stamp می باشند.

  • آن ها به وسیله دسته ها و برچسب ها، طبقه بندی نمی شوند.

  • آن ها بصورت ساختار درختی یا همان Hierarchical می توانند دسته بندی شوند. این یعنی صفحات یا Pages می توانند به عنوان والد یا فرزند صفحات دیگر(  parents/children )شناخته شوند.

  • شما می توانید بر روی یک پست از نوع Page، یک Page Template را بکار برده و استفاده کنید (این امکان برای پست ها وجود ندارد)

Template File هایی که نوع Page را در قالب وردپرس نمایش می دهند، عبارتند از:

  • page.php و تمامی تکرارهای آن

  • custom.php و تمامی تکرارهای آن

  • fornt-page.php 

  • search.php 

  • index.php 

نوع Attachment در وردپرس چیست و چه کاری انجام می دهد؟

پست تایپ Attachment بصورت معمول برای نمایش عکس ها یا سایر رسانه ها (مثل ویدئو یا صدا) در محتوا استفاده می شود. همچنین آن ها می توانند برای لینک شدن به فایل های مرتبط نیز مورد استفاده واقع شوند. مشخصات Attachment عبارت است از:

  • شامل اطلاعاتی (مانند اسم و توضیحات) درباره فایل های آپلود شده می باشند که توسط سیستم آپلود رسانه یا همان media upload system در وردپرس بارگذاری می شوند.

  • برای عکس ها، شامل اطلاعات meta نیز می شوند که این meta information در جدولی با نام wp_postmeta ذخیره می شوند (شامل سایز تصویر ، thumbnail های تصویر مورد نظر و سایر موارد مشابه)

Template File هایی که نوع Attachment را در قالب وردپرس نمایش می دهند، عبارتند از:

  • MIME_type.php 

  • attachment.php

  • single-attachment.php 

  • single.php 

  • index.php 

Custom Post Types یا نوع پست سفارشی چیست؟

با استفاده از نوع پست سفارشی یا همان custom post type شما می توانید پست تایپ دلخواه خودتان را در وردپرس بسازید. یک Best Practice برای وردپرس این می باشد که شما پست سفارشی خود را در قالب قرار ندهید. خود وردپرس پیشنهاد می کند که این functionality نباید در قالب شما قرار گرفته و باید به عنوان پلاگین مورد استفاده قرار گیرد.

با اینکه عموما شما پست های سفارشی خود را در قالب وردپرس توسعه نمی دهید، اما مسلما نیاز خواهید داشت که اطلاعات مربوط به custom post type های ساخته شده در یک پلاگین را در قالب خود نمایش دهید.

Template File های زیر می توانند اطلاعات انواع پست سفارشی را در قالب وردپرس شما به نمایش دربیاورند:

  • single-{post-type}.php 

  • archive-{post-type}.php

  • search.php 

  • index.php 

در نظر داشته باشید که توسعه دهندگان قالب می توانند انواع اطلاعات موجود در پست های سفارشی را با استفاده از multiple loops ، در هر template file دلخواه به نمایش دربیاورند.

راهنما برای خواندن سایر مقالات سایت به صورت دسته بندی شده:

شما می توانید از طریق لینک های کاربردی زیر به سایر مقالات سایت که کاملا بصورت طبقه بندی شده وجود دارد، مراجعه نموده و از آن ها استفاده کنید: