עמודי ארכיון בוורדפרס אחראים להצגה של פוסטים, או כל Custom Post Type אחר לפי אחד ממספר אפשרויות ״סינון״. עמודי הארכיון נבנים בצורה אוטומטית ע״י וורדפרס ומוצגים לנו אוטומטית לפי הכתובת אליה ניגשים.

לוגו של טלגרם הצטרפו לערוץ הטלגרם וקבלו עדכון כאשר מאמר חדש מתפרסם!

סוגי ארכיון

בברירת המחדל, וורדפרס מאפשרת לנו מגוון רחב של סוגי עמודי ארכיון, לרוב הטיפול בהם הוא זהה והנראות תהיה זהה. עמודי הארכיון שקיימים בוורדפרס הם:

  • קטגוריות (Category) – עמוד אשר מציג את הפוסטים אשר משוייכים לקטגוריה הספציפית בה הגולש צופה.
  • תגיות (Tag) – עמוד אשר מציג את הפוסטים אשר מתוייגים בתגית הספציפית בה הגולש צופה.
  • מחבר (Author) – עמוד אשר מציג את הפוסטים אשר אותם הכותב הספציפי כתב.
  • שנה (Year) – עמוד אשר מציג את הפוסטים אשר פורסמו בשנה הספציפית בה הגולש צופה.
  • חודש (Month) – עמוד אשר מציג את הפוסטים אשר פורסמו בשנה ובחודש הספציפי בו הגולש צופה.
  • יום (Day) – עמוד אשר מציג את הפוסטים אשר פורסמו בשנה, חודש ויום הספציפי בו הגולש צופה.
  • ארכיון CPT – עמוד כל סוג Custom Post Type שמוגדר בוורדפרס, לרוב יש ארכיון אשר מאגד את כל הפוסטים תחת אותו ה-CPT.
  • ארכיון טקסונומיה – עמוד אשר יציג את כל הפוסטים אשר מתוייגים תחת טקסונומיה ספציפית בה הגולש צופה.

קבצי ארכיון

כאשר בונים תבנית לוורדפרס, ייתכן ונרצה לעצב ולעמד בצורה שונה עמודי כותב, או עמודי קטגוריות וכד׳. וורדפרס מאפשרת לנו להתייחס לכל ארכיון בנפרד ע״י בניית קבצים עם שמות שונים עבור כל אחד מסוגי הארכיון השונים. בתמונה המצורפת ניתן לראות הסבר מדוייק איך וורדפרס מתייחסת לעמודי הארכיון השונים כאשר בונים תבנית.

דיאגרמה של סוגי התבניות בוורדפרס

בניית עמוד ארכיון

בתבנית בה אנו משתמשים, אין התייחסות לעמודי ארכיון שונים, לכן אנו נבנה עמוד ארכיון כללי – archive.php. נתחיל ביצירת קובץ חדש עם השם archive.php ונשים בו את הקוד הבא:

<?php get_header(); ?>

<?php get_footer(); ?>

הדפסת כותרת ותיאור ארכיון

עבור כל ארכיון יש כותרת מסויימת, לדוגמא עבור קטגוריה הכותרת תהיה ״קטגוריה: כללי״, כאשר במקום ״כללי״ יהיה רשום שם הקטגוריה. בעמוד ארכיון מסוג שנה לדוגמא יהיה כתוב ״שנה: 2019״ וכן הלאה.

על מנת להגדיר כותרת שונה עבור כל אחד מהארכיונים, היה צריך בעבר (לפני גרסה 4.1) לעשות בדיקה איזה עמוד ארכיון מוצג ולפי זה להציג את הכותרת הרלוונטית, אך כיום ניתן להשתמש בפונקציה the_archive_title() על מנת לקבל את הכותרת של הארכיון ובמידה וצופים בקטגוריה או בתגית שיש להם תיאור, ניתן להשתמש בפונקציה the_archive_description() על מנת להציג את התיאור במידה ויש.

לכן, נפתח את הקובץ של הארכיון שלנו ונוסיף את הקוד הבא בין שתי השורות הקיימות:

<!-- Main Content -->
<section id="wrapper">

	<?php if ( have_posts() ) : ?>

		<section id="four" class="wrapper alt style1">
			<div class="inner">
				<h2 class="major"><?php the_archive_title(); ?></h2>
				<?php the_archive_description( '<p class="description">', '</p>' ); ?>

			</div>
		</section>

	<?php endif; ?>

</section>
<!-- /Main Content -->

הדפסת הפוסטים

לאחר שהדפסנו את הכותרת והתיאור של הארכיון, נרצה להדפיס את הפוסטים אשר אמורים להיות מוצגים, למזלנו וורדפרס מטפלת בכל ה-Heavy Lifting, היא תדאג לתשאל את המסד ולהחזיר את הפוסטים הרלוונטיים לארכיון בו אנו צופים, כל שעלינו לעשות הוא להשתמש ב-The Loop על מנת להדפיס את הפוסטים שלנו.

בקובץ של התבנית, ממש אחרי הפונקצייה the_archive_description() נוסיף את הקוד הבא:

<section class="features">

	<?php while ( have_posts() ) : the_post(); ?>

		<?php get_template_part( 'templates/regular-post' ); ?>

	<?php endwhile; ?>

	<ul class="actions">
		<li><?php next_posts_link(); ?></li>
		<li><?php previous_posts_link(); ?></li>
	</ul>
</section>

סיכום

עמוד ארכיון הינו עמוד מאוד חשוב לאתרים אשר יש להם בלוג פעיל, או אם יש להם CPT בו הם משתמשים (לדוגמא, חנות אינטרנטית).

במאמר הבא נלמד כיצד לבנות עמוד ראשי ועמוד בלוג על מנת לאפשר תמיכה מלאה בהגדרת עמוד סטטי לדף הבית ובעמוד בלוג.

דור צוברי

מתכנת מגיל 13, ומתעסק עם וורדפרס מגיל 18, אוהב לפצח אתגרים ולפתח דברים מורכבים על בסיס וורדפרס. עצמאי מגיל 16, מרצה ובלוגר. בזמן הפנוי שלי אוהב מאוד לקרוא קומיקס של MARVEL.

דור צוברי

תגובות לפוסט

כתיבת תגובה

תגובה אחת

  1. anat

    המאמר מצוין.
    מה שלא מספיק ברור לי זה:
    אני בונה עמוד PHP, הוא הרי לא נמצא בעמודים של וורדפרס, כי כל עמוד PHP הוא בעצם כמו אזור.
    איך בצורה הכי פשוטה אני קוראת לו מתוך העמוד בוורד]רס.
    ברור לי get header / get footer' אבל מה עם כל השאר?

    1. מחבר
      דור צוברי

      היי ענת,
      לא הבנתי את השאלה שלך, אשמח אם תוכלי להסביר בבקשה.