在过去的两天里,我尝试了很多东西。我现在处于停滞状态。我在这里读了很多帖子,但都没有奏效。
我有一个CPT“艺术家”。此CPT包含一个名为“特色艺术家”的自定义字段复选框“ecpt\\U特色艺术家”。在艺术家档案页面“艺术家档案”的Genesis网格循环中。php“我可以像这样瞄准特邀艺术家:
$featuredartist = get_post_meta($post->ID, \'ecpt_featured_artist\', true); ?>
<?php if( $featuredartist ) {
echo \'<div class="featured-ribbon"><a href="\';
echo get_permalink();
echo \'"><img src="image-link-here" alt="Featured Artist Ribbon"></a></div>\';
}
我目前正在使用比尔·埃里克森的代码将艺术家档案放入网格中。。。像这样:
function be_archive_post_class( $classes ) {
$classes[] = \'one-fourth\';
global $wp_query;
if( 0 == $wp_query->current_post || 0 == $wp_query->current_post % 4 )
$classes[] = \'first\';
return $classes;
}
add_filter( \'post_class\', \'be_archive_post_class\' );
What i\'m trying to accomplish:我只想在选中复选框的情况下查询帖子,并将它们显示在Genesis网格中的一个名为“特色艺术家”的页面上。现在我正试图通过一个页面模板来实现这一点。如果有更好的方法来实现这一点,我愿意接受建议。
现在,我甚至不能正确地查询帖子。我上次失败的尝试如下所示:
add_action(\'genesis_loop\', \'gt_custom_loop\');
function gt_custom_loop() {
global $paged;
$args = array(
\'post_type\' => \'artists\',
\'key\' => \'ecpt_featured_artist\',
\'compare\' => \'=\',
\'type\' => \'CHAR\',
\'value\' => 1,
);
// Accepts WP_Query args
// (http://codex.wordpress.org/Class_Reference/WP_Query)
genesis_custom_loop( $args );
}
感谢您的帮助!
编辑:我只在函数中将其减少到最少的代码。php文件,页面使用默认页面模板。
这段代码现在是404的我在我的“页面”上的特写艺术家:
add_action( \'pre_get_posts\', \'pw_filter_query\' );
function pw_filter_query ( $query ) {
if( $query->is_page(\'featured-artists\')) {
$query->set(\'post_type\', \'artists\');
}
}
怎么回事!?