有朋自远方来,不亦乐乎。
WordPress获取当前文章别名
转载 露兜博客  17 Jul/22 2.16K 10 A+

相信很多人在使用WordPress的时候,都喜欢使用文章别名作为固定链接,如我的博客固定链接形式为https://www.ludou.org/%postname%.html,这个postname就是文章的别名(也称 slug name)。你在后台编写文章的时候,可以自己定义文章的别名,如下图的黄色部分:

别名

当然你可以在文章编辑页,点击某篇文章下的”快速编辑”,那里也可以编辑别名:

别名

现在有个问题,我怎样才能获取这个文章别名呢?WordPress中提供了<?php the_title(); ?>来获取文章标题,<?php the_permalink(); ?>用于获取当前文章的链接,但是并没有发现获取文章别名的函数。找不到相应的函数,我们可以自己写个函数,以下是已编写好的函数,你可以编辑你的主题目录中的functions.php,在 ?> 前面添加以下函数:

function the_slug() {
    $post_data = get_post($post->ID, ARRAY_A);
    $slug = $post_data['post_name'];
    return $slug; 
}

然后你就可以在你需要的地方调用该函数了:

<?php echo the_slug(); ?>

输出结果为当前文章的别名,如本文的为 -post-slug-and-page-slug-function

如果你用的别名是中文,那么调用出来的将会是一堆乱码,因为WordPress对中文的别名进行了编码,在数据库中存储的不是中文。

嗑唠

昨晚折腾主题的时候,突然想要调用文章的别名作为输出值,然而wordpress居然没有这个函数,好在借助度娘,在露兜大神的博客找到了相关教程。

至于如何以文章别名作为文章固定链接,方法也很简单,只需要到【设置】-【固定链接】,将自定义结构中的 /%post_id%.html 更改为 /%postname%.html

相关阅读
WordPress文章编辑页别名模块如何移到发布模块内

前晚折腾完slug(别名)函数以后,忽然发现还有一些收尾要做。 因为本来以文章别名作为固定链接,其目的主要就是为了保证I...

发布时间:2017/07/23 作者:橘子书 评论:12

阅读全文

目前评论:10   其中:访客  5   博主  5

发表评论

莫慌,小狮子正在努力加载评论...
  1. boke112导航
    boke112导航3 ( 2017.07.23 13:04:54 )  4楼

    WordPress的强大之处就是我们想到的,很多都是别人想到的,如果搜索一番,总会发现有自己想要的

    • 橘子书
      橘子书渣渣橘 ( 2017.07.23 18:48:09 )

      @boke112导航 所以用wp建站,在一定程度上来说,是很舒服的一件事,毕竟只要动手能力强,擅于使用百度、谷歌等,大多问题都能解决的。

  2. 闲鱼
    闲鱼2 ( 2017.07.22 21:20:06 )  地板

    虽然没想到能干什么,但是先马克再说

  3. 明月登楼
    明月登楼3 ( 2017.07.22 18:27:26 )  板凳

    调用别名用来伪静态吗?

  4. 龙笑天
    龙笑天3 ( 2017.07.22 10:42:44 )  沙发

    真是的,用途也不稍微点一下~

    • 橘子书
      橘子书渣渣橘 ( 2017.07.22 12:14:02 )

      @龙笑天 每个人使用的用途不一样,我也不知道该提点什么。拿我昨晚折腾的目的来说,我用它是为了伪装文章ID连贯,然后前端输出的时候,不会出现ID断层。

    • 龙笑天
      龙笑天3 ( 2017.07.22 12:16:27 )

      @橘子书 NB啊,这个ID连贯性应该不是很好伪装的吧~ :razz:

    • 橘子书
      橘子书渣渣橘 ( 2017.07.22 16:57:24 )

      @龙笑天 暂时一劳永逸的伪装,或许以后有人会折腾出来。