使用只提供几个参数的短代码插件。 https://wordpress.org/plugins/radio-station我正在使用[list-shows]短代码。我想提取内容的摘录,我想这将适用于很多情况并提高我对短代码的理解。
我能够将缩略图添加到输出中,但不能添加内容,这似乎在其他短代码中称为“show_desc”。您可以在此页面上看到输出:http://www.kzmuradio.org/kzmu-programs/
这是短代码的代码。为我的无知道歉。学习曲线。
/* Shortcode for displaying a list of all shows * Since 2.0.0*/
function station_shortcode_list_shows($atts) {
extract( shortcode_atts( array(
'genre' => '',
'show_desc' => 1
), $atts ) );
//grab the published shows
$args = array(
'numberposts' => -1,
'offset' => 0,
'orderby' => 'title',
'order' => 'ASC',
'post_type' => 'show',
'post_status' => 'publish',
'meta_query' => array(
array(
'key' => 'show_active',
'value' => 'on',
)
)
);
if($genre != '') {
$args['genres'] = $genre;
}
$shows = get_posts($args);
//if there are no shows saved, return nothing
if(!$shows) {
return false;
}
$output = '';
$output .= '<div id="station-show-list">';
$output .= '<ul>';
foreach($shows as $show) {
$output .= '<li>' . get_the_post_thumbnail($show->ID, 'thumbnail') . '<a href="'.get_permalink($show->ID).'">'.get_the_title($show->ID).'</a></li>';
$output .= '</li>';
}
$output .= '</ul>';
$output .= '</div>';
return $output;
答案 0 :(得分:0)
您可以通过foreach循环中的$ show访问所有数据。要查看它们包含的内容,可以使用print_r():
print_r( $show );
对于摘录和内容,您可以使用:
echo $show->post_excerpt;
echo wpautop( $show->post_content );