我有以下片段用于调用帖子作者,时间和类别
<?php
printf( __( '<span>%s</span> by %s in %s', 'xxxx' ),
get_the_time( 'M j' ),
et_get_the_author_posts_link(),
get_the_category_list( ', ' )
);
&GT;
我想替换&#34; by&#34; (在作者面前)和&#34;在&#34; (带有图像的类别)
我试过这个:
'<span>%s</span> <img src="by.png"> %s <img src="in.png"> %s', 'xxxx'
和此:
$img = '<img src="/images/myimage.png" alt="Some Image" />';
printf( __( '<span>%s</span> %s %s in %s', 'xxxx' ),
get_the_time( 'M j' )
$img,
et_get_the_author_posts_link(),
get_the_category_list( ', ' )
);
这个在作者面前打印出图像的alt,但不是图像。
对此的任何帮助都将非常感激。感谢
答案 0 :(得分:0)
printf
按照您指定的顺序填充参数。如果您希望<img>
显示在<span>
内,那么您必须先在参数中列出图像:
printf('format string here', $img, get_the_time('M j'), etc...
^^^^^^^^^^^^^^^^^^^^^^^^^--- swap these two
e.g。
printf('%s %s %s', $arg1, $arg2, $arg3);
^------------^
^---------------^
^-------------------^
如果你搞乱参数顺序,例如$arg3, $arg2, $arg1
,然后它们将按此顺序打印......