使用php printf输出字符串

时间:2015-04-29 作者:KC Chai

我正在尝试在我的页面上显示具有函数的文本。请在下面查找代码。我没有得到我想要的输出。

<?php $content = the_content(); ?>
<?php printf(__(\'Output : %1$s\', \'theme\'), $content); ?>
其输出:

Foo
Output  :
我需要输出如下:

Output  : Foo
Kim Christensen的回答:

<?php $content = get_the_content(); ?>
<?php printf(__(\'Output : %1$s\', \'theme\'), $content); ?>
完美工作:

Output : Foo
彼得·古森的回答:

<?php $content = apply_filters( \'the_content\', get_the_content() ); ?>
<?php printf(__(\'Output : %1$s\', \'theme\'), $content); ?>
它将我的内容推送到下面:

Output :
Foo

4 个回复
最合适的回答,由SO网友:Pieter Goosen 整理而成

the_content() 将其输出打印到屏幕。您想要的是返回该输出并为其分配一个变量。

但你应该注意get_the_content() 只返回未过滤的内容,而不是像the_content(). 您应该手动添加这些过滤器,这非常简单。

您可以执行以下操作

$content = apply_filters( \'the_content\', get_the_content() );
当过滤器应用于时,上述方法似乎会将内容部分推到下一行get_the_content().

这里的一项工作是连接Output :get_the_content() 然后对其应用内容过滤器

<?php $content = apply_filters( \'the_content\', \'Output :\' . get_the_content() ); ?>
<?php printf(__( \'%1$s\', \'theme\'), $content); ?>
会给你你需要的

SO网友:Kim Christensen

您要使用get_the_content(), the_content() 打印内容。

get_the_content() 将分配给您的变量。

SO网友:m4n0

金姆是对的。

get_the_content() 显示预期结果。

<?php $content = get_the_content(); 
printf("Output: %1$s", $content); ?>

SO网友:Devendra Sharma

Another approach:

ob_start();
the_content();
$content = ob_get_clean();
结束

相关推荐

Function the_content

由于某些原因,在我的附件页模板上(http://capa.furniture/?attachment_id=1494) 我正在获取缩小图像的url。我不知道为什么。我没有得到缩略图的全尺寸,但您可以在这里看到更小的尺寸->http://cl.ly/image/3E1x1q3m070u如何使附件页在html中显示完整的图像链接,从而提高质量?