如何在没有换行符的情况下在档案中列出博客文章标题?

时间:2015-08-22 23:11:00

标签: php wordpress archive

我有这个自定义模板,让我的档案页面按照日期顺序显示我的所有博客帖子,但出于格式化原因,我经常在标题中使用换行符,但我不希望这些换行符有效在档案页面上。

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

2 个答案:

答案 0 :(得分:3)

更改<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>

答案 1 :(得分:1)

更换

<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>

<a href="<?php the_permalink(); ?>"><?php echo strip_tags(get_the_title()); ?></a>

应该解决它。