wordpress函数:get_permalink()获取文章页面的固定链接

get_permalink() 用来根据固定连接返回文章或者页面的链接。在获取链接时 get_permalink() 函数需要知道要获取的文章的 ID,如果在循环中则自动默认使用当前文章。 如果文章ID正确,那么将返回该ID文章的URL,如果文章不存在,那么将返回False,在Plugin或者Theme中,他可以被setup_theme动作使用,任何先前的使用,引入plugins_loaded将产生一个致命的错误。请注意,当一个文章页面循环之外使用(例如index、achive)没有ID参数,它将返回的最后一文章的URL,但是可能并不是当前页的永久链接。

用法

get_permalink( $id, $leavename );

参数

$id

(混合)(可选)文章或者页面的 ID(整数);还可以是文章对象。

默认值:在循环中自动调用当前的文章

$leavename

(布尔)(可选)转化成链接是是否忽略文章别名。如果设置成 True,那么将返回 http://www.example.com/%postname% 而不是 http://www.example.com/my-post-name

默认值:None

返回值

(字符串 | 布尔)成功获取链接则返回链接,失败则返回 False.

例子

1、默认用法
获取当前文档的永久链接(在循环中使用),作为标签不显示permalink,该示例使用PHP的echo命令。

<?php echo get_permalink();?>

2、根据 ID 获取文章或页面的链接:

<a href="<?php echo get_permalink( 268 ); ?>">获取指定 ID 的文章或页面链接</a>

3、循环中获取当前文章的链接:

<?php echo get_permalink(); ?>

4、根据页面标题获取页面链接:

<a href="<?php echo esc_url( get_permalink( get_page_by_title( '留言板' ) ) ); ?>">留言板</a>

5、获取特殊页面的URL
返回Post ID为1和10的文章永久链接,作为列表信息的一部分项目。

<ul>
    <li><?php esc_html_e( 'MyBlog info:', 'textdomain' ); ?>
        <ul>
            <li><a href="<?php echo esc_url( get_permalink(1) ); ?>"><?php esc_html_e( 'About MyBlog', 'textdomain' ); ?></a></li>
            <li><a href="<?php echo esc_url( get_permalink(10) ); ?>"><?php esc_html_e( 'About the owner', 'textdomain' ); ?></a></li>
        </ul>
    </li>
</ul>

6、通过Post对象而不是Post的ID
这说明你可以用代替的ID页面标题获得永久链接。

<a href="<?php echo esc_url( get_permalink( get_page_by_title( 'Monthly Events' ) ) ); ?>">
<?php esc_html_e( 'Monthly Events', 'textdomain' ); ?>
</a>

源文件

此函数位于:wp-includes/link-template.php

腾讯云限时秒杀【点击购买】

搬瓦工,CN2高速线路,1GB带宽,电信联通优化KVM,延迟低,速度快,建站稳定,搬瓦工BandwagonHost VPS优惠码BWH26FXH3HIQ,支持<支付宝> 【点击购买】!

Vultr$3.5日本节点,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快【点击购买】!

阿里云香港、新加坡VPS/1核/1G/25G SSD/1T流量/30M带宽/年付¥288【点击购买】