wordpress header.php不接受php

时间:2014-07-19 07:34:33

标签: php wordpress

我在创建wordpress自定义主题时遇到了一个奇怪的问题。 出于某种原因

hello <?php echo 'world'; ?>

显示为html

hello <?php echo 'world'; ?>

而不是

hello world

之前我制作了很多wordpress网站,但这是亚马逊服务器上的第一个 任何帮助将非常感激。 标记

网站是lmof.uk/demo

header.php(尽管stackoverflow会让我发帖)     

<html xmlns="http://www.w3.org/1999/xhtml">

<? global $woocommerce; ?>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" / >

<title><?php wp_title(''); ?></title>

<link rel="shortcut icon" href="<?=get_template_directory_uri()?>/images/favicon.png" />

<link href='http://fonts.googleapis.com/css?family=Droid+Serif' rel='stylesheet' type='text/css'>

<!--[if IE 7]><link rel="stylesheet" href="ie7.css" type="text/css" media="screen"> <![endif]-->

<? wp_enqueue_script('jquery'); ?>

<? wp_enqueue_script('bootstrapcss'); ?>

<? wp_head(); ?>

<link href="<? bloginfo('stylesheet_url')?>" media="screen" rel="stylesheet" type="text/css" />

<script type="text/javascript">

  $(document).ready(function(){

    var page = $("body").attr("id");

    $(".page-"+page).addClass("active");

  });

</script>

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');



  ga('create', 'UA-51095016-1', 'sample4u.co.uk');

  ga('send', 'pageview');



</script>

</head>

<?php if(is_page()) { $page_slug = 'page-'.$post->post_name; } ?>



<body id="<?

  $exp = explode("?",$_SERVER['REQUEST_URI']);

  echo end(array_filter(explode("/",$exp[0]))) ?>" <?php body_class($page_slug); ?>

  data-spy="scroll" data-target="#navbar-category" data-offset="60"> 

3 个答案:

答案 0 :(得分:0)

我以为我查过了

如果有其他人遇到此问题,您需要将short_open_tags = on添加到php.ini文件How to enable PHP short tags?

答案 1 :(得分:0)

鉴于您后来的评论和后续代码,我假设您的原始示例实际上已经有效而不是失败。

您的问题是您使用的是短打开标签。这些只有在设置了PHP的short_open_tag选项时才有效,这就是they're discouraged in the manual的原因。如果你正在为其他人开发代码 - 例如WordPress的插件或主题 - 你应该避免使用短标签,因为不能保证服务器会设置short_open_tag,并且最终用户可能无法使用它们上。

答案 2 :(得分:0)

只是为了提供信息而添加。你不需要滥用php标签。只在html和php之间切换时才使用它们。当您使用纯PHP时,您不必在每一行上打开和关闭php标记

这一行

<? wp_enqueue_script('jquery'); ?>

<? wp_enqueue_script('bootstrapcss'); ?>

<? wp_head(); ?>

可以简化为

 <? 
   wp_enqueue_script('jquery');

   wp_enqueue_script('bootstrapcss');

   wp_head(); 
 ?>