1

我有一个 page.php 模板,我希望将第一部分包装起来<div id="featured">以不同的样式设置它。我该怎么做?

我不能在我的模板中插入 div,因为the_content()它只是输出整个内容。我可以在 HTML 模式下在编辑器中插入额外的标记,但是我必须为每个新页面重复这个过程。此外,编辑器似乎p无缘无故地插入了空标签。

标记看起来像这样:

<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-内容编辑器/

4

2 回答 2

1

精选图片和摘录的经典案例!

你会在你的functions.php中启用这两者

add_post_type_support( 'page', 'excerpt' );
add_theme_support( 'post-thumbnails');

然后在您的模板文件(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>

为了确保节选和特色图像在后端可见,在您的页面和帖子编辑屏幕中点击右上角的“屏幕选项”选项卡,并从下拉菜单中确保选中这些框。将您的文本添加到摘录输入框中,然后通过右侧的特色图片对话框上传您的图片。

于 2012-07-09T18:47:10.007 回答
0

您可以使用 Wordpress API 过滤 the_content(),不过,我不知道您是否可以自己完成此操作。看看这个插件

http://wordpress.org/extend/plugins/text-replace/

哪个在内容中进行了一些搜索和替换-也许您可以使用它。此处描述了过滤 the_content 的 API

http://codex.wordpress.org/Plugin_API/Filter_Reference

于 2012-07-09T18:54:53.977 回答