You shouldn’t have lost content. That’s weird. The content should’ve remained in the database to be used when the blocks DID work.
I guess you shouldn’t update to the version I’ve just released, since this included different changes. Or you should comment lines 101 and 102 again.
I’ll look into it when I have some time 🙂
Thanks.. appreciate ur help…
I was having similar issues where I had four separate content blocks on a custom page template. When I set the content blocks up they were correct. But I needed to change an image and it would not save, update or once updated show three out of the four content blocks.
Having read this post, I commented out the function in the functions.template-tags page that refreshes the blocks. I believe it is something to do with this function which is affecting it. I commented out the following code and it now functions as expected.
/**
* Reset which blocks are used when visiting the page
*/
//function mcb_refresh_blocks() {
// global $post;
// if(isset($post)) delete_post_meta($post->ID,'mcb-blocks');
//}
//add_action('wp_head','mcb_refresh_blocks');
Hmm ok, that might be useful. I’m very busy at the moment, but when I have time I’ll definitely look into this. Hope I can recreate it by that time.
It doesn’t bring up any errors when error reporting is set to true in wp-config. Sorry I don’t know enough about PHP to offer a solution or help resolve it.
The way I have this setup so maybe you can recreate it to test is as follows.
I have a custom page template called front-page in this page is four columned areas for your multiple content blocks called:
right-main
left
center
right
I added in the get_block(‘name of block’); call into the theme template.
Now in the page editing area when it is first loaded up all four content blocks show up under the text area in order right-main, left, center and right.
I go to edit for this example ‘center’ block, make some tweaks and hit UPDATE. What happens is once the page reloads and updates it then only shows the first content block in the list, in this case right-main. The others disappear.
If I then go out to the pages list and click back into the front-page all the blocks return but the edits made have reverted back to before the update.
Once I commented out this line all was working well and true.
I hope this helps.
Dan
Thanks for you elaborate explanation. I’ll look into it (hopefully soon!)
I also had a problem with content disappearing. I’ve commented out the refresh lines in functions.template-tags.php, which hopefully will fix it. Where in the database is the content stored? The content was completely wiped out … not present anywhere in the database.
I was able to rebuild the content from a browser cached version but that was just a lucky find.
Hmm, I wouldn’t want anybody to lose content. It’s stored in the postmeta for each block.
I wasn’t able to reproduce this bug and unfortunately I don’t really have a lot of time right now for plugin maintenance. But I will look into it, hopefully some time soon.
Rene
(@renehamburger)
Hi there,
I’ve just started using the plugin and also ended up with the error message “Your server doesn’t allow remote HTTP requests using wp_remote_get. You will have to visit this page manually to update which blocks are used on each page.” Neither visiting the page (after saving) nor disabling all security plugins solved this problem. (We’re using GoDaddy Linux web hosting for this website.)
I finally commented out what is now line 99 in assets/inc/functions.template-tags.php:
i.e. if(isset($post)) delete_post_meta($post->ID,'mcb-blocks');. This brought up the the field both in the backend and on the page but the error message is still there.
Is this still the best way forward?
Hmm that’s strange. It’s too bad that I cannot yet reproduce this error, since I’m just guessing what’s going on.
Can you try commenting line 101 and 102 in assets/inc/class.MCB.php?
Rene
(@renehamburger)
Yes, thanks, that removes the error message. But the front-end page still needs to be opened to add the block on the back-end. (And it’s not removed on the back-end after switching to a template without multi-content-blocks.)
That’s right. The actual problem is not solved, the blocks just don’t try to refresh themselves in the back-end.
This means you will have to visit the front-end to refresh the content blocks. If you want to solve this problems, you will have allow remote HTTP requests to your server (from your server). The plugin uses wp_remote_get to visit the page (http://codex.ww.wp.xz.cn/Function_Reference/wp_remote_get).
I cannot know what the exact problem is in your current setup. Do the normal WordPress cronjobs work?