在wordpress中格式化帖子

时间:2011-05-18 20:44:35

标签: wordpress-theming wordpress

我正在开发一个wordpress主题,但我一直在格式化single.php。 我在帖子中添加了一个幻灯片插件,该插件加载the_content()函数,包含帖子文本,并the_title()加载标题。

看起来像这样:

<h1>the_title()</h1>

<div id=post>the_content</div>

问题是,我需要自定义它的显示方式。

我需要显示:

<div>theplugin</div>

<div id=post>

<span>the_title</span>

the text

</div>

我尝试用add_filters做到这一点,但我不幸运。

我希望你能理解我的解释,如果你需要更多细节,请告诉我。

先谢谢。

2 个答案:

答案 0 :(得分:0)

您只需要更改功能所在的位置。像这样:

<div>theplugin</div>
<div id=post>
    <span><?php the_title(); ?></span>
    <?php the_content(); ?> 
</div>

编辑:我误解了问题的描述。现在我的回答是我理解问题所在:

该插件使用the_content函数的钩子。如果您查看wp-content/plugins/your-plugin内的所有php文件,将会有一个包含以下代码的文件:

add_action('the_content','some-function-name');

这告诉wordpress每次运行函数some-function-name时都运行函数the_content。因此,您需要查找some-function-name以了解如何自定义输出。

答案 1 :(得分:0)

如果用户可以在编辑器中向帖子添加插件组件,则通常会通过短代码添加它们。

如果你的插件就是这种情况,你可以用apply_filters()添加它。以下是如何在帖子内容之外的热门 nextgen gallery 插件中添加幻灯片的示例:

<?php
    $slideshow = apply_filters('the_content', '[slideshow id=1]' );
    echo $slideshow;
?>

上述代码可以添加到 single.php ,任何静态页面的页面模板文件中,也可以直接添加到 header.php 中以显示在所有页面上。 如果你指定了你正在使用的插件,我会相应地更新答案。

如果它确实应该通过函数直接调用,我是Ancide的第二个答案。