WordPress的自定义字段101:提示,技巧和黑客

有没有想过什么是WordPress的自定义字段? 想要了解更多关于自定义字段的工作原理吗? 在本文中,我们将向您展示如何使用提示,技巧和黑客来使用WordPress自定义字段。

自定义字段101

由于这是一篇冗长的文章,我们添加了目录以便于导航。

什么是WordPress自定义字段?

WordPress自定义字段是元数据,用于添加与帖子或页面相关的附加信息,如标题,作者姓名,日期/时间等。

默认情况下,当您编写新的帖子,页面或任何内容类型时,WordPress会将其保存到两个不同的区域。 第一部分是您使用帖子编辑器添加的内容的主体。

第二部分是关于特定内容的信息。 例如,标题,作者,日期,时间等等。 这篇文章的信息位被称为元数据。

WordPress会自动将所有必需的元数据添加到您创建的每个帖子或页面。 WordPress还允许用户使用自定义字段保存自己的自定义元数据。

默认情况下,自定义字段选项在帖子编辑屏幕上隐藏。 要查看它,您需要点击顶部的“屏幕选项”按钮,然后检查自定义字段选项。

显示自定义字段元框

向下滚动一下,就可以看到帖子编辑器下面的自定义字段元框。

自定义字段元框在WordPress的后编辑屏幕上

自定义字段可用于添加与帖子,页面或任何内容类型相关的任何信息。 这个元信息可以显示在你的主题中。 但是,要做到这一点,你将需要编辑你的WordPress主题文件。

这就是为什么这个教程是建议熟悉编辑主题文件的用户。 对于想要学习如何在自己的主题或插件中正确使用自定义字段的有抱负的WordPress开发人员也很有帮助。

话虽如此,让我们来看看如何在WordPress中添加和使用自定义字段。

在WordPress中添加自定义字段

首先,您需要编辑要在其中添加自定义字段的帖子或页面,然后转到自定义字段元框。

添加自定义字段

接下来,您需要为自定义字段提供一个名称,然后输入其值。 点击添加自定义字段按钮保存。

该字段将被存储并显示在自定义字段元框中,如下所示:

保存自定义字段

您可以随时编辑此自定义字段,然后单击更新按钮保存更改。 您也可以根据需要删除它。

现在你可以保存你的文章来存储你的自定义字段设置。

在WordPress主题中显示自定义字段

要在您的网站上显示您的自定义字段,您将需要编辑您的WordPress主题文件。 如果您之前没有这样做,那么请参阅我们的指南,了解如何在WordPress中复制和粘贴代码。

首先,您需要找到需要编辑的主题文件以显示您的自定义字段。 理想情况下,您希望将其显示在单个帖子页面上。 您将需要编辑single.php或content-single.php文件。

您将需要在WordPress循环内输入自定义字段代码。 寻找这样的行:

你想确保你在下面一行之前添加你的代码:

现在,您需要将此代码添加到您的主题文件中:

ID,'key',true);  ?> 

不要忘记用自定义字段的名称替换密钥。 例如,我们在演示主题中使用了这个代码:

今天的心情: ID,“情绪”,真); ?>

您现在可以保存更改并访问您添加自定义字段的帖子,以便查看它的实际使用情况。

显示在WordPress主题中的自定义字段数据

现在,您可以在所有其他WordPress帖子中使用此自定义字段。 只需创建一个新帖子或编辑一个现有的帖子。 转到自定义字段元框并从下拉菜单中选择您的自定义字段并输入其值。

选择并重用自定义字段

点击“添加自定义字段”按钮保存您的更改,然后发布或更新您的文章。

为自定义字段创建用户界面

正如你所看到的那样,一旦你添加一个自定义字段,你将不得不选择这个字段,并在你每次发表帖子时输入它的值。

如果您的网站上有很多自定义字段或多个用户,那么这不是一个非常理想的解决方案。

如果您可以创建一个用户界面,用户可以填写表单以将值添加到您的自定义字段中,这不是很好吗?

这是很多流行的插件已经做的。 例如,Yoast SEO插件中的SEO标题和元描述框是一个自定义元框:

用于Yoast搜索引擎优化的自定义元框

最简单的方法是使用高级自定义字段插件。 它允许您创建自定义字段,将它们分组,并将它们显示在WordPress的后期编辑屏幕上的自定义元框中。

详细的分步说明

用条件语句隐藏空的自定义字段

在上面的例子中,我们向您展示了如何创建自定义字段并将其显示在主题中。

现在我们来看看在显示之前如何检查自定义字段是否为空。 要做到这一点,我们将修改我们的代码,首先检查字段中是否有数据。

