在unctions.php模板文件内将函数调用到print intf()时出现的一些问题

时间:2013-03-25 作者:AndreaNobili

我是PHP和WordPress的新手,我正在个性化现有的模板,我有以下问题。

function.php 模板文件I具有以下功能:

function admired_posted_on() {
    printf( __( \'<span class="sep">Posted on </span>
                 <a href="%1$s" title="%2$s" rel="bookmark">
                    <time class="entry-date" datetime="%3$s" pubdate>%4$s</time>
                 </a>
                 <span>%5$s</span>
                 <span class="by-author"> 
                    <span class="sep"> by bla</span> 
                    <span class="author vcard">
                        <a class="url fn n" href="%6$s" title="%7$s" rel="author">%8$s</a>
                    </span>
                 </span>
                 \', \'admired\' ),

    esc_url( get_permalink() ),
    esc_attr( get_the_time() ),
    esc_attr( get_the_date( \'c\' ) ),
    esc_html( get_the_date() ),
    sprintf(\'Views: \', get_PostViews(get_the_ID())),
    esc_url( get_author_posts_url( get_the_author_meta( \'ID\' ) ) ),
    sprintf( esc_attr__( \'View all posts by %s\', \'admired\' ), get_the_author() ),
    esc_html( get_the_author() )
    );
}
正如您所见,此函数创建一些HTML代码,这些代码将打印在模板的特定部分(在循环中)。

好的,您可以看到这一行:

sprintf(\'Views: \', get_PostViews(get_the_ID())),
应打印字符串“Views:”,后跟函数get\\u the\\u ID()返回的值(表示阅读帖子的人数)

如您所见,此函数是被调用函数列表中的第五个被调用函数,因此应将此值而不是%5$s 占位符,插入以下span标记:

<span>%5$s</span>
问题是,当我在这个范围内执行我的页面时,只会显示以下值:Views: 但不要显示get\\u PostViews()函数的输出。

如果不是原始行:

sprintf(\'Views: \', get_PostViews(get_the_ID())),
我用这句话:

sprintf(get_PostViews(get_the_ID())),
它工作得很好,但我无法预先添加解释文本:“视图:”

为什么?如何打印“视图”文本,然后打印get\\u PostViews函数的返回值?

Tnx公司

安德烈

1 个回复
最合适的回答,由SO网友:vancoder 整理而成

sprintf中没有说明符,因此它不会输出任何内容。尝试:

sprintf(\'Views: %d\', get_PostViews(get_the_ID())),
您可能必须改用%s,这取决于get\\u PostViews函数返回的内容。

结束

相关推荐

将PHP下载脚本合并到`unctions.php`中

我在WordPress上运行一个大型混音带下载站点。我目前正在开发一个新主题,我希望在主题中包含尽可能多的站点功能functions.php.为了提供下载服务,我有几个PHP脚本。访问者通过单击URL调用下载(示例):http://www.tjoonz.com/house.php?id=1234&file=post-slug.脚本清理参数并为MP3 来自专用服务器目录的文件。我主要担心的是这些脚本包含数据库连接细节,这是我更愿意使用的$wpdb 对于当前脚本(供参考)如果这有点过分,我深表歉意,但