无法在PHP代码中使用HTML符号

时间:2013-04-10 21:10:11

标签: php html wordpress title html-entities

我创建了一个小代码,放在我的Wordpress网站的<title>标签内,根据访问者所在的页面回显某个标题。这是代码:

<title>
    <?php if ( is_page('144')) { bloginfo('name'); } else { wp_title(''); bloginfo('name'); } ?>
</title>

现在我想在页面标题和博客名称之间放置一个空格或竖线(|),在PHP代码中,但我无法这样做。我尝试使用&nbsp;&#124;这样:

<title>
    <?php if ( is_page('144')) { bloginfo('name'); } else { wp_title('');&#124;bloginfo('name'); } ?>
</title>

但它会返回错误,指出Parse error: syntax error, unexpected '&'

我想知道这个问题是否有任何解决方案,期待听到专家的意见,谢谢。

5 个答案:

答案 0 :(得分:5)

使用echo "|"代替&#124

答案 1 :(得分:2)

您收到此错误是因为您不是echoing spacepipe

<title><?php
if ( is_page('144')) { 
    bloginfo('name');
} else {
    wp_title('');
    echo '|';
    bloginfo('name'); 
}
?></title>

或者,您可以使用wordpress使用的get_前缀并连接字符串,如下所示:

echo get_the_title().'|'.get_bloginfo('name');

答案 2 :(得分:2)

尝试:

  echo '|';

如果要输出文本

,则需要回显

答案 3 :(得分:1)

<?php .... ?>中的所有内容都必须是有效的PHP代码。 &nbsp;&#124;是HTML,而不是PHP。如果要在中间编写HTML,则必须使用?>结束PHP段,然后再使用<?php重新开始。

答案 4 :(得分:-2)

您需要使用echo或print。

<title> <?php if ( is_page('144')) {  bloginfo('name'); } else {  wp_title(''); echo '&#124'; bloginfo('name'); } ?> </title>