問題描述

我相當新的 wordpress,我想知道如果我可以得到一個 page id 與它的 slug 。有可能請讓我知道。

最佳解決方案

使用 get_page_by_path($page_path)

$page = get_page_by_path( 'about' );
echo get_the_title( $page );

這將返回一個常規的後期對象。

次佳解決方案

已經在這個論壇上提問和回答了。我從那裏粘貼相同的代碼。使用此功能來檢索頁面 ID 。

 function get_page_by_slug($page_slug, $output = OBJECT, $post_type = 'page' ) { 
  global $wpdb; 
   $page = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_name = %s AND post_type= %s AND post_status = 'publish'", $page_slug, $post_type ) ); 
     if ( $page ) 
        return get_post($page, $output); 
    return null; 
  }

第三種解決方案

我一直在用這個..

function get_id_by_slug($page_slug) {
    $page = get_page_by_path($page_slug);
    if ($page) {
        return $page->ID;
    } else {
        return null;
    }
} 

希望這將有助於某人。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。