ID,“情绪”,真);

 如果($心情){?> 

今天的心情:回声$心情; ?>

不要忘记用自己的自定义字段名称替换心情。

将多个值添加到自定义字段

自定义字段可以在相同的文章中重复使用以添加多个值。 您只需要再次选择它并添加另一个值。

将多个值添加到自定义字段

但是,我们在上面的例子中使用的代码将只能显示一个值。

要显示自定义字段的所有值,我们需要修改代码并使其返回数组中的数据。 您将需要在您的主题文件中添加以下代码:

ID,“心情”,假);
 if(count($ mood)!= 0){?> 

今天的心情:

    “。$情绪“。
    }
    ?>

不要忘记用自己的自定义字段名称替换心情。

在这个例子中,你会注意到我们已经改变了最后一个参数 get_post_meta 函数为false。 这个参数定义函数是否应该返回一个值。 将它设置为false允许它将数据作为一个数组返回,然后将其显示在一个foreach循环中。

用特定的自定义键显示帖子

WordPress允许您使用自定义键和值显示文章。 例如,如果您尝试创建自定义存档页面以显示具有特定自定义键的所有帖子,则可以使用WP_Query类来查询与这些字段匹配的帖子。

您可以使用下面的代码作为起点。

$ args = array(
 'meta_key'=>'情绪',
 'meta_value'=>'快乐'
 );
 $ the_query = new WP_Query($ args); have_posts()):?> 
	have_posts()):$ the_query-> the_post();  ?> 

不要忘记用你自己的值来代替meta_key和meta_value参数。

使用自定义字段添加访客作者姓名

你想添加一个客人的帖子,但不想添加一个新的用户配置文件只是添加一个单一的职位? 更简单的方法是将客人作者姓名添加为自定义字段。

首先,您需要在主题的functions.php文件或特定于站点的插件中添加以下代码。

add_filter('the_author','guest_author_name');
 add_filter('get_the_author_display_name','guest_author_name');
 函数guest_author_name($ name){
 全球$ post;
 $ author = get_post_meta($ post-> ID,'guest-author',true);
 如果($作者)
 $ name = $ author;
 返回$ name;
 } 

这段代码挂钩了一个函数 作者 get_the_author_display_name 过滤WordPress。 该函数首先检查来宾作者姓名。 如果存在,则用作者姓名替换作者姓名。

现在,您将需要编辑要显示来宾作者姓名的帖子。 转到自定义字段元框并添加您的访客作者姓名。

添加访客作者自定义字段

详情

向使用自定义字段的文章显示贡献者

在许多受欢迎的博客和新闻网站上,多位作者贡献了一篇文章。 但是,WordPress只允许单个作者与帖子相关联。

解决这个问题的一个方法是使用Co-Authors Plus插件。 了解更多

另一种方法是将贡献者添加为自定义字段。

首先,您需要编辑您想要显示共同作者或贡献者的帖子。 向下滚动到自定义字段元框,并将作者姓名添加为共同作者自定义字段。

将共同作者添加为自定义字段

现在将此代码添加到您想要显示共同作者的主题文件中。


ID,“共同作者”,假);
 if(count($ coauthors)!= 0){?> 
  • 贡献者
  • ‘。$ coauthors。“;
    }
    ?>

要显示以逗号分隔的作者姓名,可以添加以下自定义CSS。

.coauthors ul {
 显示:内联;
 }
 .coauthors li {
 显示:内联;
 列表样式:无;
 }
 .coauthors李:在{
 内容:”,”
 }
 .coauthors李:最后一个孩子:在{
     内容:“”;
 }
 .coauthors李:第一个孩子:在{
     内容:“:”;
 } 

这是它在我们的演示网站上的样子。

共同作者使用自定义字段显示

在WordPress中显示循环之外的自定义字段

到目前为止,我们已经向您展示了在WordPress循环中显示自定义字段的所有示例。 如果你需要在循环之外显示它们呢? 例如,在单个帖子的侧边栏中。

要在WordPress循环之外显示自定义字段,请添加以下代码:

后> ID;
 echo get_post_meta($ postid,'key',true);
 wp_reset_query();
 ?> 

不要忘记用您的自定义字段名称替换密钥。

使用自定义字段显示自定义页眉,页脚,边栏

通常,大多数WordPress主题在所有页面上使用相同的页眉,页脚和侧边栏。 有多种方法可以为网站上的不同页面显示不同的侧边栏,页眉或页脚。

一种方法是使用自定义字段。 编辑您想要显示不同边栏的帖子或页面,然后将边栏添加为自定义字段。

使用自定义字段将自定义边栏添加到帖子

现在你需要编辑你的WordPress主题文件,如single.php你想显示自定义边栏。 您将会查找以下代码:

用下面的代码替换这一行:

