Skip to content

Instantly share code, notes, and snippets.

@codearachnid
Last active November 18, 2022 19:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save codearachnid/76e935ba2ab3be8a2427f2174e5ff266 to your computer and use it in GitHub Desktop.
Save codearachnid/76e935ba2ab3be8a2427f2174e5ff266 to your computer and use it in GitHub Desktop.
Adding support to https://wordpress.org/plugins/acf-vc-integrator/ for ACF Extended
<?php
/**
Adding support for ACF Extended (https://www.acf-extended.com/)
* Multiple New Field Groups
* 30+ New Field Types
update the following files for includes:
* inc/wpbakery/wpbakery_grid_element.php : 61 `include_once(ACFVC_PATH.'inc/acf_vc_helper_extended.php');`
* inc/wpbakery/wpbakery_element.php : 62 `include_once(ACFVC_PATH.'inc/acf_vc_helper_extended.php');`
* admin/acf-vc-integrator-admin.php : 47 `require_once ACFVC_PATH.'inc/acf_vc_helper_extended.php';`
**/
if ( ! class_exists( 'acf_vc_helper_extended' ) ) {
class acf_vc_helper_extended extends acf_vc_helper {
public function __construct() {
parent::__construct();
$this->construct = 'we are in the child class';
}
public function acfe_phone_number($field, $args, $post_id){}
public function acfe_hidden($field, $args, $post_id){}
}
}
add_filter( "acf_vc_repeater_add_on_fields", "acf_vc_add_extended_fields_to_fields",1,3 );
add_filter( "acf_vc_flexible_content_add_on_fields", "acf_vc_add_extended_fields_to_fields",1,3 );
add_filter( "acf_vc_clone_add_on_fields", "acf_vc_add_extended_fields_to_fields",1,3 );
function acf_vc_add_extended_fields_to_fields ($field, $args, $post_id ) {
if (class_exists('acf_vc_helper_extended')) {
$acf_vc_helper_extended = new acf_vc_helper_extended();
if('acfe_phone_number' === $field["type"]) {
$field = $acf_vc_helper_extended->acfe_phone_number($field, $args, $post_id);
} else if('acfe_hidden' === $field["type"]) {
$field = $acf_vc_helper_extended->acfe_hidden($field, $args, $post_id);
}
}
return $field;
}
add_filter( "acf_vc_add_on_fields", "acf_vc_add_extended_fields",1,3 );
function acf_vc_add_extended_fields ($field,$args,$post_id ) {
if (class_exists('acf_vc_helper_extended')) {
$acf_vc_helper_extended = new acf_vc_helper_extended();
if('acfe_phone_number' === $field["type"]) {
$field = $acf_vc_helper_extended->acfe_phone_number($field, $args, $post_id);
} else if('acfe_hidden' === $field["type"]) {
$field = $acf_vc_helper_extended->acfe_hidden($field, $args, $post_id);
}
}
return $field;
}
/*Add filter hooks to the admin guide*/
add_action("acf_vc_add_to_filter_hook_guide", "acf_vc_acfe_phone_number_filter_guide",10,1);
function acf_vc_acfe_phone_number_filter_guide($text_array) {
if (class_exists('acf_vc_helper_extended')) {
?>
<div class="acf-vc-hook-wrapper">
<h3>acfe_phone_number field</h3>
<p>add_filter('acfvc_acfe_phone_number','function_name',10,3);</p>
<p class="parameters">Parameters</p>
<ol>
<li>$output
<p><?php echo $text_array["output_text"]; ?></p>
</li>
<li>$field
<p><?php echo $text_array["field_text"]; ?></p>
</li>
<li>$post_id
<p><?php echo $text_array["post_id_text"]; ?></p>
</li>
</ol>
</div>
<?php
}
}
add_action("acf_vc_add_to_filter_hook_guide", "acf_vc_acfe_hidden_filter_guide",10,1);
function acf_vc_acfe_hidden_filter_guide($text_array) {
if (class_exists('acf_vc_helper_extended')) {
?>
<div class="acf-vc-hook-wrapper">
<h3>acfe_hidden field</h3>
<p>add_filter('acfvc_acfe_hidden','function_name',10,3);</p>
<p class="parameters">Parameters</p>
<ol>
<li>$output
<p><?php echo $text_array["output_text"]; ?></p>
</li>
<li>$field
<p><?php echo $text_array["field_text"]; ?></p>
</li>
<li>$post_id
<p><?php echo $text_array["post_id_text"]; ?></p>
</li>
</ol>
</div>
<?php
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment