有很多情況下,你可能需要知道WordPress中一個特定頁面或文章的ID是什麼。例如,一個外掛可能需要它來將該頁面從一個功能中排除。或者,如果你是一個開發者,你可能需要查詢這個ID。
頁面和文章的ID號是WordPress如何識別你網站上的每一塊內容的。傳統上,該平臺並不公開顯示這些資訊,但如果你知道在哪裡找它,就很容易找到。事實上,你有很多方法可以在WordPress中獲得文章ID。
在這篇文章中,我們將向你展示在WordPress中獲取文章ID的五種不同方法,從傳統的到非正統的。
如何識別WordPress的文章和頁面ID的重要性
在內部,WordPress通過它們的ID號來識別特定的頁面和文章。如果你使用一個外掛,問你想從它的效果中包括或排除哪些文章,這些資訊有時是必要的。
在某些情況下,WordPress的文章ID對於構建自定義短碼也是必要的。如果您使用的短程式碼需要您指定一個文章,它將要求您輸入該文章的ID作為其引數的一部分。
另一個更高階的例子是,如果您要向您的網站新增自定義程式碼,但您只想針對特定的頁面。在這種情況下,你可以告訴WordPress,如果一個文章或頁面符合你設定的ID,它應該執行你想要的程式碼:
if(is_single(POST_ID))
不管你面對的是哪種情況,在WordPress中,你有很多方法可以找到任何文章或頁面的ID是什麼。
讓我們來談談它們是什麼。
如何獲得WordPress中的文章ID(5種方法)
如果你知道在哪裡找,在WordPress中找到文章的ID是非常簡單的。讓我們從最直截了當的方法開始,然後再按順序進行。
- 在每個文章的URL中查詢ID
- 使用自定義程式碼在文章標籤中顯示文章的ID
- 使用外掛來顯示WordPress中的文章ID
- 在WordPress資料庫中查詢文章的ID
- 使用函式來獲取WordPress的文章ID
1. 在每個文章的URL中查詢ID
在WordPress中找到一個文章ID的最簡單的方法是進入你的儀表板並點選文章選單選項。你應該看到你網站上的所有文章的列表,找到它們的ID就像在每個標題上移動滑鼠一樣容易:
滑鼠移到一個文章的標題上,可以看到它的ID。
在上面的例子中,文章的ID是1,這個數字就在post=引數的後面。
如果由於某種原因,你不能清楚地看到ID,你可以用WordPress編輯器開啟這個文章。這樣,它的URL將顯示在你的導航欄中,這應該使ID更容易被發現:
通過檢查一個WordPress文章的URL來找到它的ID。
請記住,你在你的儀表板上看到的文章URL可能與你的訪客遇到的不同。這是因為很多WordPress網站使用自定義的固定連結結構,根本不顯示文章的ID。
僅有的兩個包含WordPress文章ID的固定連結結構是樸素和數字選項。
下面是兩個快速的例子,說明這些URL結構是什麼樣子的:
- yourwebsite.com/?p=1
- yourwebsite.com/archives/1
在這兩種情況下,文章的ID都是1。雖然這兩種URL結構不一定是壞的,但在大多數情況下,你會想使用讓訪問者知道他們可以從每個頁面期待什麼內容的permalinks。
2. 使用自定義程式碼在文章標籤中顯示文章ID
如果你看一下你的 “文章” 選項卡,你會注意到它包括關於每條內容的很多資訊,包括它的作者、標籤、類別,以及更多:
WordPress文章標籤
可以編輯你的主題的 functions.php 檔案,為該表新增一個新列。這一欄將顯示每個文章的ID,所以你不必挖掘它的URL來找到這些資訊。
你要使用一個檔案傳輸協議(FTP)客戶端來修改該檔案。通過FTP訪問你的網站,開啟WordPress根目錄,並導航到wp-content/themes。在裡面找到你的主題資料夾(我們希望你使用的是子主題!),並開啟位於其中的 functions.php 檔案。
你的FTP客戶端將下載該檔案,並用你的預設編輯器開啟它。以下是你要新增到該檔案的程式碼:
function add_column( $columns ){ $columns['post_id_clmn'] = 'ID'; // $columns['Column ID'] = 'Column Title'; return $columns; } add_filter('manage_posts_columns', 'add_column', 5); function column_content( $column, $id ){ if( $column === 'post_id_clmn') echo $id; } add_action('manage_posts_custom_column', 'column_content', 5, 2);
這段程式碼在你的 “文章” 列表中包括一個額外的列。請記住,如果你使用的外掛在同一表格中增加了額外的資料,你可能需要修改上述片段中的位置。我們的例子將新列新增到第五個位置(因此你看到上面的 “5”),但如果需要,你可以相應調整程式碼。
一旦片段到位,儲存你的修改到functions.php,你的文章標籤現在應該是這樣的:
一個顯示文章ID的列
從這一點上說,你將能夠從這個表中直接檢視文章的ID。
3. 使用外掛來顯示WordPress中的文章ID
如果你不想修改你的主題的function.php檔案,你可以使用一個外掛來為你做這些髒活。我們的推薦是Show IDs by 99 Robots:
The Show IDs by 99 Robots外掛
這個特別的外掛正是我們在上一節所做的,而且它做得更進一步。除了顯示你的文章的ID,它還包括頁面、類別、標籤、媒體檔案等的資訊。
一旦你啟用這個外掛,當你檢視我們上面提到的任何元素的完整列表時,你會看到一個新的ID列出現。例如,這是我們的頁面選項卡在設定了外掛後的樣子:
啟用了 “Show IDs by 99 Robots” 外掛的頁面標籤。
任何時候你需要一個文章的ID,你所需要做的就是去文章頁面並複製它。
4. 在WordPress資料庫中尋找文章的ID
正如你可能知道的,WordPress資料庫儲存了你網站上的所有資訊,包括每個文章、頁面和內容的ID。一些虛擬主機,包括我們,可以讓你使用自定義介面訪問你網站的資料庫。
進入您的WordPress網站的MySQL管理後臺phpMyAdmin。
一旦進入,開啟你的網站的資料庫,移到wp_posts表。你應該在post_author左邊的ID列下看到每個文章的ID:
在你的WordPress資料庫中查詢文章的ID
像往常一樣,你現在所要做的就是複製和貼上你需要的文章或頁面ID,然後你就可以開始工作了。
5. 使用函式來獲取WordPress的文章ID
如果你是一個開發者,你可能根本不需要查詢WordPress的文章ID。利用你的超能力,你可以使用函式來獲取你需要的ID,使用正確的引數。
例如,你可以使用get_the_id()函式來返回它所執行的文章的ID:
get_the_id();
如果你想玩得更開心一些,你也可以通過標題或蛞蝓來獲取文章的ID,儘管這兩個函式的實用性稍差:
$mypost = get_page_by_title( 'Your post title goes here', '', 'post' ); $mypost->ID;
$mypost = get_page_by_path('post-slug', '', 'post'); $mypost->ID;
你可以使用的另一種方法是從其URL中獲取一個文章的ID,使用以下函式:
$mypost_id = url_to_postid( 'https://yourwebsite.com/your-post' );
如果你想在WordPress的迴圈中找到文章的ID,你可以使用以下程式碼:
$id_query = new WP_Query( 'posts_per_page=6 ); while( $id_query-have_posts() ) : $id_query->the_post(); $id_query->post->ID; endwhile;
如果你要新增自定義功能或建立你自己的外掛,使用函式來獲取WordPress的文章ID會很方便。然而,如果你只需要找到幾個特定文章的ID,那麼你最好使用我們上面討論的其他方法之一。
小結
雖然WordPress沒有明確顯示文章或頁面的ID,但有很多方法可以找到它們。知道每個文章的ID是什麼,對於啟用外掛中的功能、使用簡碼,甚至是你自己的開發專案,都會很方便。
如果你正在尋找一個特定的WordPress文章的ID,有五種方法可以找到它:
- 在每個文章的URL中查詢ID。
- 使用自定義程式碼在文章標籤中顯示文章ID。
- 使用外掛來顯示WordPress中的文章ID。
- 在WordPress資料庫中查詢文章的ID。
- 使用函式來獲取WordPress的文章ID。
評論留言