我有一个page.php模板,我希望将第一部分包装在<div id="featured">
中以不同方式设置样式。我该怎么做?
我无法在我的模板中插入div,因为the_content()
只输出整个内容。我可以在HTML模式下在编辑器中插入附加标记,但是我必须为每个新页面重复此过程。此外,编辑器似乎无缘无故地插入空p
标签。
Markup看起来像这样:
<img>
<p>
<p>
<p>
<P>
...
我想要的是:
<div id="featured">
<img>
<p>
</div>
<p>
<p>
...
最好的方法是什么?
修改:感谢您的回答。经过一番搜索后,我发现了我正在寻找的东西,并不像我希望的那样直截了当,但这就是生活:) http://wp.smashingmagazine.com/2011/10/14/advanced-layout-templates-in-wordpress-content-editor/
答案 0 :(得分:1)
精选图片和摘录的经典案例!
你可以在你的functions.php
中同时启用它们add_post_type_support( 'page', 'excerpt' );
add_theme_support( 'post-thumbnails');
然后在你的tempate文件中(页面的page.php和帖子的single.php)你会有
<div id="featured">
// This is your excerpt
<?php if(!empty($post->post_excerpt)) { ?>
<div class="your-excerpt"><?php the_excerpt(); ?></div>
<?php } ?>
// And this is your featured image - pulled in at 960 wide
<?php if (function_exists('has_post_thumbnail') && has_post_thumbnail()) {
$img_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), array( 960,960 )); ?>
<div class="the-image">
<img src="<?php echo $img_src[0]; ?>" />
</div>
<?php }; ?>
</div>
要确保在后端可以看到摘录和精选图像,请在页面和后期编辑屏幕中点击右上角的“屏幕选项”标签,然后从下拉菜单中确保选中这些复选框。将文本添加到摘录输入框中,然后通过右侧的特色图像对话框上传图像。
答案 1 :(得分:0)
您可以使用Wordpress API过滤the_content(),但我不知道您是否可以自己完成此操作。看看这个插件
http://wordpress.org/extend/plugins/text-replace/
在内容中进行了一些搜索和替换 - 也许您可以使用它。用于过滤the_content的API在此处描述