Помощ с wordpress код

ReminD

Well-Known Member
Нещата са такива - имам в 1 тема един код, който показва related постове според таговете, а искам да показва релейтед постове според категориите, ето го кода

Код:
<!-- Related Posts-->
							<?php 
							$backup = $post;
							$tags = wp_get_post_tags($post->ID);
							if ($tags) {
								$tag_ids = array();
								foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
							
								$args=array(
									'tag__in' => $tag_ids,
									'post__not_in' => array($post->ID),
									'showposts'=>6, // Number of related posts that will be shown.
									'caller_get_posts'=>1
								);
								$my_query = new wp_query($args);
								if( $my_query->have_posts() ) {
									echo '<h2>Related And Similar Posts</h2><ul class="relatedPosts">';
									while ($my_query->have_posts()) {
										$my_query->the_post();
									?>
										<li><?php the_post_thumbnail(array(40,40)); ?><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
									<?php
									}
									echo '</ul>';
								}
							}
							$post = $backup;
							wp_reset_query();
							 ?>
							<!-- end Related Posts-->



Който може да помогне ще съм му страшно благодарен
 
От: Помощ с wordpress код

PHP:
<?php 
							$backup = $post;
							$cats = wp_get_post_terms($post->ID, 'category');
							if ($cats) {
								$cat_ids = array();
								foreach($cats as $individual_cat) $cat_ids[] = $individual_cat->term_id;
							
								$args=array(
									'category__in' => $cat_ids,
									'post__not_in' => array($post->ID),
									'showposts'=>6, // Number of related posts that will be shown.
									'ignore_sticky_posts'=>1
								);
								$my_query = new wp_query($args);
								if( $my_query->have_posts() ) {
									echo '<h2>Related And Similar Posts</h2><ul class="relatedPosts">';
									while ($my_query->have_posts()) {
										$my_query->the_post();
									?>
										<li><?php the_post_thumbnail(array(40,40)); ?><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
									<?php
									}
									echo '</ul>';
								}
							}
							$post = $backup;
							wp_reset_query();
							 ?>
Такова трябва да е ама тествай дали наистина вади каквото трябва че не мога да тествам като хората в момента.
 
От: От: Помощ с wordpress код

Ето ти един по-кратък код

PHP:
<h4 class="single-more">Последно от <?php $category = get_the_category(); echo $category[0]->cat_name; ?></h4>
				<?php
					global $post;
					$category = get_the_category($post->ID);
					$category = $category[0]->cat_ID;
					$myposts = get_posts(array('numberposts' => 5, 'offset' => 0, 'category__in' => array($category), 'post__not_in' => array($post->ID),'post_status'=>'publish'));
					foreach($myposts as $post) :
					setup_postdata($post);
				?>
				<p>» <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></p>
				<?php endforeach; ?><?php wp_reset_query(); ?>
 
От: От: От: Помощ с wordpress код

Ето ти един по-кратък код

PHP:
<h4 class="single-more">Последно от <?php $category = get_the_category(); echo $category[0]->cat_name; ?></h4>
				<?php
					global $post;
					$category = get_the_category($post->ID);
					$category = $category[0]->cat_ID;
					$myposts = get_posts(array('numberposts' => 5, 'offset' => 0, 'category__in' => array($category), 'post__not_in' => array($post->ID),'post_status'=>'publish'));
					foreach($myposts as $post) :
					setup_postdata($post);
				?>
				<p>» <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></p>
				<?php endforeach; ?><?php wp_reset_query(); ?>

Тоя ще направи връзка само по една (първата) категория. Ако постът принадлежи на повече от една категории, няма да ги вземе предвид като търси свързани постове.
А и презаписва глобалната $post без видима причина.

Само с окомера като гледам първият ми харесва повече.
 

Горе