Support » Plugin: The Events Calendar » Interferes with ACF Relationship Field

  • I’m running TEC 3.0, Advanced Custom Fields 4.1.6, and WordPress 3.5.2.

    For some reason, when The Events Calendar is activated, I cannot use the ACF Relationship Field unless it is only selecting tribe_events posts. Disabling the plugin suddenly fixes the issue. I see that the data for the ACF field remains in the database even when it can’t be seen, so it seems that The Events Calendar is somehow interfering with retrieval and saving of the field value. Other fields seem to work, so I wonder if this is somehow a post_type issue, but I’m stuck.

    http://wordpress.org/extend/plugins/the-events-calendar/

Viewing 15 replies - 1 through 15 (of 16 total)
  • This morning I double-checked and ruled out issues with 2.0.10 and 2.0.11.

    Hi mrwweb,

    I bet this is related to another bug that’s been reported where posts and pages don’t show in the WordPress linking window. I’ve logged this as a related issue and hopefully we’ll get this fixed soon.

    Thanks for the report!

    – Jonah

    Hi Jonah,

    Thanks for the reply. That does sound like it might be related. If you do resolve it and could post a hotfix I could apply, that would be greatly appreciated. 3.0 looks awesome and I want to use it!

    -Mark

    Just tried the 3.0.1 update. The problem still seems to be happening.

    I ran into this issue today and just spent about 2 hours trying to find out what’s happening by digging through ACF’s code, and it turns out it’s a problem with TEC.

    ACF runs the get_posts function with an array of post types generated by WP’s get_post_types() function, with a few internal ones removed. So by default, with TEC installed, it might give you a post types array of:

    ["post"] => "post"
    ["page"] => "page"
    ["attachment"] => "attachment"
    ["tribe_events"] => "tribe_events"
    ["tribe_venue"] => "tribe_venue"
    ["tribe_organizer"] => "tribe_organizer"

    If you run get_posts with that array as the post_type, and all the other parameters set such that it returns all posts and all post statuses, you SHOULD get a result of every single post on your site, but instead you get a list of all tribe_events posts on your site, and none of the other types – not even the other TEC types.

    If you remove the tribe_events from the post type list and re-run the same exact query, you get a list of all the pages/posts/attachments and the other 2 tribe_* post types.

    So obviously TEC is somehow overriding the results of get_posts when tribe_events is present as a post type to show only events.

    @amandaip,

    Excellent work! I’ve been digging too but hadn’t even come close. This is progress!

    I’m hoping that Tribe is hot on the case, but I’ll try to take your findings and look more to see if we can find a fix before a plugin update comes out. Please post an update if you get any closer!

    I too came across this issue. My relationship custom field was on events (selecting from a list of my own custom types). I did a bit of digging around both plugins to try to determine what was going wrong and also found that removing tribe_events from the post types initially solved the problem, but I also needed tribe_events to come up in other areas of the site.

    I wasn’t able to get much further than this, and although the only progress I made was through modifying the ACF plugin, it suggests to me that it originally comes from TEC.

    My final workaround was unfortunately to hack the code in ACF. I changed the format_value function in \core\fields\relationship.php at line 694. I changed:


    $posts = get_posts(array(
    'numberposts' => -1,
    'post__in' => $value,
    'post_type' => apply_filters('acf/get_post_types', array()),
    'post_status' => array('publish', 'private', 'draft', 'inherit', 'future'),
    ));

    to:


    $types = apply_filters('acf/get_post_types', array());
    unset($types['tribe_events']);
    $posts = get_posts(array(
    'numberposts' => -1,
    'post__in' => $value,
    'post_type' => $types,
    'post_status' => array('publish', 'private', 'draft', 'inherit', 'future'),
    ));

    I also notified the folks at Tribe of the problem in case they weren’t aware of it yet.

    I’m also experiencing the exact same issue. Hoping they resolve it soon.

    I’ve just tested this on Events Calendar Pro 3.0.3 and the issue remains.

    I just tested on The Events Calendar 3.0.2 and the issue does seem to be resolved.

    I’m using ACF 4.2.0 and TEC 3.0.3 and am running into the same problem.

    Disregard my previous post. It was working correctly. My problem was mostly user error and a finicky scroll view for the post type.

    Plugin Author Barry Hughes

    (@websitebakery)

    Just checking in to see if everyone’s good here – looks like some mixed reports.

    I had this problem on multiple sites in multiple environments and saw it resolved in all of them. I suspect that if others are having problems it’s a different issue than the one in the OP.

Viewing 15 replies - 1 through 15 (of 16 total)
  • The topic ‘Interferes with ACF Relationship Field’ is closed to new replies.