【问题标题】:Wordpress Customization: post—date/time for the function twentyten_posted_on()Wordpress 自定义:发布日期/时间函数
【发布时间】:2011-02-12 18:02:00
【问题描述】:

大家好。我最近开始调整新的默认 wp 主题,二十个。当我意识到 loop() 函数调用了 twenty_posted_on(); 时,我正在努力改变发布日期和时间的显示方式;在哪里显示所述信息。所以我最终在functions.php中找到了所说的函数。到现在为止还挺好。这是它的样子:

function twentyten_posted_on() {
printf( __( '<span class="%1$s">Posted on</span> %2$s <span class="meta-sep">by</span> %3$s', 'twentyten' ),
    'meta-prep meta-prep-author',
    sprintf( '<a href="%1$s" title="%2$s" rel="bookmark"><span class="entry-date">%3$s</span></a>',
        get_permalink(),
        esc_attr( get_the_time() ),
        get_the_date()
    ),
    sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s">%3$s</a></span>',
        get_author_posts_url( get_the_author_meta( 'ID' ) ),
        sprintf( esc_attr__( 'View all posts by %s', 'twentyten' ), get_the_author() ),
        get_the_author()
    )
);

}

我唯一真正关心的是 &lt;span class="entry-date"&gt; 内部的内容,不幸的是在这种情况下是这个看起来很奇怪的字符组合:%3$s。这导致我在这里问各位知识渊博的伙伴,我到底如何将单个 var 或其他任何内容分解为实际的“日”、“月”和“年”片段,以便我可以有这样的东西:

<div class="day">$dayvar</div>
<div class="month">$monthvar</div>
<div class="year">$yearvar</div>

我需要能够执行上述操作,以便我可以适当地格式化我的日期信息并让网站看起来像我想要的那样。

参考资料:

提前致谢 G.坎波斯

【问题讨论】:

    标签: wordpress datetime time date customization


    【解决方案1】:

    “%3$s”是在 sprintf 中使用的符号。 "%3" 表示使用第三个变量参数 (get_the_date()) 作为字符串 ($s)。

    因此,您可以通过像这样更改二十个_posted_on 函数将原始跨度分成三个 div:

    function twentyten_posted_on() {
    printf( __( '<span class="%1$s">Posted on</span> %2$s <span class="meta-sep">by</span> %3$s', 'twentyten' ),
        'meta-prep meta-prep-author',
        sprintf( '<a href="%1$s" title="%2$s" rel="bookmark">
                <div class="day">%3$s</div>
                <div class="month">%4$s</div>
                <div class="year">%5$s</div>
            </a>',
            get_permalink(),
            esc_attr( get_the_time() ),
            date("d", strtotime(get_the_date())), 
            date("m", strtotime(get_the_date())), 
            date("Y", strtotime(get_the_date())), 
        ),
        sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s">%3$s</a></span>',
            get_author_posts_url( get_the_author_meta( 'ID' ) ),
            sprintf( esc_attr__( 'View all posts by %s', 'twentyten' ), get_the_author() ),
            get_the_author()
        )
    );
    

    或者您可以进入 get_the_date 函数并将其更改为以 3 个 div 的形式返回日期。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-06
      • 2019-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多