出现此问题的原因是get\\u template\\u part函数。它包括打印完整文本的模板文件。应该做的是,不要改变原来的主题本身,首先你应该创建一个child theme. 这背后的原因是,当主题作者发布新版本时,您可以安全地升级原始主题。如果您对原始主题进行了更改,那么在升级过程中,这些更改将被删除。如果要创建自己的主题,则不需要子主题。
如果要创建子主题,请在该子主题中复制类别。php。
创建函数。在子主题的目录中添加php,并在其中添加以下内容(如果要更改原始主题,请在其中添加以下内容。)此过程是可选的。它为您提供了更多的权限,可以控制要显示的字数和“阅读更多”要显示的文本。
add_filter( \'excerpt_more\', \'wdm_excerpt_more_link\' );
function wdm_excerpt_more_link( $more ) {
global $post, $wdm_flag_for_category_page;
if(isset($wdm_flag_for_category_page) && $wdm_flag_for_category_page == true){ //if our flag is set, then execute the below statement
return \'... <a href="\' . get_permalink( $post->ID ) . \'">Read more</a>\';
}
return $more;
}
add_filter( \'excerpt_length\', \'wdm_change_excerpt_length\', 999 );
function wdm_change_excerpt_length( $length ) {
global $wdm_flag_for_category_page;
if(isset($wdm_flag_for_category_page) && $wdm_flag_for_category_page == true){ //change the length only if flag is set
return 20;
}
return $length;
}
我们基本上要做的是,我们将使用WordPress的摘录概念。它基本上显示摘要或简短描述。要了解更多摘录,请阅读
here使用以上功能,我们将显示20个单词的摘要,然后将显示“阅读更多”链接。你可以把20个单词的限制改成你想要的任何单词。注意我们使用的是一个变量\'wdm_flag_for_category_page
\'. 我们将在类别中定义此变量。php。我们使用这个变量,因此单词限制只适用于类别页面。
添加以上代码后,请保存函数。php。
我们必须在子主题的目录中再创建一个文件。创建一个文件并命名为\'content-category-display.php
\'.
我观察了你当前主题的HTML结构,根据这一点,下面的内容可以放在内容类别显示中。php
<?php
/**
* The template for displaying posts on category page
*/
?>
<article id = "post-<?php the_ID(); ?>" <?php post_class();?>>
<header class="entry-header">
<?php if ( is_single() ) : ?>
<h2 class="entry-title">
<?php the_title(); //Print Title ?>
</h2><!-- .entry-title -->
<?php else :?>
<h2 class="entry-title">
<a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a>
</h2><!-- .entry-title -->
<?php endif; // is_single() ?>
<div class="entry-meta">
<span>
<?php echo get_the_date(); //Print Date ?>
</span>
</div><!-- .entry-meta -->
</header><!-- .entry-header -->
<div class="entry-content">
<?php the_excerpt(); //Prints Excerpt. wdm_excerpt_more_link and wdm_change_excerpt_length functions defined in functions.php will be executed during execution of the_excerpt function ?>
</div><!-- .entry-content -->
</article>
保存内容类别显示。php文件。现在,我们将在类别中调用此新模板。因此,php是您的最终类别。php(复制到子主题的目录中)如下所示
<?php get_header();
$wdm_flag_for_category_page = true; //wdm_flag_for_category_page variable set here for executing code of more control over excerpt words limit
?>
<!-- Contenuti (griglia) -->
<div class="container">
<!-- Lead presentazione -->
<section id="presentazione">
<div class="row">
<div class="col-sm-12">
<!--<h1 class="text-center"><small>Associazione per la Tutela dei Diritti Umani del Popolo Eritreo</small></h1>-->
<h1 class="text-center title">Associazione per la Tutela dei Diritti Umani del Popolo Eritreo</h1>
<h1 class="text-center leadTitle">Association in Defense of the Human Rights of the Eritrean People</h1>
<!--
<p class="lead text-center">
Association in Defense of the Human Rights of the Eritrean People
</p>
-->
</div><!-- /.col-sm-12 -->
</div><!-- /.row -->
</section><!-- /section presentazione -->
<!-- Progetti in evidenza -->
<header class="header-sezione">
<h2>Ultimi Articoli</h2>
</header>
<?
// get the term using the slug and the tag taxonomy
$term = get_term_by( \'slug\', \'featured\', \'post_tag\' );
// pass the term_id to tag__not_in
query_posts( array( \'tag__not_in\' => array ( $term->term_id )));
?>
<?php
if (have_posts()) :
// Start the Loop.
while (have_posts()) : the_post();
/*
* Include the post format-specific template for the content. If you want to
* use this in a child theme, then include a file called called content-___.php
* (where ___ is the post format) and that will be used instead.
*/
get_template_part(\'content\', \'category-display\'); //Here it calls content-category-display.php
endwhile;
else :
// If no content, include the "No posts found" template.
get_template_part(\'content\', \'none\');
endif;
?>
</section>
</div>
<?php get_footer(); ?>
希望这有帮助:)
通过这种方法,已注意到它不会影响网站的任何其他部分,除了类别页面。