我写了一个非常快速和简单的标记,它很有效--我知道WordPress有一个内置的oEmbed 系统,这不符合它-at all. 然而,如果你能调整一个至少对我有效的解决方案,我不想分享它,那就太傻了。
Sampled Code Notes: 对于这个项目,我必须为videos
这样我的客户就可以很容易地进入并添加带有YouTube视频ID的视频帖子。这些视频是他们公司上市的房子,然后专业地拍摄了视频。他们目前的工作流程正常,视频制作速度约为5-6周/年,可能为13-15个视频/年。
当我不得不开始这个项目时,我当时的理解是,oEmbed并不是我真正需要的,我现在可以in retrospect 遗憾的是,在语法、优雅等方面的争论上做出了决定——尽管在这么长的时间里,它已经足够僵化了,没有失败。
尽管如此,我还使用了Custom Metabox Class 使用get_post_meta
对于视频的ID,我从来没有对输入进行过验证或清理,以防输入的视频不是期望有人发布到自定义帖子类型的videos
事实上,他们不会跳过这一非常简单的步骤<我有时有点过于自信,因此您可能需要根据您的需要添加一些这些东西
Getting Started: 创建`页面-your-custom-post-type.php并输入以下内容:
<?php
/*
Template Name: Your Template Name
*/
get_header();
function customBlogFeed() {
// The Query
$the_query = new WP_Query( array ( \'post_type\' => \'your-custom-post-type\', \'posts_per_page\' => \'6\' ) );
重要的是
\'post_type\' => \'your-custom-post-type\'
链接到您的页面-
your-custom-post-type.php页面,否则它将不知道输出什么。此外,您可以将更多参数添加到
WP_Query array()
WP_Query WordPress Codex Page.
// The Loop
while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<div class="port">
<h2 class="smaller">
<a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( \'Permalink to %s\', \'twentyten\' ), the_title_attribute( \'echo=0\' ) ); ?>" rel="bookmark">
<?php the_title(); ?>
</a>
<span style="font-size: 11px;">
Posted on: <?php the_time(get_option(\'date_format\')); ?> by: <?php echo get_the_author(); ?>
</span>
</h2>
默认情况下,WordPress会通过single链接到您的自定义帖子类型。php(如果存在)并回退到索引。php(如果单个)。php不存在。但是,如果创建一个-
your-custom-post-type.php WordPress将使用它作为
page-template
用于自定义帖子类型。
<object width="288" height="176">
<param name="movie" value="http://www.youtube.com/v/<?php $meta = get_post_meta(get_the_ID(), \'sb_metabox_video_url\', true); if (strlen($meta) > 1 ) { echo $meta; } ?>?version=3&rel=0&modestbranding=1&autoplay=0&controls=0"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/<?php $meta = get_post_meta(get_the_ID(), \'sb_metabox_video_url\', true); if (strlen($meta) > 1 ) { echo $meta; } ?>?version=3&rel=0&modestbranding=1&autoplay=0&controls=0" type="application/x-shockwave-flash" width="288" height="176" allowscriptaccess="always" allowfullscreen="true"></embed>
</object>
oEmbed: 我还将这些参数传递到YouTube:
?version=3&rel=0&modestbranding=1&autoplay=0&controls=0
它告诉它如何设置它渲染的视频播放器的样式。
<?php the_excerpt(); ?>
<a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( \'Continue reading %s\', \'twentyten\' )); ?>" rel="bookmark"><img src="<?php bloginfo(\'template_directory\') ?>/images/button_more.gif" alt="<?php printf( esc_attr__( \'Continue reading %s\', \'twentyten\' )); ?>" border="0" class="none" style="height: 28px!important; width:55px!important;" /></a>
</div>
<?php endwhile;
// Reset Post Data
wp_reset_postdata();
}
?>
用你的
wp_reset_postdata();
你有一个页面可以使用
WP_Query
要循环通过6个帖子,请使用
the_title()
the_excerpt
还有一段嵌入式视频。
干杯