为ACF自定义Divi Blog模块:自定义字段代码添加位置咨询
如何在新版Divi Blog模块中添加自定义字段显示代码?
我找到了旧话题《如何在Divi Blog模块中显示自定义字段?》,但自2022年12月以来该模块代码已更新,不清楚该在哪里添加如下自定义字段代码:
<?php if($my_field) { ?> <div class="my_field"><?php the_field('my_field'); ?></div> <?php } ?>
推荐方案:使用Divi钩子(避免核心文件修改丢失)
直接修改Divi核心模块文件会在主题更新后丢失代码,优先使用子主题+Divi自带钩子实现:
- 确保你正在使用子主题(如果没有,先创建并激活)
- 打开子主题的
functions.php文件,添加以下代码:
- 打开子主题的
// 在Divi博客文章标题后显示自定义字段 function show_divi_blog_custom_field() { // 替换'my_field'为你的自定义字段键名 $custom_field_value = get_field('my_field'); if ($custom_field_value) { echo '<div class="my_field">' . esc_html($custom_field_value) . '</div>'; } } // 选择合适的钩子插入: // et_pb_blog_post_title_after - 标题之后 // et_pb_blog_post_meta_after - 元信息(日期、分类)之后 // et_pb_blog_post_before - 文章内容之前 add_action('et_pb_blog_post_title_after', 'show_divi_blog_custom_field');
备选方案:修改核心模块文件(不推荐)
如果一定要直接修改模块代码,新版Divi的Blog模块文件路径为:wp-content/plugins/divi-builder/includes/modules/Blog.php
找到render_post方法,在输出文章标题、元信息或内容的代码段中插入你的自定义字段代码,例如在$post_title变量输出之后添加:
// 插入自定义字段代码 $my_field = get_field('my_field'); if($my_field) { $post_title .= '<div class="my_field">' . $my_field . '</div>'; }
⚠️ 注意:此方法会在Divi更新后丢失修改,每次更新都需要重新操作。
内容的提问来源于stack exchange,提问作者carosch
相关产品推荐
相关产品推荐

