Bug #23408 Bug Fixed

Channel Layouts are not being reliably saved.

Version: 4.0.5 Reporter: jdboothman

Channel Layouts seem to be having a hard time saving my fields in the correctly spot. I usually have to make changes 2, 3 or even 4 times before they all take.

  1. Add multiple fields to a channel (try around 10).
  2. Create a new layout for the channel.
  3. Create a new tab for the layout.
  4. Drag half of the new fields into the new tab.
  5. Rearrange the other half on the main tab.
  6. Click save.

Often times fields from the ‘publish’ tab will go into the new tab, fields from the new tab into the publish tab, and ordering is all over the place.

Is there a limit to how many actions are being tracked before hitting save?

  • Upon more testing, it looks like adding a ‘Field Group’ to the channel is what is causing the issue. Try these steps…

    1. Create 4 new fields and add them to ‘Test’ field group.
    2. Create 4 new fields not in a field group.
    3. Create a channel and add the ‘Test’ field group, as well as the 4 fields not in the group.
    4. Create a new Channel Layout.
    5. Create a new tab (I named mine ‘Test’).
    6. Drag the 4 fields from the field group into the ‘Test’ tab, and reorder them.
    7. Reorder fields on the publish tab.
    8. Save the layout.
    9. Go back into the layout.
    10. View the madness that has ensued.
    jdboothman
    11th January, 2018 at 12:07pm
  • In system/ee/EllisLab/ExpressionEngine/Controller/Channels/Layouts.php can you add

    $channel_layout->synchronize();

    at line 300 and see if that resolves it?

    Seth Barber
    11th January, 2018 at 12:26pm
  • Replacing

    $this->removeStaleFields($channel_layout);

    with

    $channel_layout->synchronize();

    does seem to fix the issue.

    Reusser Design, LLC
    11th January, 2018 at 12:44pm

You must be signed in to comment on a bug report.

  • In system/ee/EllisLab/ExpressionEngine/Controller/Channels/Layouts.php at line 300 add

    $channel_layout->synchronize();

ExpressionEngine News

#eecms, #events, #releases