ACF高级自定义字段怎么用?

域名注册
域名注册 正式会员超兽战士 👑年卡会员
发布于 2026-10-07 04:15 ·3 浏览 ·0 回复

学完这篇,你能在 WordPress 后台用 ACF 创建自定义字段,并在主题模板里安全输出这些字段的值。下面以 WordPress 6.5.2 + ACF 6.2.6 为例,从安装讲到模板调用。

第一步:安装并启用 ACF

这一步要拿到 ACF 插件入口,做完后左侧菜单会出现“ACF”菜单项。

免费版:登录 WordPress 后台,左侧点“插件” → “安装插件”,在右上搜索框输入 Advanced Custom Fields,找到“Advanced Custom Fields”卡片,点“现在安装”,按钮变成“启用”后点“启用”。

Pro 版:左侧点“插件” → “安装插件” → 顶部“上传插件” → “选择文件”,选中 advanced-custom-fields-pro.zip → “现在安装” → “启用插件”。

注意:免费版没有“重复器”“灵活内容”“选项页”这些字段类型,需要 Pro 版。不要混用破解版,容易带后门。

第二步:创建字段组并添加字段

这一步要建一个字段组,做完后你会在文章编辑页看到自定义字段输入框。

左侧点“ACF” → “字段组” → “新建字段组”。顶部“标题”填“文章额外信息”。在“字段”区域点“+ 添加字段”,字段标签填“副标题”,字段名称自动生成 subtitle,字段类型下拉选“文本”。再点“+ 添加字段”,字段类型选“图像”,字段名称填 cover_image,返回格式选“图像数组”。如果要重复内容,字段类型选“重复器”,字段名称填 features,点“+ 添加字段”添加子字段 feature_title。

注意:字段名称是模板里调用的 key,不要用中文、空格或大写字母。标签只是后台显示用,两者别搞混。

第三步:设置字段显示位置

这一步要告诉 ACF 这个字段组出现在哪些编辑页面,做完后写文章时才能看到字段。

在字段组编辑页往下找到“位置”面板。第一行规则选“文章类型” “等于” “文章”。如果只想对某个分类显示,点“添加规则组”,选“文章分类” “等于” “教程”。再往下“样式”选“标准”,“位置”选“正常”。最后点右上角“发布”。

注意:位置规则不匹配,字段不会出现。改完规则要重新打开文章编辑页刷新。

第四步:在主题模板中调用字段

这一步要把字段值输出到前台,做完后文章页会显示你填的内容。

先建子主题,不要直接改父主题。用“外观” → “主题文件编辑器”编辑 single.php,或通过 FTP 修改。文本字段输出:

<?php echo esc_html(get_field('subtitle')); ?>

图像字段输出:

<?php $img = get_field('cover_image'); if ($img): ?>
  <img src="<?php echo esc_url($img['url']); ?>" alt="<?php echo esc_attr($img['alt']); ?>">
<?php endif; ?>

重复器输出:

<?php if (have_rows('features')): ?>
  <ul>
    <?php while (have_rows('features')): the_row(); ?>
      <li><?php echo esc_html(get_sub_field('feature_title')); ?></li>
    <?php endwhile; ?>
  </ul>
<?php endif; ?>

灵活内容用 have_rows('flexible') + get_row_layout() 判断布局。

注意:get_field() 返回原始值,输出时必须用 esc_html()、esc_url()、esc_attr() 转义,否则有 XSS 风险。

第五步:Pro 版选项页和调用

这一步要加全局设置页,做完后后台会出现“选项页”菜单。在子主题 functions.php 加:

add_action('acf/init', function() {
  acf_add_options_page([
    'page_title' => '站点设置',
    'menu_title' => '站点设置',
    'menu_slug'  => 'site-settings',
    'capability' => 'edit_posts',
    'redirect'   => false,
  ]);
});

然后去“ACF” → “字段组”新建字段组,位置规则选“选项页” “等于” “站点设置”。模板里用 get_field('字段名', 'option') 调用。

注意:改完 functions.php 如果后台白屏,多半是语法错误,用 FTP 改回来。

小结

  • 安装 ACF 后,在“ACF” → “字段组”创建字段,字段名称是模板调用 key。
  • 位置规则决定字段出现在哪些编辑页,必须匹配文章类型或分类。
  • 模板用 get_field()、the_field()、have_rows() 输出,输出时转义。
  • 重复器、灵活内容、选项页需要 ACF Pro。
  • 改主题用子主题,避免更新丢失。
版权声明:本文来自 GJ论坛《ACF高级自定义字段怎么用?》
原文链接:https://www.gj0.com/thread-59.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~