如何在没有 line-breaks 的情况下列出档案中的博客 post 标题?
How to list out blog post titles in archives without the line-breaks?
我有这个自定义模板,可以让我的存档页面按日期顺序显示我所有的博文,但出于格式原因,我经常在标题中使用 line-breaks,但我不希望那些 line-breaks 在档案页面上工作。
custom_archive_page_template
<?php
/**
* Put together by Sridhar Katakam using the code linked in StudioPress forum post
* @license GPL-2.0+
* @link http://www.studiopress.com/forums/topic/creating-custom-page-templates/#post-82959
*/
//* Template Name: Custom Archive
//* Remove standard post content output
remove_action( 'genesis_post_content', 'genesis_do_post_content' );
remove_action( 'genesis_entry_content', 'genesis_do_post_content' );
add_action( 'genesis_entry_content', 'sk_page_archive_content' );
add_action( 'genesis_post_content', 'sk_page_archive_content' );
/**
* This function outputs posts grouped by year and then by months in descending order.
*
*/
function sk_page_archive_content() {
global $post;
echo '<ul class="archives">';
$lastposts = get_posts('numberposts=-1');
$year = '';
$month = '';
foreach($lastposts as $post) :
setup_postdata($post);
if(ucfirst(get_the_time('F')) != $month && $month != ''){
echo '</ul></li>';
}
if(get_the_time('Y') != $year && $year != ''){
echo '</ul></li>';
}
if(get_the_time('Y') != $year){
$year = get_the_time('Y');
echo '<li><h2>' . $year . '</h2><ul class="monthly-archives">';
}
if(ucfirst(get_the_time('F')) != $month){
$month = ucfirst(get_the_time('F'));
echo '<li><h3>' . $month . '</h3><ul>';
}
?>
<li>
<span class="the_date"><?php the_time('d') ?>:</span>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
<?php
}
remove_action( 'genesis_entry_footer', 'genesis_entry_footer_markup_open', 5 );
remove_action( 'genesis_entry_footer', 'genesis_post_meta' );
remove_action( 'genesis_entry_footer', 'genesis_entry_footer_markup_close', 15 );
genesis();
你可以在这里看到问题:www.AnthonyGalli.com
正在替换
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
和
<a href="<?php the_permalink(); ?>"><?php echo strip_tags(get_the_title()); ?></a>
应该可以解决
更改<li></li>
这部分
您还没有使用strip_tags功能。
<li>
<span class="the_date"><?php the_time('d') ?>:</span>
<a href="<?php the_permalink(); ?>"><?php echo strip_tags(get_the_title()); ?></a>
</li>
我有这个自定义模板,可以让我的存档页面按日期顺序显示我所有的博文,但出于格式原因,我经常在标题中使用 line-breaks,但我不希望那些 line-breaks 在档案页面上工作。
custom_archive_page_template
<?php
/**
* Put together by Sridhar Katakam using the code linked in StudioPress forum post
* @license GPL-2.0+
* @link http://www.studiopress.com/forums/topic/creating-custom-page-templates/#post-82959
*/
//* Template Name: Custom Archive
//* Remove standard post content output
remove_action( 'genesis_post_content', 'genesis_do_post_content' );
remove_action( 'genesis_entry_content', 'genesis_do_post_content' );
add_action( 'genesis_entry_content', 'sk_page_archive_content' );
add_action( 'genesis_post_content', 'sk_page_archive_content' );
/**
* This function outputs posts grouped by year and then by months in descending order.
*
*/
function sk_page_archive_content() {
global $post;
echo '<ul class="archives">';
$lastposts = get_posts('numberposts=-1');
$year = '';
$month = '';
foreach($lastposts as $post) :
setup_postdata($post);
if(ucfirst(get_the_time('F')) != $month && $month != ''){
echo '</ul></li>';
}
if(get_the_time('Y') != $year && $year != ''){
echo '</ul></li>';
}
if(get_the_time('Y') != $year){
$year = get_the_time('Y');
echo '<li><h2>' . $year . '</h2><ul class="monthly-archives">';
}
if(ucfirst(get_the_time('F')) != $month){
$month = ucfirst(get_the_time('F'));
echo '<li><h3>' . $month . '</h3><ul>';
}
?>
<li>
<span class="the_date"><?php the_time('d') ?>:</span>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
<?php
}
remove_action( 'genesis_entry_footer', 'genesis_entry_footer_markup_open', 5 );
remove_action( 'genesis_entry_footer', 'genesis_post_meta' );
remove_action( 'genesis_entry_footer', 'genesis_entry_footer_markup_close', 15 );
genesis();
你可以在这里看到问题:www.AnthonyGalli.com
正在替换
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
和
<a href="<?php the_permalink(); ?>"><?php echo strip_tags(get_the_title()); ?></a>
应该可以解决
更改<li></li>
这部分
您还没有使用strip_tags功能。
<li>
<span class="the_date"><?php the_time('d') ?>:</span>
<a href="<?php the_permalink(); ?>"><?php echo strip_tags(get_the_title()); ?></a>
</li>