آشنایی با get_post_meta و update_post_meta در وردپرس

wordpress get post meta update post meta
20 آبان 1403

وردپرس یکی از محبوب‌ترین سیستم‌های مدیریت محتوا است که به دلیل انعطاف‌پذیری و ویژگی‌های قدرتمندش بسیار مورد استقبال قرار گرفته است. یکی از امکانات جذاب وردپرس، استفاده از متا داده‌ها برای ذخیره اطلاعات اضافی مرتبط با پست‌ها است. توابع get_post_meta() و update_post_meta() نقش مهمی در این زمینه ایفا می‌کنند.

احتمالا متوجه شدید که بعد از استفاده از تابع update_post_meta()، زمانی که قصد دارید داده‌ها را با get_post_meta() دریافت کنید، با مقدار false روبه‌رو می‌شوید. این مسئله ممکن است ناشی از دلایل مختلفی باشد.

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

دومین نکته، به وجود خطا یا عدم هماهنگی در نام متا داده‌ها برمی‌گردد. حتماً مطمئن شوید که نام متا داده‌ها را به‌درستی و یکسان در هر دو تابع استفاده کردید.

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


// به‌روزرسانی متا داده‌های پست
update_post_meta($post_id, 'meta_key', 'value');

// دریافت متا داده‌های پست
$meta_value = get_post_meta($post_id, 'meta_key', true);

خط اول: از تابع update_post_meta برای به‌روزرسانی متا داده‌ها استفاده می‌کند.
خط دوم: شناسه پست $post_id و کلید متا 'meta_key' را به تابع می‌دهد.
خط سوم: متا داده را با استفاده از get_post_meta دریافت می‌کند و نتیجه را در $meta_value ذخیره می‌کند.
خط چهارم: پارامتر true نشان می‌دهد که تنها یک مقدار مستقیم به‌عنوان نتیجه لازم است نه یک آرایه.

سوالات متداول

؟

چرا بعد از به‌روزرسانی متا داده‌ها مقدار نادرست دریافت می‌کنم؟

؟

چگونه می‌توانم مطمئن شوم که متا داده‌ها به‌درستی به‌روزرسانی می‌شوند؟

؟

آیا نیاز به مجوز خاصی برای استفاده از این توابع دارم؟