我得到这段代码是为了在我的博客页面上显示我的缩略图图像和视频,但当我尝试在另一个页面上显示缩略图时,它不起作用。
显示图像和视频的功能拇指
function show_blog_posts() {
global $post, $blog, $posts;
$first_vid = \'\';
ob_start();
ob_end_clean();
$output = preg_match_all(\'/<iframe.+src=[\\\'"]([^\\\'"]+)[\\\'"].*>/i\', $post->post_content, $matches);
$first_vid = $matches [1] [0];
if ($output == \'1\') {
echo \'<iframe width="100%" height="400" src="\';
echo $first_vid;
echo \'" frameborder="0" allowfullscreen></iframe>\';
} else { ?>
<?php the_post_thumbnail(\'large\');?>
我的短代码
add_shortcode(\'recent_blog_posts\', \'shortcode_recent_blog_posts\');
function shortcode_recent_blog_posts($atts) {
$str = \'\';
$args = array( \'numberposts\' => 3, \'post_status\'=>"publish",\'post_type\'=>"post",\'orderby\'=>"post_date");
$postslist = get_posts( $args );
foreach ($postslist as $post) : setup_postdata($post);
$str .= \'<div id ="article-section-box2" class="span3">\';
$str .= \'<div id= "image1" class="image-arcticle">\';
$str .= show_blog_posts($post->ID, \'\');
$str .= \'</div>\';
$str .=\'<p class="article_text">\'.excerpt(18).\'</p>\';
$str .=\'</div>\';
endforeach;
return $str;
有什么问题吗?谢谢
最合适的回答,由SO网友:s_ha_dum 整理而成
你通过了show_blog_posts
两个参数。。。
$str .= show_blog_posts($post->ID, \'\');
。。。但你已经定义为不接受任何。。。
function show_blog_posts() {
您的两个代码块之间似乎存在一些断开连接。我建议通过
$post
以您尝试的方式反对。
function show_blog_posts($post = NULL) {
global $blog, $posts;
if (empty($post)) {
global $post;
}
// the rest of your function
不知道第二个参数应该是什么。