纯代码实现段代码插入文章ID自动内链

虫子君
虫子君
虫子君
652
文章
278
评论
2020年2月23日10:36:21 评论 381 1458字阅读4分51秒

在WordPress的编辑器当中有一个超链接按钮,可以实现在其中搜索文章然后插入即可,但是有一点不好的是,这种插入的方法文章只有一个标题,并且改标题也仅仅是一个超链接文本的形式存在,如果当想要在这个自动插入的内链文本中自定义文本的语义化的时候就需要手动去设置文本的html语义化。

纯代码实现段代码插入文章ID自动内链

当然,现在很多主题已经实现利用文章id实现文章插入的方法。但是还是有一些主题是没有这样功能的,毕竟专业制作的主题还是稍显贵了一点点。

今天在逛大佬博客的时候,发现一段神奇的代码,可以实现将文章ID插入到文章当中自动获取文章标题以及图片还有描述等信息。

//给文章加内链短代码
function gdk_insert_temp($atts, $content = null) {
    extract(shortcode_atts(array( 'id' => '' ) , $atts));
    $data = get_post($id);
    $content = $data->post_content;
    return $content;
}
add_shortcode('temp', 'gdk_insert_temp');
function fa_insert_posts( $atts, $content = null ){
    extract( shortcode_atts( array(

        'ids' => ''

    ),
        $atts ) );
    global $post;
    $content = '';
    $postids =  explode(',', $ids);
    $inset_posts = get_posts(array('post__in'=>$postids));
    foreach ($inset_posts as $key => $post) {
        setup_postdata( $post );
        $content .=  '<div class="card-today-history"><div class="card-thContents"><div class="card-thLine"></div><div class="card-thHeroTitle"><a target="_blank" class="label--thTitle" href="' . get_permalink() . '">' . get_the_title() . '</a><div class="v-floatRight card-thMeta">' . get_comments_number(). '<i class="iconfont icon-comment"></i></div></div></div></div>';
    }
    wp_reset_postdata();
    return $content;
}
add_shortcode('fa_insert_post', 'fa_insert_posts');

将以上代码粘贴到您主题的function.PHP文件中的最后一行就好了。

不过这里需要说明的是,以上代码仅仅是实现在您的主题当中有这么一个功能,如果您需要引入到文章编辑器当中使用还需要在编辑器当中添加段代码功能。

你可以根据你自己的需要来调整代码,也可以自己自定义CSS样式,我这里就不给出CSS代码了。请无视函数中的css命名,我是直接把历史上的今天的样式直接拿过来了。。

至于调用就非常简单了,直接使用短代码[fa_insert_post ids=123,245]即可

如果你不是在文章内容中,而是在其他地方想调用,则可使用do_shortcode('[fa_insert_post ids=123,245]')来调用。

继续阅读
  • 欢迎来“给我投稿”网友会因为你的帮助而感激。
  • 文章链接:https://chonzi.com/9196.html
SEO外链自动群发工具

SEO外链自动群发工具

超级外链群发工具,加速网站收录。
站长福音:今日头条站长平台已经正式上线 热点新闻

站长福音:今日头条站长平台已经正式上线

今日头条搞搜索引擎已经不是一两天的事了,如果经常看统计的话一定会惊奇的发现,偶尔网站会有几个IP来自今日头条,这是因为你的网站被今日头条搜索引擎收录了,虫子君的博客就常常有一两个IP来自今日头条,虽然...

您必须才能发表评论!