مارک پلاس

تکنولوژی نوین اینترنتی

داده‌های سفارشی وردپرس

دسته‌بندی‌ها

داده‌های سفارشی وردپرس
نمایش داده‌های سفارشی وردپرس


نمایش داده‌های سفارشی در وردپرس (Custom Fields & Post Meta) یکی از امکانات فوق‌العاده برای افزودن اطلاعات خاص و پویا به نوشته‌ها، صفحات یا پست‌تایپ‌های سفارشی است. این ویژگی به شما اجازه می‌دهد سایت خود را فراتر از بلاگ ساده توسعه دهید — مثلاً سایت املاک، فروش خودرو، آموزش آنلاین یا دایرکتوری کسب‌وکار بسازید.

در این مقاله، قدم‌به‌قدم با روش‌های ایجاد، ذخیره و نمایش داده‌های سفارشی در وردپرس آشنا می‌شوید.


✅ داده‌های سفارشی چیست؟

داده‌های سفارشی (Custom Fields) اطلاعات اضافه‌ای هستند که به هر نوشته یا پست‌تایپ می‌افزایید، مثل:

  • شماره تماس فروشنده

  • قیمت محصول

  • تاریخ برگزاری یک رویداد

  • آدرس محل برگزاری


🧩 روش‌های ایجاد و نمایش داده‌های سفارشی

✳️ 1. فعال‌سازی Custom Fields در ویرایشگر وردپرس

  1. هنگام ویرایش یک نوشته یا برگه، روی منوی بالا (سه‌نقطه) کلیک کنید.

  2. از بخش تنظیمات → پنل‌ها گزینه‌ی فیلدهای سفارشی (Custom Fields) را فعال کنید.

  3. پس از فعال‌سازی، بخشی پایین ویرایشگر با عنوان "فیلدهای سفارشی" ظاهر می‌شود.

  4. کلید و مقدار مورد نظر را وارد و ذخیره کنید.

نمایش در قالب:

فرض کنید کلید شما phone_number است. در فایل قالب (مثل single.php) می‌توانید با کد زیر مقدار را نمایش دهید:

php
<?php echo get_post_meta(get_the_ID(), 'phone_number', true); ?>

✳️ 2. استفاده از توابع get_post_meta و update_post_meta

اگر در حال توسعه سفارشی‌تر هستید، با این توابع کار خواهید کرد.

ذخیره مقدار:

php
update_post_meta($post_id, 'phone_number', '09123456789');

دریافت مقدار:

php
$phone = get_post_meta($post_id, 'phone_number', true);

✳️ 3. استفاده از افزونه ACF (Advanced Custom Fields)

محبوب‌ترین افزونه برای ساخت فیلدهای سفارشی با رابط کاربری حرفه‌ای است.

مراحل کار:

  1. افزونه ACF را نصب و فعال کنید.

  2. به منوی Custom Fields → Add New بروید.

  3. گروهی از فیلدها بسازید (مثلاً شماره تماس، قیمت، گالری تصویر...).

  4. مشخص کنید این فیلدها به کدام نوشته یا پست‌تایپ اعمال شوند.

  5. پس از ذخیره، هنگام ویرایش پست، فیلدهای مورد نظر ظاهر می‌شوند.

نمایش در قالب:

php
<?php the_field('phone_number'); ?>

یا:

php
<?php echo get_field('price'); ?>

✳️ 4. نمایش در قالب با شرط وجود مقدار

گاهی فقط زمانی می‌خواهید داده نمایش داده شود که مقدار داشته باشد:

php
<?php if( $phone = get_post_meta(get_the_ID(), 'phone_number', true) ): ?> <p>شماره تماس: <?php echo esc_html($phone); ?></p> <?php endif; ?>

📌 نمایش در لوپ (Loop) وردپرس

اگر می‌خواهید در یک لیست، برای هر پست داده‌های سفارشی نمایش دهید:

php
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> <h2><?php the_title(); ?></h2> <p><?php echo get_post_meta(get_the_ID(), 'event_date', true); ?></p> <?php endwhile; endif; ?>

🔥 نمونه کاربردی: نمایش قیمت و شماره تماس برای آگهی

php
<div class="ad-details"> <h2><?php the_title(); ?></h2> <p>قیمت: <?php echo get_post_meta(get_the_ID(), 'price', true); ?> تومان</p> <p>تماس: <?php echo get_post_meta(get_the_ID(), 'phone_number', true); ?></p> </div>

🧠 نکات پیشرفته:

  • از sanitize_text_field() برای امنیت در ذخیره‌سازی استفاده کنید.

  • برای پست‌تایپ‌های سفارشی (Custom Post Types) نیز می‌توان فیلدهای سفارشی تعریف کرد.

  • با استفاده از ACF یا Meta Box می‌توانید فیلدهای تکرار‌شونده، تاریخ انتخابی و حتی رابط‌های گرافیکی برای فیلدها بسازید.


اگر خواستی برات یک نمونه قالب کامل با فیلدهای سفارشی برای سایت آگهی، آموزش یا املاک آماده کنم؛ فقط کافیه بگی چه نوع داده‌ای رو مد نظر داری. 😉

محتوای مرتبط

پست‌های مرتبط