當(dāng)前位置:首頁>WordPress建站>基礎(chǔ)教程>給WordPress自定義文章類型添加短鏈接

給WordPress自定義文章類型添加短鏈接

WordPress內(nèi)置了一種文章短鏈接,型如 www.yoursite.com?p=1 (其中 1 為文章的ID),你可以在后臺發(fā)布文章的時(shí)候查看到:

wp_get_shortlink-wpdaxue_com

自定義文章類型默認(rèn)是生成短鏈接的,所以我們需要添加相應(yīng)的函數(shù)。比如我們要給 book 這種自定義文章類型添加短鏈接功能,可以在你的插件文件或者當(dāng)前主題的 functions.php 添加類似下面的代碼:

/**
 * 給自定義文章類型“book”添加短鏈接
 */
function wpdaxue_shortlinks_for_book( $shortlink, $id, $context ) {
 
    // 上下文可以是一篇文章、附件、或查詢
    $post_id = 0;
 
    if ( 'query' == $context && is_singular( 'book' ) ) {
 
        // 如果上下文是查詢,使用get_queried_object_id 獲取ID
        $post_id = get_queried_object_id();
 
    }
    elseif ( 'post' == $context ) {
 
        // 如果上下文是文章,使用以傳遞的 $id
        $post_id = $id;
 
    }
 
    // 只對 book這種自定義文章類型操作
    if ( 'book' == get_post_type( $post_id ) ) {
        $shortlink = home_url( '?p=' . $post_id );
    }
 
    return $shortlink;
}
add_filter( 'pre_get_shortlink', 'wpdaxue_shortlinks_for_book', 10, 3 );

然后在循環(huán)中使用 wp_get_shortlink() 函數(shù)獲取短鏈接:

<?php echo wp_get_shortlink(); ?> 

注:本文的用途不是給后臺自定義文章類型發(fā)布時(shí)添加“獲取短鏈接地址”的功能,而是讓自定義文章類型生成短鏈接,然后可以在需要顯示的地方輸出。

參考資料:http://wp.tutsplus.com/articles/tips-articles/quick-tip-add-shortlinks-to-custom-post-types/

聲明:本站所有文章,如無特殊說明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號 WPDAXUE
基礎(chǔ)教程

WordPress在指定頁面顯示/隱藏小工具的插件:Restrict Widgets

2013-6-18 8:13:01

基礎(chǔ)教程

更改/移除WordPress作者存檔頁面的前綴“author”

2013-6-22 8:28:05

0 條回復(fù) A文章作者 M管理員
    暫無討論,說說你的看法吧
?
個(gè)人中心
購物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

喀喇沁旗| 兴化市| 泉州市| 仁寿县| 阿拉善左旗| 吉隆县| 大安市| 赣州市| 谷城县| 阜阳市| 社旗县| 广东省| 平果县| 吐鲁番市| 康定县| 崇州市| 友谊县| 那曲县| 比如县| 邹城市| 海安县| 句容市| 额尔古纳市| 房产| 台南市| 白水县| 资中县| 南漳县| 大宁县| 乌恰县| 祥云县| 利川市| 东港市| 吴旗县| 西峡县| 屯门区| 仪陇县| 家居| 剑阁县| 枞阳县| 泽普县|