后> ID;
 $ sidebar = get_post_meta($ postid,“sidebar”,true);
 get_sidebar($栏);
 wp_reset_query();
 ?> 

此代码仅查找侧边栏自定义字段,然后将其显示在主题中。 例如,如果你添加 wpbpage 作为您的侧边栏自定义字段,那么代码将查找sidebar-wpbpage.php文件来显示。

您将需要在主题文件夹中创建sidebar-wpbpage.php文件。 您可以从主题的sidebar.php文件中复制代码作为起点。

使用自定义字段操作RSS提要内容

想要显示额外的元数据或内容给您的RSS提要用户? 使用自定义字段,您可以操纵您的WordPress RSS源,并将自定义内容添加到您的Feed中。

首先,您需要在主题的functions.php文件或特定于站点的插件中添加以下代码。

功能site_postrss($内容){
 全球$ wp_query;
 $ postid = $ wp_query-> post-> ID;
 $ coolcustom = get_post_meta($ postid,'coolcustom',true);
 if(is_feed()){
 if($ coolcustom!==''){
 $ content = $ content。“ 

“$ coolcustom。” “; } else { $ content = $ content; } } 返回$ content; } add_filter('the_excerpt_rss','site_postrss'); add_filter('the_content','site_postrss');

现在只需创建一个名为“coolcustom”的自定义字段并添加您喜欢的任何值。 您可以使用它来显示广告,图片,文字或任何你想要的。

使用自定义字段操作RSS源标题

有时候,您可能需要为RSS提要用户的帖子标题添加额外的文字。 例如,如果您正在发布赞助信息或来宾信息。

首先,在主题的functions.php文件或特定于站点的插件中添加以下代码。

功能site_titlerss($内容){
 全球$ wp_query;
 $ postid = $ wp_query-> post-> ID;
 $ gpost = get_post_meta($ postid,'guest_post',true);
 $ spost = get_post_meta($ postid,'sponsored_post',true);

 if($ gpost!==''){
 $ content ='Guest Post:'。$ content;
 }
 elseif($ spost!==''){
 $ content ='Sponsored Post:'。$ content;
 }
 else {
 $ content = $ content;
 }
 返回$ content;
 }
 add_filter('the_title_rss','site_titlerss'); 

接下来,您需要编辑要在标题字段中显示额外文本的帖子,并在自定义字段中添加guest_post和sponsored_post。

赞助和客人发布自定义字段

如果找到这两个自定义字段中的任何一个值为“true”,那么它将在标题之前添加适当的文本。 这种技术可以用各种方式来适应任何你喜欢的。

想要学习更多的很酷的RSS提要黑客?

使用自定义字段在WordPress中设置帖子的到期日期

想要设置您的WordPress网站上的一些职位到期日期? 当您只想在特定时期发布内容时,如运行调查或有限的时间优惠,这种情况非常方便。

一种方法是手动删除帖子内容或使用Post Expirator插件等插件。

另一种方法是使用自定义字段在特定时间后自动过期。

您将需要编辑您的主题文件,并添加像这样修改WordPress循环:

ID,“到期”,假);
 if(count($ expirationtime)!=''){
 if(is_array($ expirationtime)){
 $ expirestring = implode($ expirationtime);
 }

 $ secondsbetween = strtotime($ expirestring)-time();
 if($ secondsbetween> = 0){
 回声'这个职位将过期'。$ expirestring。';
 内容();
 } else {
 回声“对不起,这个帖子已过期!”
 }
 } else {
 内容();
 }
 ENDWHILE;
 万一;
 ?> 

注意:您将需要编辑此代码以匹配您的主题。

添加此代码后,您可以将过期自定义字段添加到您要过期的帖子。 确保以这种格式添加时间 mm / dd / yyyy 00:00:00

将过期自定义字段添加到WordPress帖子

使用自定义字段样式单个帖子

想改变使用CSS个人职位的外观? WordPress自动分配每个帖子自己的类,你可以用它来添加自定义的CSS。

但是,使用自定义字段您可以添加自己的自定义类,然后使用它们以不同方式设置文章的样式。

首先,你需要编辑一个你想要以不同风格的文章。 转到自定义字段框和后类自定义字段。

发布课程自定义字段

接下来,您需要编辑WordPress主题文件,并在WordPress循环的开始处添加此代码。

ID,“课后”);  ?> 

现在你需要用post_class()函数找到一行。 下面是我们演示主题的样子:

>

更改此行以包含您的自定义字段值,如下所示:

>

现在,如果您使用Inspect工具检查帖子的源代码,那么您将看到自定义字段CSS类被添加到帖子类中。

自定义字段后类

现在你可以使用这个CSS类来添加自定义的CSS和风格你的文章不同。

就这样