有很多情况下,你可能需要知道WordPress中一个特定页面或文章的ID是什么。例如,一个插件可能需要它来将该页面从一个功能中排除。或者,如果你是一个开发者,你可能需要查询这个ID。
页面和文章的ID号是WordPress如何识别你网站上的每一块内容的。传统上,该平台并不公开显示这些信息,但如果你知道在哪里找它,就很容易找到。事实上,你有很多方法可以在WordPress中获得文章ID。
在这篇文章中,我们将向你展示在WordPress中获取文章ID的五种不同方法,从传统的到非正统的。
- 如何识别WordPress的文章和页面ID的重要性
- 如何在WordPress中获取文章ID(5种方法)
如何识别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。