【问题标题】:Place link in title from "read more" php WP将链接放在“阅读更多”php WP的标题中
【发布时间】:2014-09-02 06:44:31
【问题描述】:

需要 PHP 帮助,所以我遇到了一个 wordpress 问题我有显示标题内容并继续阅读文本的功能,我需要在标题中放置继续阅读文本的链接并隐藏继续阅读文本。这是生成以下标题的文件中的代码:

    function whisper_entry_title2()
{
    if ( !( $title = get_the_title() ) )
        return;

    // Check on singular pages
    $is_single = is_singular() && !is_page_template( 'tpl/blog.php' ) && !is_page_template( 'tpl/blog-boxes.php' );

    // Allow to config via global variable
    if ( isset( $whisper['is_single'] ) )
        $is_single = $whisper['is_single'];

    $tag = $is_single ? 'h1' : 'h2';
    $title = sprintf( '<b class="black">%4$s</b>', $tag, get_permalink(), the_title_attribute( 'echo=0' ), $title );
    echo apply_filters( __FUNCTION__, $title );


}

这里是生成继续阅读的部分代码:

function whisper_content_limitoffer1( $num_words, $more = '...', $echo = true )
{
    $content = get_the_content();

    // Strip tags and shortcodes so the content truncation count is done correctly
    $content = strip_tags( strip_shortcodes( $content ), apply_filters( 'whisper_content_limit_allowed_tags', '<script>,<style>' ) );

    // Remove inline styles / scripts
    $content = trim( preg_replace( '#<(s(cript|tyle)).*?</\1>#si', '', $content ) );

    // Truncate $content to $max_char
    $content = wp_trim_words( $content, $num_words );

    if ( $more )
    {
        //$event_id = get_post_meta(get_the_ID(),'event_id', TRUE);
        //$link="http://example.com/wp/events-offers/";
        $output = sprintf(
            '<p class="event2-cf-oe">%s <a href="%s" class="more-link right o_6" title="%s">%s</a></p>',
            $content,
            get_permalink(),
            sprintf( __( 'Continue reading &quot;%s&quot;', 'whisper' ), the_title_attribute( 'echo=0' ) ),
            $more
        );
    }
    else
    {
        $output = sprintf( '<p class="event2-cf-oe">%s</p>', $content );
    }

    // Still display post formats differently
    $output = whisper_post_formats_content( $output );

    if ( $echo )
        echo $output;
    else
        return $output;
}

【问题讨论】:

    标签: php wordpress function echo


    【解决方案1】:

    嗯,您的“继续阅读”文本正在由显示为

    的行输出
    sprintf( __( 'Continue reading &quot;%s&quot;', 'whisper' ), the_title_attribute( 'echo=0' ) ),
    

    所以只要去掉那一行,那文本就消失了。虽然我怀疑你可能想要摆脱整个代码块

    $output = sprintf(
            '<p class="event2-cf-oe">%s <a href="%s" class="more-link right o_6" title="%s">%s</a></p>',
            $content,
            get_permalink(),
            sprintf( __( 'Continue reading &quot;%s&quot;', 'whisper' ), the_title_attribute( 'echo=0' ) ),
            $more
        );
    

    你帖子的链接是由上面那一行生成的

    get_permalink()
    

    所以你可以重新定位它。

    您可以使用这些简单的 Wordpress 功能非常轻松地输出帖子标题并使其成为帖子的链接:

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

    【讨论】:

      猜你喜欢
      • 2014-12-11
      • 2017-04-04
      • 2015-02-04
      • 1970-01-01
      • 1970-01-01
      • 2012-11-01
      • 2020-11-24
      • 1970-01-01
      • 2013-03-25
      相关资源
      最近更新 更多