Я создал собственный тип сообщений, называемый news
, в которых есть мета-поля. Я хотел бы напечатать данные из метаболизма в качестве отрывка. Как я могу это сделать?
Это код, который я использую, который печатает данные:
<?php $loop = new WP_Query( array( 'post_type' => 'news', 'posts_per_page' => 10, 'post_parent' => 0 ) ); ?> <?php while ( $loop->have_posts() ) : $loop->the_post(); ?> <?php the_excerpt(); ?> <p><?php echo get_post_meta( $post->ID, 'twpb_news_textdate', true ); ?></p> <p><?php echo get_post_meta( $post->ID, 'twpb_news_rub', true ); ?></p> <p><?php echo get_post_meta( $post->ID, 'twpb_news_textnews', true ); ?></p> <?php endwhile; ?>
Вы можете использовать wp_trim_words
:
<p><?php echo wp_trim_words( get_post_meta( $post->ID, 'twpb_news_textnews', true ), 55, '[…]' ); ?></p>
Или, если вы хотите, чтобы фильтры, применимые к регулярным выдержкам, также использовались, напишите для этого свою собственную оболочку:
function wpse115106_news_excerpt( $text = '' ) { $excerpt_length = apply_filters( 'excerpt_length', 55 ); $excerpt_more = apply_filters( 'excerpt_more', ' ' . '[…]' ); return wp_trim_words( $text, $excerpt_length, $excerpt_more ); }
а затем использовать
<p><?php echo wpse115106_news_excerpt( get_post_meta( $post->ID, 'twpb_news_textnews', true ) ); ?></p>
в вашей петле.