从函数中排除单个页面

时间:2013-05-06 作者:andy

//wraps the permalink around each thumbnail
add_filter( \'post_thumbnail_html\', \'my_post_image_html\', 10, 3 );

function my_post_image_html( $html, $post_id, $post_image_id ) {

  $html = \'<a href="\' . get_permalink( $post_id ) . \'" title="\' . esc_attr( get_post_field( \'post_title\', $post_id ) ) . \'">\' . $html . \'</a>\';
  return $html;
 }
正如评论所说,将永久链接围绕每个缩略图,但我想排除单个页面上的链接,所以我尝试了

//wraps the permalink around each thumbnail
add_filter( \'post_thumbnail_html\', \'my_post_image_html\', 10, 3 );

function my_post_image_html( $html, $post_id, $post_image_id ) {

  $html = \'<a href="\' . get_permalink( $post_id ) . \'" title="\' . esc_attr( get_post_field( \'post_title\', $post_id ) ) . \'">\' . $html . \'</a>\';
  return $html;
  else {
  if( is_single() ) { 
      $html = \'\';
      return $html;

      }

      }
}
它破坏了我的网站。

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

这不是函数的工作方式。你不能在if/else 查询函数的结尾。。。至少这看起来像你在做什么。或者你是想让我们else 没有if... 不管怎么说,语法被严重破坏了。

这是一个经过清理的版本,它应该能够完成您想要的功能(我认为)。

//wraps the permalink around each thumbnail
add_filter( \'post_thumbnail_html\', \'my_post_image_html\', 10, 3 );
function my_post_image_html( $html, $post_id, $post_image_id ) {
  if(!is_single()) { 
    $html = \'<a href="\'.get_permalink($post_id).\'" title="\'.esc_attr( get_post_field(\'post_title\',$post_id)).\'">\'.$html.\'</a>\';
  }
  return $html;
}

结束

相关推荐

如何在single.php上使用WP_Query()?

我正在使用WP_Query() 在特定类别“特色”下抽出几个帖子,显示在任何帖子的底部。所以我补充道<?php if (function_exists(\'getEditorPicks\')) getEditorPicks();?> 单件。php。在函数中。php,我有wp_reset_postdata(); $args = array(\'cat\' => 4176, \'posts_per_page\' => 5); $query = new W