دانیال 172 ارسال شده در مهر 93 گزارش بازنشر ارسال شده در مهر 93 (ویرایش شده) سلاموردپرس :میخوام یه مطلب تصادفی انتخاب کنم که دارای شرط زیر باشهif (get_field('dani')) ویرایش شده مهر 93 توسط ایگل دیزاین نقل قول لینک به ارسال
دانیال 172 ارسال شده در مهر 93 مالک گزارش بازنشر ارسال شده در مهر 93 <?php $args = array( 'numberposts' => 1, 'orderby' => 'rand' );$rand_posts = get_posts( $args );foreach( $rand_posts as $post ) : if (get_field('dani')){?>matalab<?php echo get_field('dani') ?><?php} endforeach; ?> نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 یعنی چی که می خواهید اون شرط را داشته باشه یعنی کوئری فقط برای مطالب دارای فیلد dani اجرا بشه یا در نتیجه اگر فیلد dani وجود داشت چاپش کنه حالت اول باید ببینید نام متا تگی که افزونه می سازه هم dani یا چیزی بهش اضافه می کنه و کوئریتون می شه <?php $args = array( 'numberposts' => 1, 'orderby' => 'rand', 'meta_key => 'dani' );?>البته برای نوشتن صحیح تر و کاملتر کوئری می تونید از ژنراتور کوئری ساز استفاده کنید 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 (ویرایش شده) خیلی ممنون ولی هیچ تغییری نکرد<?php get_header(); ?><?php $args = array( 'numberposts' => 1, 'orderby' => 'rand', 'meta_key' => 'play_link' );$rand_posts = get_posts( $args );foreach( $rand_posts as $post ) : ?><div class="ranpost" ><audio preload="false" > <source src="<?php echo get_field('play_link'); ?>" type="audio/mpeg"> مرورگر شما از پخش صدا پشتیبانی نمی کند.</audio></div><?php endforeach; ?><?php get_footer(); ?>برای پخش آنلاین موزیک این کد رو نوشتمبه صورت رندم یه موزیک پخش میشهولی وقتی لینک پخش انلاین نداشته باشه که موزیکی نمیادباید موزیک هایی انتخاب شده باشن که فیلد مورد نظر خالی نباشه ویرایش شده آبان 93 توسط ایگل دیزاین نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 حالت اول باید ببینید نام متا تگی که افزونه می سازه هم dani یا چیزی بهش اضافه می کنه 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 از کجا بفهمم دقیقا اسمش چیه ؟از acf استفاده میکنم ها نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 ظاهرا منظورم رو متوجه نشدیدباید موزیک هایی رو نشون بده کهget_field['dani] != ''یعنی مقدارش خالی نباشه نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 به بدشانسی مربوط نمیشه من منظور شما را متوجه شدم ولی منتظر نباشید من برم مستندات افزونه تون رو بخونم و ببینم نام فیلدها را چی می گذاره خودتون باید اینکار را بکنیداصولش اینه که شما نتونید فیلدی که افزونه می سازه را با کوئری وردپرس بخونید و ممکنه این افزونه هم همینتطور باشه ولی چون ساخت شرکت اتوماتیکه که سازنده وردپرسه ممکنه از توابع استاندارد استفاده کرده باشه که در این صورت در مستنداتش (documents) در موردش باید توضیح داده باشه اگر هم نشد باید فیلدهاتون رو بدون افزونه بسازید و با کوئری که عرض شد احضارشون کنید 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 خوب شما میگید برید بگردیدمن که نمیدونم دنبال چی بگردم ( نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 بگردید دنبال تابع add_post_meta($id, $key, $value);و ببینید بجای $key چی گذاشته شده یا در دیتابیستون ببینید در جدول wp_postmeta متاهایی که ساختید با چه نامی ذخیره می شند. 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 من این دو کد رو امتحان میکنم$args = array( 'numberposts' => 1, 'orderby' => 'rand', 'meta_key' => '_play_link' );و$args = array( 'numberposts' => 1, 'orderby' => 'rand', 'meta_key' => 'play_link' );ولی باززم مطالبی که فیلد پخش آنلاینشون خالیه نمایش داده میشن نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 دوست عزیز من برای اینکه بتونم نام فیلد رو پیدا کنم باید افزونه رو نصب کنم و چکش کنم اینکار برام مقدور نیست وارد phpmyadmin بشید و چک کنید در جدول wp_postsmeta و ستون meta_value مقدار play_link چیه اون مقدار را در کوئری بگذارید 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 (ویرایش شده) خوب من همین کارو میکنمعکس :کد :<?php get_header(); ?><?php$args = array( 'numberposts' => 1, 'orderby' => 'rand', 'meta_key' => 'field_5447b824fcad5' );$rand_posts = get_posts( $args );add_post_meta($id, $key, $value);foreach( $rand_posts as $post ) :?><div class="ranpost" <?php if(has_post_thumbnail()) {?>style="background: url('<?php echo $eagle_thumbnail_url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );?>') center center no-repeat " <?php }?>><?php if(get_field('play_link')){?><audio preload="false" ><source src="<?php the_field('play_link'); ?>" type="audio/mpeg"> مرورگر شما از پخش صدا پشتیبانی نمی کند.</audio><?php } ?></div><?php endforeach; ?><?php get_footer(); ?>خروجی : خالیوالا دیگه نمیدونم چیکار کنمخواهش میکنم درست بگید چیکار کنمیه هفتس سرگردونم ویرایش شده آبان 93 توسط ایگل دیزاین نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 با ژنراتور کوئری بسازید 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 با اون هم درست کردمولی باز هم مطالبی که فیلد پخش آنلاینشون خالیه نمایش داده میشن<?php get_header(); ?><?php //$args = array( 'numberposts' => 1, 'orderby' => 'rand', 'meta_key' => 'play_link' );$rand_music= new WP_Query(array('post_type' => 'post','post_status' => 'publish','cat' => '1','order' => 'DESC','orderby' => 'rand','posts_per_page' =>'1','paged' => (get_query_var('paged')) ? get_query_var('paged') : 1));$rand_posts = get_posts( $args );if($rand_music->have_posts()) :while($rand_music->have_posts()) : $rand_music->the_post();?><div class="ranpost" <?php if(has_post_thumbnail()) {?>style="background: url('<?php echo $eagle_thumbnail_url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );?>') center center no-repeat " <?php }?>><audio preload="false" > <source src="<?php echo get_post_meta($post->ID, 'play_link', true); ?>" type="audio/mpeg"> مرورگر شما از پخش صدا پشتیبانی نمی کند.</audio></div><?php endwhile; ?><?php endif; ?><?php wp_reset_query(); ?><?php get_footer(); ?> نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 با کدوم ژنراتور این کد رو ساختید (ژنراتور رو من نوشتم ولی یه ربع طول کشید تا از کدهاتون سر در بیارم!<?phpget_header();$args = new WP_Query(array('post_type' => 'post','post_status' => 'publish','cat' => '1','meta_query' => array( array( 'key' => 'play_link', 'value' => '', 'compare' => '!=', ),),'orderby' => 'rand','posts_per_page' =>'1','paged' => (get_query_var('paged')) ? get_query_var('paged') : 1));$query = new WP_Query( $args );if($query ->have_posts()) :while($query ->have_posts()) : $query ->the_post();?><div class="ranpost" <?php if(has_post_thumbnail()) {?>style="background: url('<?php echo $eagle_thumbnail_url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );?>') center center no-repeat " <?php }?>><audio preload="false" > <source src="<?php echo get_post_meta($post->ID, 'play_link', true); ?>" type="audio/mpeg"> مرورگر شما از پخش صدا پشتیبانی نمی کند.</audio></div><?php endwhile; ?><?php endif; ?><?php wp_reset_query();get_footer();?>نکته: لطف کنید سطح آشناییتون با برنامه نویسی را درست تنظیم کنید تا در موقع پاسخ دادن بدونیم چه توضیحاتی رو احتیاج دارید 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 (ویرایش شده) با همونی که لینک دادید(من بیشتر طراحی میکنم تا برنامه نویسی) (با آرایه ها هم کار نکردم زیاد)خیلی ممنونولی این مشکل اصلی حل که نشد هیچدو تا مطلب نشون داده میشه ویرایش شده آبان 93 توسط ایگل دیزاین نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در آبان 93 گزارش بازنشر ارسال شده در آبان 93 شما این کد رو بدون دستکاری قرار دادید و دوتا مطلب برگردوند؟! کد که نمی تونه کاری که ازش خواسته نشده رو انجام بده لطف کنید کل کد رو جایگزین کنید و تابع get_post را با کوئری ترکیب نکنید کد تست شده و درسته 1 نقل قول لینک به ارسال
دانیال 172 ارسال شده در آبان 93 مالک گزارش بازنشر ارسال شده در آبان 93 (ویرایش شده) کل کد خروجیش 2 مطلب بود ویرایش شده آبان 93 توسط ایگل دیزاین نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .