WordPress超级自定义字段插件:Advanced Custom Fields

Advanced Custom Fields 是一款非常强大的自定义字段插件,允许你自己添加多种形式的自定义字段类型,比如 Image、Checkbox、File、Text、Select、True / False、Link、Textarea 等等,可以集成为一个或多个面板,支持导出字段为 xml 或php代码,还可以集成到主题或插件里。

该插件需要基础的PHP代码编辑能力,你需要修改主题面板文件来显示字段。

下面倡萌将做一个简单的测试演示。

1.在后台插件安装界面搜索 Advanced Custom Fields 即可现在安装,或者下载 Advanced Custom Fields

2.启用插件后,你就可以在左边菜单看到“字段”,进入后点击“新建”,就出现类似下面的界面。

advanced-custom-fields-wpdaxue_com

点击“添加字段”,填写和选择相关信息,需要注意的是“字段名称”必须是英文、数字、短横线、下划线组成,不能有空格。比如倡萌添加了“test_text”和 “test_img”两个字段,分别为 文本 和 图像 类型。

显示“位置”为 文章类型 下的 “post”,也就是在文章编辑界面添加这个自定义字段组。

然后“选项”的“样式”设置为“标准MetaBox”,保存发布。

找到这个插件 顿时觉得wordpress 快无敌了!

模版函数
显示一个字段

field_name代表字段名称,指创建custom field时“Field Name”中填写的内容,只能输入字母和下划线。

<p><?php the_field('field_name'); ?></p>
the_field()的使用类似WordPress的the_title(),直接输出内容。

返回字段的值

the_field()会直接显示字段的值,要返回的话,就要用get的方式

<?php
  
$variable = get_field('field_name');
  
// 现在可以使用$variable了
  
?>
使用前判断值是否存在

如果(value == “” || value == null || value == false),则get_field()返回false,这样就可以先判断值是否存在,再输出

<?php
  
if(get_field('field_name'))
{
    echo '<p>' . get_field('field_name') . '</p>';
}
  
?>

处理数组类型的返回值

ACF中image、file等类型可以用数组形式(如选择image object)返回更多的数据,而不仅仅是只返回image url或者file url。

下面的代码演示先用get_field()获取数组,在用foreach循环读取数组元素的方法。

<?php
  
$values = get_field('field_name');
if($values)
{
    echo '<ul>';
  
    foreach($values as $value)
    {
        echo '<li>' . $value . '</li>';
    }
  
    echo '</ul>';
}
  
// 用var_dump()看一看$values的真面目吧
var_dump($values);
  
?>

处理返回url的image类型

如果创建image type时选择返回url,代表返回值是一个字符串,所以显示方法如下

<?php $image = wp_get_attachment_image_src(get_field('image_test'), 'full'); ?> <img src="" alt="<?php echo get_the_title(get_field('image_test')) ?>" />

未经允许不得转载:广州网络营销团队 » WordPress超级自定义字段插件:Advanced Custom Fields

赞 (0)