如果我可以根据post_type过滤搜索结果
at:if ($post->post_type == "mobile-experience") { ?>
如何添加另外两个过滤器,这些过滤器将根据自定义字段名称
过滤结果我试过了:
if ($post->post_meta == "mobile_app") { ?>
但是不起作用。
自定义字段名称为' Mobile App
'。
我想在3个自定义字段名称下显示搜索结果;什么都行不通。
<?php
// Start the Loop.
while ( have_posts() ) : the_post();
if ($post->post_type == "mobile-experience") { ?>
<?php get_template_part( 'search-mobile-experience'); // works
}
if ($post->post_meta == "mobile_app") { ?> // Doesn't work
<?php get_template_part( 'new-mobile-app_template');
}
else { ?>
更新:周四下午1:15($#&amp; !!)
非常感谢建议人员;这让我疯了。以下是我目前的情况。但仍然显示我的自定义字段过滤器被忽略。
<?php
// Start the Loop.
while ( have_posts() ) : the_post();
if ($post->post_type == "mobile-experience") { ?>
<?php get_template_part( 'search-mobile-experience');
}
if ( get_post_meta($post->ID, 'mobile_app', true) == "mobile_app") { ?>
<?php get_template_part( 'new-mobile-app-template');
}
else { ?>
<p><?php the_date(); ?></p>
<?php get_template_part( 'content', get_post_format() );
}
endwhile;
else :
// If no content, include the "No posts found" template.
get_template_part( 'content', 'none' );
endif;
?>
然后我有2个模板:
new-mobile-app-template.php
和
search-mobile-experience.php
(最终我将有一个用于第三个,或自定义字段过滤器2)
两者都是这样的:
<?php
/**
* The default template for displaying content. Used for both single and index/archive/search.
*
* @package WordPress
* @subpackage Twenty_Twelve
* @since Twenty Twelve 1.0
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php if ( is_sticky() && is_home() && ! is_paged() ) : ?>
<div class="featured-post">
<?php _e( 'Featured post', 'twentytwelve' ); ?>
</div>
<?php endif; ?>
<header class="entry-header">
<?php the_post_thumbnail(); ?>
<p>Mobile Website | March 28, 2014 </p>
<h1 class="entry-title">
<a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a>
</h1>
</header><!-- .entry-header -->
<div class="entry-summary">
<?php the_excerpt(); ?>
<?php if ((get_custom_field('Objective')) !== ''): ?>
<?php print_custom_field('Objective'); ?>
<?php endif ?>
</div>
</article>
<!-- #post --><hr />
我的目标是拥有一个包含3个类别的搜索结果页面:
文章(除了下面提到的两个自定义字段之外的所有帖子和页面)
{搜索结果}
自定义字段#1
{搜索结果}
自定义字段#2
{搜索结果}
答案 0 :(得分:0)
get_post_meta()怎么样?类似的东西:
<?php
// Start the Loop.
while ( have_posts() ) : the_post();
if ($post->post_type == "mobile-experience") { ?>
<?php get_template_part( 'search-mobile-experience'); // works
}
if ( get_post_meta($post->ID, 'mobile_app', true) == "mobile_app") { ?>
<?php get_template_part( 'new-mobile-app_template');
}
else { ?>
答案 1 :(得分:0)
梅维斯&#39;答案是对的。此外,无论值如何都要检查元:
if( '' != get_post_meta( get_the_ID(), 'mobile_app', true ) ) {
// do stuff
}