在 wordpress 中使用增强的自定义类别插件在每个类别页脚中添加不同的文本字段
Adding different text fields in each category footer using enhanced custom categories plugin in wordpress
几个小时以来,我一直在尝试在页脚区域显示高级自定义字段,以便根据每个类别更改类别文本。
一旦我离开 content-ecp.php 文件的范围,类别 ID 就会改变。
当使用 the_field('content_under_products', $product_cat_id);?>
中的 $product_cat_id
检索字段数据时..
我没有得到存储字段内容的正确 ID。正确的 ID 是 (1034),但我得到的是 (108)。
我知道,我可以将代码更改为 the_field('content_under_products', 1034);?>
但这只适用于一个特定的页面,这在横向上没有多大意义。
一定有办法 select 另一个 ID。不幸的是,我对 php 的了解很少。所以我没能想出一个带有动态 post ID 的合适解决方案。
如果有人能帮我解决这个问题,我将非常高兴。
这里是 link 页面:https://praesenteente.de/geldgeschenke/
我基本上包括:
CATEGORY HEADER AND DESCRIPTION(此处字段可以正确显示)
WOOCOMMERCE 产品
FOOTER(此处未显示)
听起来您只能访问 content-ecp.php 文件中的 $product_cat_id。
我认为您应该检查一个逻辑问题:内容页面是针对单个视图的,因此当单个 post/page 有一个 id 并且您想让它们看起来都一样时单身 posts.
存档页面正在查看 post 的集合。您的变量名称 PRODUCT_cat_id 使用的不是产品的复数形式,让我假设您正在像这样设置变量的值:
$product_cat_id = get_the_ID();
所以将当前浏览的id post保存到变量中。
这在单个页面中工作正常,但在存档中却不行。
当您查看一个类别时,您有一个与您正在查看的术语对应的 ID。例如,类别名为 "category",您现在正在查看 "shoes",这是一个类别术语。您可以通过以下方式获取当前查看类别词条页面的词条id:
$cat_term_id = get_queried_object()->term_id;
现在您已经保存了类别术语的 ID。使用此 ID,您现在可以获得类别描述文本,这是类别术语中的元字段。
$cat_description = get_field('content_under_products', $cat_term_id );
如果您的 'content_under_products' 字段是使用 acf 添加到类别的字段,则此方法有效。我想这就是您要找的。
如果我答错了你的问题,而你只想显示档案本身的描述(而不是类别/分类的术语),你可以使用:
$archive_description = get_the_archive_description();
https://developer.wordpress.org/reference/functions/the_archive_description/
几个小时以来,我一直在尝试在页脚区域显示高级自定义字段,以便根据每个类别更改类别文本。 一旦我离开 content-ecp.php 文件的范围,类别 ID 就会改变。
当使用 the_field('content_under_products', $product_cat_id);?>
中的 $product_cat_id
检索字段数据时..
我没有得到存储字段内容的正确 ID。正确的 ID 是 (1034),但我得到的是 (108)。
我知道,我可以将代码更改为 the_field('content_under_products', 1034);?>
但这只适用于一个特定的页面,这在横向上没有多大意义。
一定有办法 select 另一个 ID。不幸的是,我对 php 的了解很少。所以我没能想出一个带有动态 post ID 的合适解决方案。
如果有人能帮我解决这个问题,我将非常高兴。
这里是 link 页面:https://praesenteente.de/geldgeschenke/ 我基本上包括:
CATEGORY HEADER AND DESCRIPTION(此处字段可以正确显示)
WOOCOMMERCE 产品
FOOTER(此处未显示)
听起来您只能访问 content-ecp.php 文件中的 $product_cat_id。
我认为您应该检查一个逻辑问题:内容页面是针对单个视图的,因此当单个 post/page 有一个 id 并且您想让它们看起来都一样时单身 posts.
存档页面正在查看 post 的集合。您的变量名称 PRODUCT_cat_id 使用的不是产品的复数形式,让我假设您正在像这样设置变量的值:
$product_cat_id = get_the_ID();
所以将当前浏览的id post保存到变量中。 这在单个页面中工作正常,但在存档中却不行。
当您查看一个类别时,您有一个与您正在查看的术语对应的 ID。例如,类别名为 "category",您现在正在查看 "shoes",这是一个类别术语。您可以通过以下方式获取当前查看类别词条页面的词条id:
$cat_term_id = get_queried_object()->term_id;
现在您已经保存了类别术语的 ID。使用此 ID,您现在可以获得类别描述文本,这是类别术语中的元字段。
$cat_description = get_field('content_under_products', $cat_term_id );
如果您的 'content_under_products' 字段是使用 acf 添加到类别的字段,则此方法有效。我想这就是您要找的。
如果我答错了你的问题,而你只想显示档案本身的描述(而不是类别/分类的术语),你可以使用:
$archive_description = get_the_archive_description();
https://developer.wordpress.org/reference/functions/the_archive_description/