ahmad4u 115 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 سلام دوستان چگونه میتونم یکسری محصولات مرتبط با دسته بندیرا بین مطالب (پست) قرار بدم؟ مثلا براش تعریف کنیم برای مطالب دسته بندی با ای دی 15 محصولات دسته بندی با ایدی 50 نمایش بده و برای مطالب دسته بندی با ای دی 10 محصولات دسته بندی با ایدی 52 نمایش بده و ... افزونه نمیخوام بصورت کد باشه لینک به ارسال
zarcod 59 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 سلام ووکامرس خودش قسمت محصولات مرتبط داره شما میتونید محصولاتی که میخواهید نمایش بدهد را انتخاب کنید . اگر از طریق برنامه نویسی بخواهید انجام دهید . یک دسته بندی خاص بسازید و محصولاتی که میخواهید نمایش بدهبد را داخل آن دسته بندی اضافه کنید و در قسمت کد نویسی یک کوئری بزنید و از آن دسته بندی هر تعداد که میخواهید را به نمایش بگذارید. 1 لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 در 2 ساعت قبل، zarcod گفته است : سلام ووکامرس خودش قسمت محصولات مرتبط داره شما میتونید محصولاتی که میخواهید نمایش بدهد را انتخاب کنید . اگر از طریق برنامه نویسی بخواهید انجام دهید . یک دسته بندی خاص بسازید و محصولاتی که میخواهید نمایش بدهبد را داخل آن دسته بندی اضافه کنید و در قسمت کد نویسی یک کوئری بزنید و از آن دسته بندی هر تعداد که میخواهید را به نمایش بگذارید. تشکر از پاسختون چون ما میخواهیم محصولات دسته بندی های مختلف را بصورت رندوم نمایش بدیم تنها راه اینه بصورت کدنویسی باشه و با توجه به اینکه 10 دسته بندی مطلب و فروشگاهی نداریم بهتره برای نمایش محصولات مرتبط با هر دسته بندی مطلب اونارو بصورت دستی کددهی کنیم. مثلا براش تعریف کنیم برای مطالب دسته بندی با ای دی 15 محصولات دسته بندی با ایدی 50 نمایش بده و برای مطالب دسته بندی با ای دی 10 محصولات دسته بندی با ایدی 52 نمایش بده و ... لینک به ارسال
zarcod 59 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 میتوانید با متا باکس ها id رو در صفحه محصول از کاربر بگیرید و داخل کوئری که میزنید از آن استفاده کنید و اینطوری میتوانید بصورت دستی هر محصول را جدا گانه شخصی سازی کنید. 1 لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 در 10 ساعت قبل، zarcod گفته است : میتوانید با متا باکس ها id رو در صفحه محصول از کاربر بگیرید و داخل کوئری که میزنید از آن استفاده کنید و اینطوری میتوانید بصورت دستی هر محصول را جدا گانه شخصی سازی کنید. خوب کد اینایی که گفتی لازم دارم لینک به ارسال
zarcod 59 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 در 9 ساعت قبل، ahmad4u گفته است : خوب کد اینایی که گفتی لازم دارم آموزشش اینجا هست https://developer.wordpress.org/reference/functions/add_meta_box/ اگر باز مشکل داشتید بفرمایید درخدمتم 1 لینک به ارسال
asadiy4n 2807 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 در در ۱۴۰۰/۴/۲۷ در 13:28، ahmad4u گفته است : چون ما میخواهیم محصولات دسته بندی های مختلف را بصورت رندوم نمایش بدیم تنها راه اینه بصورت کدنویسی باشه و با توجه به اینکه 10 دسته بندی مطلب و فروشگاهی نداریم بهتره برای نمایش محصولات مرتبط با هر دسته بندی مطلب اونارو بصورت دستی کددهی کنیم. خب در این صورت بهترین راه استفاده از حلقه معمول هست، فقط آرگومان ها رو با دستورات شرطی برای هر دسته بندی تغییر میدید https://developer.wordpress.org/reference/classes/wp_query/ 1 لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 راستش از کدنویسی سر در نمیارم میشه کد نهایی را قرار بدید لینک به ارسال
zarcod 59 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 این کد را داخل فایل فانکشن بگذارید add_action('add_meta_boxes','meta_idprod_related'); add_action('save_post' , 'save_meta_id_related'); function meta_idprod_related(){ $qpid= array('product'); foreach ($qpid as $qid) { add_meta_box('id_rel_product', 'آی دی محصول مرتبط ', 'related_id_product', $qid, 'side', ''); } } function related_id_product($post){ $relat=get_post_meta($post ->ID,'id_rel',true); ?> <input class="input " name="txt_id_rel" type="text" value="<?php echo $relat?>" /> <?php } function save_meta_id_related($post_id){ if (isset($_POST['txt_id_rel']) && !empty($_POST['txt_id_rel'])){ update_post_meta($post_id , 'id_rel',sanitize_text_field($_POST['txt_id_rel'])); } } این کد را جایی که میخواهید نمایش داده شود .فقط جای نامک دسته بندی نامک دسته مورد نظر را وارد کنید به انگلیسی <?php $relat=get_post_meta($post ->ID,'id_rel',true); $qprod = new WP_Query(array( 'post_type' => 'product', "posts_per_page" => 3, 'product_cat' =>'نامک دسته بندی', )); if ($qprod->have_posts()) : while ($qprod->have_posts()) : $qprod->the_post(); ?> <div class="post-zarcod"> <figure class="thomb-slid"> <a href="<?php the_permalink(); ?>"> <?php the_post_thumbnail(); ?> </a> </figure> <div class="title-prod-zarcod"> <a href="<?php the_permalink(); ?>"> <h2><?php the_title(); ?></h2> </a> </div> </div> <?php endwhile; wp_reset_postdata(); endif; ؟> 1 لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 در 8 ساعت قبل، zarcod گفته است : این کد را داخل فایل فانکشن بگذارید add_action('add_meta_boxes','meta_idprod_related'); add_action('save_post' , 'save_meta_id_related'); function meta_idprod_related(){ $qpid= array('product'); foreach ($qpid as $qid) { add_meta_box('id_rel_product', 'آی دی محصول مرتبط ', 'related_id_product', $qid, 'side', ''); } } function related_id_product($post){ $relat=get_post_meta($post ->ID,'id_rel',true); ?> <input class="input " name="txt_id_rel" type="text" value="<?php echo $relat?>" /> <?php } function save_meta_id_related($post_id){ if (isset($_POST['txt_id_rel']) && !empty($_POST['txt_id_rel'])){ update_post_meta($post_id , 'id_rel',sanitize_text_field($_POST['txt_id_rel'])); } } این کد را جایی که میخواهید نمایش داده شود .فقط جای نامک دسته بندی نامک دسته مورد نظر را وارد کنید به انگلیسی <?php $relat=get_post_meta($post ->ID,'id_rel',true); $qprod = new WP_Query(array( 'post_type' => 'product', "posts_per_page" => 3, 'product_cat' =>'نامک دسته بندی', )); if ($qprod->have_posts()) : while ($qprod->have_posts()) : $qprod->the_post(); ?> <div class="post-zarcod"> <figure class="thomb-slid"> <a href="<?php the_permalink(); ?>"> <?php the_post_thumbnail(); ?> </a> </figure> <div class="title-prod-zarcod"> <a href="<?php the_permalink(); ?>"> <h2><?php the_title(); ?></h2> </a> </div> </div> <?php endwhile; wp_reset_postdata(); endif; ؟> تشکر از شما بنظرم این کد فقط برای یک دسته بندی محصول و دسته بندی کاربرد داره و بنظرم باید طبق گفته دوستمون @asadiy4n برای چند دساه بندی از حالت شرطی استفاده کرد لینک به ارسال
zarcod 59 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 (ویرایش شده) در 1 ساعت قبل، ahmad4u گفته است : بنظرم این کد فقط برای یک دسته بندی محصول و دسته بندی کاربرد داره و بنظرم باید طبق گفته دوستمون @asadiy4n برای چند دساه بندی از حالت شرطی استفاده کرد ببخشید فراموش کردم شما باید جای نامک دسته بندی $relat بگذارید و داخل متا باکس صفحه محصول که اضافه شده نامک محصول را بنویسید و ذخیره کنید بطور خودکار هر دسته بندی بخواهید میتوانید اضافه کنید. این کد را جای کد قبلی استفاده کنید <?php $relat=get_post_meta($post ->ID,'id_rel',true); $qprod = new WP_Query(array( 'post_type' => 'product', "posts_per_page" => 3, 'product_cat' => $relat, )); if ($qprod->have_posts()) : while ($qprod->have_posts()) : $qprod->the_post(); ?> <div class="post-zarcod"> <figure class="thomb-slid"> <a href="<?php the_permalink(); ?>"> <?php the_post_thumbnail(); ?> </a> </figure> <div class="title-prod-zarcod"> <a href="<?php the_permalink(); ?>"> <h2><?php the_title(); ?></h2> </a> </div> </div> <?php endwhile; wp_reset_postdata(); endif; ؟> ویرایش شده تیر 00 توسط zarcod لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 بنظرتون الان این کد برای سایت من که 100.000 محصول داره کاربرد داره چون لازمه تو تک تک محصولات و متاباکسشون نامک محصول اضافه بشه لینک به ارسال
zarcod 59 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 در 11 ساعت قبل، ahmad4u گفته است : بنظرتون الان این کد برای سایت من که 100.000 محصول داره کاربرد داره چون لازمه تو تک تک محصولات و متاباکسشون نامک محصول اضافه بشه شما فرمودید چگونه میشه این کار را کرد بنده راه حل دادم خدمتتان اگر از اول فرموده بودید میخواهید برای تعداد بالای کالا این کار را انجام دهید مسئله فرق میکرد. اصول کار همینه میتوانید برای کار مورد نظرتان کدها را کمی تغییر دهید 1 لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 تشکر در تاپیک دیگری برای تعداد بالای محصول درخواست را مطرح میکنیم لینک به ارسال
asadiy4n 2807 ارسال شده در تیر 00 گزارش بازنشر ارسال شده در تیر 00 در 22 ساعت قبل، ahmad4u گفته است : چون لازمه تو تک تک محصولات و متاباکسشون نامک محصول اضافه بشه راه حلشون که خوب بود! شما دقیقا بگید میخواید چیکار کنید تا بشه راهنمایی کرد شما میخواید مطالب مرتبط رو بر اساس یه دسته بندی نمایش بدید حالا این دسته بندی اتوماتیک انتخاب بشه یا توسط شما ؟ 1 لینک به ارسال
ahmad4u 115 ارسال شده در تیر 00 مالک گزارش بازنشر ارسال شده در تیر 00 در 4 ساعت قبل، asadiy4n گفته است : راه حلشون که خوب بود! شما دقیقا بگید میخواید چیکار کنید تا بشه راهنمایی کرد شما میخواید مطالب مرتبط رو بر اساس یه دسته بندی نمایش بدید حالا این دسته بندی اتوماتیک انتخاب بشه یا توسط شما ؟ مثلا براش تعریف کنیم برای مطالب دسته بندی با ای دی 15 محصولات دسته بندی با ایدی 50 نمایش بده و برای مطالب دسته بندی با ای دی 10 محصولات دسته بندی با ایدی 52 نمایش بده و ... با قرار دادن کد مذبور یا شورت کد در بین متن پست ها ، محصولات (تعدادش 3-4 یا بصورت اسلایدری) نمایش بدیم لینک به ارسال
asadiy4n 2807 ارسال شده در مرداد 00 گزارش بازنشر ارسال شده در مرداد 00 خب در این حالت فقط به یه دستور شرطی نیاز دارید و دیگه نیازی به زمینه دلخواه نیست if ( has_term( 'cat1', 'product_cat' ) ){ $YourCat = 50; }elseif( has_term( 'cat2', 'product_cat' ) ){ $YourCat = 52; }else{ $YourCat = 100; } $args = array( 'post_type' => 'product', 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => $YourCat ) ), 'posts_per_page' => 10, ); حالا این مثال رو به هر شکلی که دوس دارید می تونید تغییر بدید اگر بازم سوالتون رو اشتباه متوجه شدم همینجا اعلام کنید 1 لینک به ارسال
ahmad4u 115 ارسال شده در مرداد 00 مالک گزارش بازنشر ارسال شده در مرداد 00 در 9 ساعت قبل، asadiy4n گفته است : خب در این حالت فقط به یه دستور شرطی نیاز دارید و دیگه نیازی به زمینه دلخواه نیست if ( has_term( 'cat1', 'product_cat' ) ){ $YourCat = 50; }elseif( has_term( 'cat2', 'product_cat' ) ){ $YourCat = 52; }else{ $YourCat = 100; } $args = array( 'post_type' => 'product', 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => $YourCat ) ), 'posts_per_page' => 10, ); حالا این مثال رو به هر شکلی که دوس دارید می تونید تغییر بدید اگر بازم سوالتون رو اشتباه متوجه شدم همینجا اعلام کنید تشکر الان این کد صورت کلی موضوع رو نشون میده نیاز به کدی دارم که توش تعداد محصولات نمایشی بهمراه تصویر و نام اونا رو نمایش بده لینک به ارسال
asadiy4n 2807 ارسال شده در مرداد 00 گزارش بازنشر ارسال شده در مرداد 00 <?php if ( has_term( 'cat1', 'product_cat' ) ){ $YourCat = 50; }elseif( has_term( 'cat2', 'product_cat' ) ){ $YourCat = 52; }else{ $YourCat = 100; } $args = array( 'post_type' => 'product', 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => $YourCat ) ), 'posts_per_page' => 10, ); $query1 = new WP_Query( $args ); if ( $query1->have_posts() ): ?> <div class="posts"> <?php while ( $query1->have_posts() ) { $query1->the_post(); ?> <div class="post"> <div><?php the_post_thumbnail(); ?></div> <div><?php the_title(); ?></div> </div> <?php } wp_reset_postdata(); ?></div><?php endif; ?> در 58 دقیقه قبل، ahmad4u گفته است : الان این کد صورت کلی موضوع رو نشون میده نیاز به کدی دارم که توش تعداد محصولات نمایشی بهمراه تصویر و نام اونا رو نمایش بده سایر موارد داخل حلقه رو هم بسته به نیاز خودتون تغییر بدید 1 لینک به ارسال
ahmad4u 115 ارسال شده در مرداد 00 مالک گزارش بازنشر ارسال شده در مرداد 00 در 1 ساعت قبل، asadiy4n گفته است : <?php if ( has_term( 'cat1', 'product_cat' ) ){ $YourCat = 50; }elseif( has_term( 'cat2', 'product_cat' ) ){ $YourCat = 52; }else{ $YourCat = 100; } $args = array( 'post_type' => 'product', 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => $YourCat ) ), 'posts_per_page' => 10, ); $query1 = new WP_Query( $args ); if ( $query1->have_posts() ): ?> <div class="posts"> <?php while ( $query1->have_posts() ) { $query1->the_post(); ?> <div class="post"> <div><?php the_post_thumbnail(); ?></div> <div><?php the_title(); ?></div> </div> <?php } wp_reset_postdata(); ?></div><?php endif; ?> سایر موارد داخل حلقه رو هم بسته به نیاز خودتون تغییر بدید تشکر بنظرم این کد فقط نهایتا برای دو دسته بندی کاربرد داره برای استفاده از چندین دسته بندی (10-20) باید از switch استفاده کرد یا elseif ؟ لینک به ارسال
asadiy4n 2807 ارسال شده در مرداد 00 گزارش بازنشر ارسال شده در مرداد 00 در 8 ساعت قبل، ahmad4u گفته است : نظرم این کد فقط نهایتا برای دو دسته بندی کاربرد داره نه می تونید تمام دسته بندیهاتون رو با همون elseif قرار بدید از جفتش میشه استفاده کرد elseif دستتون بازتره لینک به ارسال
ahmad4u 115 ارسال شده در مرداد 00 مالک گزارش بازنشر ارسال شده در مرداد 00 در در ۱۴۰۰/۵/۱ در 15:24، asadiy4n گفته است : <?php if ( has_term( 'cat1', 'product_cat' ) ){ $YourCat = 50; }elseif( has_term( 'cat2', 'product_cat' ) ){ $YourCat = 52; }else{ $YourCat = 100; } $args = array( 'post_type' => 'product', 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => $YourCat ) ), 'posts_per_page' => 10, ); $query1 = new WP_Query( $args ); if ( $query1->have_posts() ): ?> <div class="posts"> <?php while ( $query1->have_posts() ) { $query1->the_post(); ?> <div class="post"> <div><?php the_post_thumbnail(); ?></div> <div><?php the_title(); ?></div> </div> <?php } wp_reset_postdata(); ?></div><?php endif; ?> سایر موارد داخل حلقه رو هم بسته به نیاز خودتون تغییر بدید کد بالا در صفحه اضافه شد اما چیزی نمایش داده نشد با حالت های زیر تست شد و باز چیزی نمایش داده نشد 1- cat= post cat id , $YourCat = product cat id 2- cat= product cat id , $YourCat = post cat id لینک به ارسال
ahmad4u 115 ارسال شده در مرداد 00 مالک گزارش بازنشر ارسال شده در مرداد 00 کسی نمیتونه کمک کنه؟ لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری