如何使用Span设置WordPress函数的样式

时间:2017-04-13 14:34:25

标签: php html css wordpress

我已经检查了this solution,但我仍然不知道为什么我的代码出现语法错误:

<?php 
 $args = array('post_type' => 'posts', 'posts_per_page' => 3, 'order'
 => 'ASC', 'orderby' => 'title');

 //$posts = new WP_Query($args);
  if (have_posts()){
  while ( have_posts() ) : the_post();
  get_template_part( 'content', get_post_format());

  //if ($posts->have_posts()) : while($post->have_posts()) : $posts->the_post();

  echo "<span class=\"post-date\">get_the_date()</span>";
  echo "<a href=".get_permalink()."><h2 class='post-title'>".get_the_title()."</h2></a>";
  echo the_post_thumbnail();
  echo get_the_excerpt(); 
  echo "<a href=".get_permalink()."><span class='read-more'>
  Read More >></span></a>";


  endwhile;
}
?>

我遇到麻烦的是第一个回声:get_the_date()。我试图做的就是将函数包装在span中,以便我可以更改日期的颜色。

我收到的错误消息是:parse error, expecting ', ", or ';'

enter image description here

(抱歉,当我尝试截屏时,错误消息消失了)。如果你知道如何解决这个问题,请告诉我,谢谢。

2 个答案:

答案 0 :(得分:3)

另一种方式,但如果您还不知道可能对您有所帮助的事情 - 以下工作:

 $args = array('post_type' => 'posts', 'posts_per_page' => 3, 'order'
 => 'ASC', 'orderby' => 'title');

 //$posts = new WP_Query($args);
  if (have_posts()){
      while ( have_posts() ) : the_post();
          get_template_part( 'content', get_post_format()); ?> // <- here closing php

          <span class="post-date"><?php echo get_the_date();?></span>
          <a href="<?php echo get_permalink();?>">
              <h2 class='post-title'><?php echo get_the_title(); ?></h2>
          </a>
          <?php the_post_thumbnail();echo get_the_excerpt(); ?> // <- here opening + closing php
          <a href="<?php echo get_permalink();?>"><span class='read-more'>Read More >></span></a>

         <?php
      endwhile;
  }

关于wordpress的一些提示:

the_permalink()get_permalink()之间的区别在于第一个与即时回显值。但是使用get_*,您可以将其存储在变量中。

同样的事情:

the_title() - get_title()

另外

<?= get_permalink();?>其中<?=表示回声。

通常,您应该阅读"'之间的区别。

参考here

答案 1 :(得分:2)

所以你的主要问题是你的函数get_the_date()没有被连接到字符串中。

将第244行替换为:

echo "<span class='post-date'>".get_the_date()."</span>";