رفتن به مطلب

مشکل با متاباکس ها


پست های پیشنهاد شده

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

حالا برای اینکه کاربری که میخاد فیلمی رو ارسال کنه بتونه راحت کارگردان رو انتخاب کنه این ایده به ذهنم رسید که همه مطالب بخش پست تایپ کارگردان هارو توی یک select به عنوان متاباکس نمایش بدم .

بعد از اینکه این کارو کردم بقیه پست تایپ هایی که داشتم مقادیر سیو شدشون از بین میره و سفید میشن و چیزی سیو نمیکنن و حتی خود این select هم سیو نمیشه  .

با استفاده از این کد همه مطالب پست تایپ کارگردان هارو فراخوانی کردم :

<?php 
// the query
$wpb_all_query = new WP_Query(array('post_type'=>'director', 'post_status'=>'publish', 'posts_per_page'=>-1)); ?>

<?php if ( $wpb_all_query->have_posts() ) : ?>
	<?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
<li data-value="<?php the_title(); ?>" class="option focus"><a class="not-active" id="lop" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
	<?php endwhile; ?>
	<?php wp_reset_postdata(); ?>

<?php else : ?>
	<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>

به محض اینکه این کد قرار میگیره توی متاباکس ها ،  مقادیر سیو شده همه متاباکس ها از بین میره و دیگه سیو هم نمیشن .

اون قسمت از کد که مربوط به ریست کردن دیتا هست رو هم حذف کردم ولی تاثیری نداشت . 

مشکل حل شدنی هست ؟

ایا مشکل از کد منه ؟

ممنون میشم راهنماییم کنید . خیلی مشکل مهمی هست برام . 

ویرایش شده توسط PRGAME
لینک به ارسال

wp_reset_postdata رو فک کنم اینجا نباس استفاده کرد !

از این استفاده کن بجاش ببین درست میشه یا نه ؟

<?php wp_reset_query(); ?>

 

ویرایش شده توسط majid1889
لینک به ارسال
در 5 ساعت قبل، majid1889 گفته است :

wp_reset_postdata رو فک کنم اینجا نباس استفاده کرد !

از این استفاده کن بجاش ببین درست میشه یا نه ؟


<?php wp_reset_query(); ?>

 

فرقی نکرد .

لینک به ارسال

اگر مشکل از متغییر $post باشه

میتونید قبل از کویری اون رو ذخیره

global $post;
$temp = $post;

و بعد از پایان کد حلقه بازگردانی کنید

$post = $temp;

 

لینک به ارسال
در 40 دقیقه قبل، Parsa گفته است :

اگر مشکل از متغییر $post باشه

میتونید قبل از کویری اون رو ذخیره


global $post;
$temp = $post;

و بعد از پایان کد حلقه بازگردانی کنید


$post = $temp;

 

میشه کد رو برام تصحیح کنید لطفا ؟

چون من توی برنامه نویسی خیلی مبتدی هستم .

لینک به ارسال

کد داده شده را داخل <?php ?> ابتدا و انتهای کد پست ابتدایی قرار بدید

همین

لینک به ارسال
در 8 دقیقه قبل، Parsa گفته است :

کد داده شده را داخل <?php ?> ابتدا و انتهای کد پست ابتدایی قرار بدید

همین

استاد دمت گرم . مشکل حل شد . 

میتونم بپرسم که چه مشکلی به وجود اومده بود که همه چیز بهم ریخته بود ؟

لینک به ارسال

مشکل به خاطر این هست توابع از متغییر عمومی post استفاده میکنند و وقتی کویری گرفته میشه مقدارش تغییر میکنه

بهتره قبل کویری ذخیره و بعدش جایگزین بشه با مقدار پیشفرض کویری وردپرس

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...