concretecms-community-store / community_store

An open, free and community developed eCommerce system for Concrete CMS
https://concretecms-community-store.github.io/community_store/
MIT License
105 stars 66 forks source link

Product Preview #34

Closed reachdigitalaus closed 8 years ago

reachdigitalaus commented 8 years ago

Would there be a way to preview the product before publishing? Just be nice to see what it looks like before is added.

Also be nice to have a URL once added, so I don't click back and forth.

Mesuva commented 8 years ago

Perhaps the product page link should be made more prominent when saving a product? Or maybe the product page link shouldn't hidden within a tab? However that doesn't preview changes or new data... hmm..

My only concern with previewing a product is that there's going to be quite a lot of combinations on how a product will actually look when it's on the site, especially if a custom template has been overridden.

It would be great to have some way to get a sense of what a product looks like though, someone might have a good idea for this.

difi68 commented 8 years ago

Well, i have a suggestion on this, but this generates some effort to be done. Suggestion : Add a attribute called 'Preview Mode' for each product and a filter on product list and details blocks to hide those products. Usage : add a seperate tree with product pages and a product list page which are not seen by customers and show (only?) those products with 'Preview Mode'. To my opinion, it could be the easiest way for the moment. I'll check this.

Mesuva commented 8 years ago

@difi68 I think I understand what you are suggesting here. I should mention that it is possible to fetch blocks from pages and output them on a single page, so the need to actually have a whole another tree in the sitemap might be able to be avoided.

I actually do something like this in my Snipcart add-on, each product needs a call back URL where Snipcart can go back to the site and 'preview' the product to ensure that a customer hasn't modified it's attributes. In this case I have a single page that can pull in a product block by block ID and it just renders it out.

In this case it doesn't matter what it looks like as only the HTML is needed, but for what we are talking about it would be tricky to get the styling to match what would be seen on the actual site (as we're in the dashboard).

I think what might be more achievable is some sort of preview window that displays the data of the product in some sort of summarised way, very similar to the way a product is normally presented, but not actually trying to represent the appearance exactly.. it gets tricky when you want to preview data that hasn't been saved yet.

Maybe we could add a 'preview' button to the product page that shows the currently displayed product page via an iframe/lightbox, instead of having to open up the product page in a new tab. Something simple like this would be preferably I think, much less to go wrong!

Mesuva commented 8 years ago

From using the toolbar button here: https://github.com/concrete5-community-store/community_store_toolbar_buttons we've found that there's a very quick way to swap back and forth from the frontend view to the dashboard. The 'back to website' button fortunately remembers what page was last viewed, so you go directly back to the product.