Wordpress使用functions.php仅在主页上运行功能

时间:2014-09-02 19:14:18

标签: php wordpress function show

这是我的代码:

add_filter("the_content", "plugin_myContentFilter", "tie_excerpt_home_length");
  function plugin_myContentFilter($content)
  {
      $content = preg_replace("/<img[^>]+\>/i", "(kép)", $content); 
    // Take the existing content and return a subset of it
    return substr($content, 0, 300);
  }

我希望看到此功能仅适用于主页。但遗憾的是,这段代码无处不在(帖子,页面),并且不允许显示整个内容。

以下是应在主页上的内容中反映的代码:

<li <?php tie_post_class('first-news'); ?>>
                        <div class="inner-content">
                        <?php if ( function_exists("has_post_thumbnail") && has_post_thumbnail() ) : ?>         
                            <div class="post-thumbnail">
                                <a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'tie' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark">
                                    <?php tie_thumb( 'tie-medium' ); ?>
                                    <span class="overlay-icon"></span>
                                </a>
                            </div><!-- post-thumbnail /-->
                        <?php endif; ?>
                        <h2 class="post-box-title"><a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'tie' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a></h2>
                            <?php get_template_part( 'includes/boxes-meta' ); ?>

                            <div class="entry">
                                <?php if($_eventcat) the_content(); else tie_excerpt_home() ?>
                                <a class="more-link" href="<?php the_permalink() ?>"><?php _e( 'Tovább >', 'tie' ) ?></a>
                            </div>
                        </div>
                    </li>

1 个答案:

答案 0 :(得分:1)

添加条件以检查主页。 is_home()检查是否是博客帖子索引,is_front_page()检查它是否是首页(博客帖子或静态页面);

if ( is_home() || is_front_page() ) {
    add_filter("the_content", "plugin_myContentFilter", "tie_excerpt_home_length");
}
function plugin_myContentFilter($content)
  {
      $content = preg_replace("/<img[^>]+\>/i", "(kép)", $content); 
    // Take the existing content and return a subset of it
    return substr($content, 0, 300);
  }