3

I have a rendering that is on an item, and all its dependencies and templates are published (this has been verified). The rendering itself is inside a dynamic placeholder. It shows up fine in edit mode and in preview, but once I change to normal mode all changes to the item are reflected except the rendering in question. This one rendering does not show up (not even rendered in the markup). No errors are thrown in either the logs or in the browser console.

Any ideas?

  • 2
    I know you don't want to hear it, but in my experience - this always comes down to a publishing error. – Mark Cassidy May 16 '18 at 16:40
  • Yep, looks like publishing error. Put a breakpoint in the rendering controller and check if it's even triggered. – Dawid Rutkowski May 16 '18 at 16:46
  • Any workflow or other publish restrictions on anything (maybe the datasource for the rendering)? – jammykam May 16 '18 at 16:59
  • I hear you on that. Problem is, I cannot reproduce this in a test environment and I cannot remote debug on our production servers. All logs indicate that publishing of the item and all related items was successful. And @DawidRutkowski When I do this locally or remote debugging in test it is being hit and it does render. I know this is definitely an environment issue, I am just not sure what – Chris Bartlett May 16 '18 at 20:15
  • Yes, it is environment related issue, but as you have mentioned everything is working fine if you check from master db. And rendering doesn't load if you check from web db. Please try to check once with normal placeholder instead of dynamic. Also check all possible related items and rendering should be published. It must be something related to publishing only. If the issue is with functionality then it should not work in preview and editor mode. – NSP May 17 '18 at 19:05
2

Here are a few things you can try:

  1. Validate whether the item is published to your target. If you have a single target your default database out of the box will be web. You can open the web database and validate whether that rendering is present on the item. It may be the case that the reference to the rendering is published but not the rendering itself in which case would explain such issue
  2. If the item with the reference to your rendering is not on your target database you have a publishing issue. It could be that you have publishing restrictions on the item? If you do try removing it and see if it helps
  3. One other thing that could be causing it not to be published is your item is not in the final workflow step meaning the item was not published
  4. If you see the rendering in your item on the web database and it all looks good but still don't see it being rendered you may be facing a cache issue. Have you tried clearing the server cache? You can do that through this page http://hostname/sitecore/admin/cache.aspx
| improve this answer | |
  • Thanks for all the responses everyone. I have gone through these and other scenarios. I have changed the db to web and verified that the item is there correctly, I have placed this item in a non-dynamic placeholder, and I have dozens of other components sitting within this same dynamic placeholder. The only difference here that I can discern is that this one uses the clients location (but we have a similar control that does the same and it has no issues). I have also cleared all cache and verified that the control and it's parent are not using caching. – Chris Bartlett May 18 '18 at 2:06
  • This was a dependent publishing issue. Our content team was using an unpublished folder to build out pages. Once they were done, they would move them to the actual structure. The dev coded against the guid of the unpublished folder that held the configuration. Changed the guild to reference the actual published part of the site and it was all working fine. (Palm/Face). – Chris Bartlett May 18 '18 at 18:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.