我在Wordpress
中有这个代码段:
<?php if ( is_user_logged_in() ) {
echo " <span class=blabla>
<a href="<?php echo home_url() . '/author/' . get_the_author_meta( 'user_login', wp_get_current_user()->ID ); ?>" >My personal page</a>
</span> "; } ?>
因为它有两个echo
,我使用了这个:
<?php if ( is_user_logged_in() ) {
echo " <span class=blabla>
<a href=\"home_url() . '/author/' . get_the_author_meta( 'user_login', wp_get_current_user()->ID ); \" >My personal page</a>
</span> "; } ?>
由于某种原因,它不起作用。我做错了什么?
答案 0 :(得分:1)
为了使其可读,将PHP与HTML分开并拆分长行
<?php if ( is_user_logged_in() ) {
$url = home_url() . '/author/';
$url .= get_the_author_meta( 'user_login', wp_get_current_user()->ID );
?>
<span class=blabla>
<a href="<?php echo $url ?>">My personal page</a>
</span>
<? } ?>
答案 1 :(得分:1)
试试这个:
<?php if ( is_user_logged_in() ) : ?>
<span class="blabla">
<a href="<?php echo home_url( '/author/' . get_the_author_meta( 'user_login', get_current_user_id() ) ) ?>">My personal page</a>
</span>
<?php endif; ?>
答案 2 :(得分:0)
您需要在home_url()
之前关闭字符串,并在.
->ID ).
后面加引号
<?php if ( is_user_logged_in() ) {
echo " <span class=blabla>
<a href=\"".home_url() . '/author/' . get_the_author_meta( 'user_login',
wp_get_current_user()->ID )." \" >My personal page</a>
</span> "; } ?>
答案 3 :(得分:0)
那里有一些语法错误。
<?php
if ( is_user_logged_in() ) {
echo "<span class=blabla>"
. "<a href=\"" . home_url() . "/author/"
. get_the_author_meta('user_login', wp_get_current_user()->ID)
. "\" >My personal page</a></span> ";
}
要仔细检查文件是否有错误,请在命令行中运行:
php -l [filename]
它应该返回
No syntax errors detected in [filename]
答案 4 :(得分:-1)
尝试:
<?php if ( is_user_logged_in() ) {
echo ' <span class="blabla"><a href="'.home_url() . '/author/' . get_the_author_meta( "user_login", wp_get_current_user()->ID ).'>My personal page</a></span> '; }
?>