我正在尝试使用INLINE类型Magnific Popup中的Advanced Custom Fields acf_form()
function来编辑和创建WordPress网站上的帖子。这是一项正在进行中的工作; here's the link。您可以使用用户名test
和密码ukQfQ7zx7akPXH
登录。
WordPress内容编辑器有效,只是因为我无法点击" Visual"标签,哪种方式违背了WYSIWYG的目的。
我确保每个ACF表单都具有唯一的id
属性。所以,我猜这个问题与TinyMCE和Magnific Popup有某种冲突。但是,Chrome中没有出现控制台错误。
有没有人遇到过这样的事情?
更新
这是新代码:
function cb_new_post_popup() { ?>
<div id="new-post-popup"
class="update-popup mfp-hide">
<h3>New Post</h3>
<?php
$current_user = wp_get_current_user();
$args = array('fields' => array('field_54134c496ff9d', 'field_541877c6025b3'),
'form_attributes' => array('id' => 'acf-form-new_post'),
'post_title' => true,
'post_content' => true,
'post_id' => 'new_post',
'new_post' => array('post_status' => 'publish'),
'return' => '%post_url%');
acf_form($args);
?>
<script>
jQuery(function($) {
acf.do_action('append', $('#new-post-popup'));
});
</script>
</div>
<?php }
第二次更新
我还尝试将其添加到JS中的magnificPopup
函数:
callbacks: {
open: function() {
console.log('Popup is opened');
acf.do_action('append', $(this));
},
close: function() {
tinymce.activeEditor.save();
}
// e.t.c.
}
答案 0 :(得分:0)
我认为这个问题是由ACF的JS在加载弹出窗口时没有触发动作引起的。此操作用于设置所有字段的JS。
您可以手动触发操作,如下所示:
acf.do_action('append', $('#popup_id'))
请将#popup_id替换为弹出窗口的选择器,并将此代码添加到弹出式内容HTML中的内联脚本标记中。
干杯 ë