Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Advanced Search


  • Posts

  • Joined

  • Last visited

Everything posted by LKW

  1. I've found that a crude workaround is to copy and paste the text you want to edit into a rich text editor outside of SS, edit it there, then cut and paste the formatted text back into the text block you were editing in SS.
  2. Oh yeah, forgot to mention that -- my formatting menus are disappearing, too. Not all the time, just seemingly randomly. Like, if I wait a few minutes, they work again. Could this be some kind of extreme latency problem? And are we the only ones seeing this? Maybe there is just one corrupted server on the SS farm? (Or AWS, or whatever they use.) And yes, I've emailed a followup to the support case I opened, but still haven't heard back. I should've spent my pandemic year learning Wordpress instead of molecular gastronomy.
  3. Another problem I'm seeing is that when you're editing a page, clicking on a hyperlink to modify it can actually take you to the linked page and you lose your edits! This seems to happen when there are multiple hyperlinks and you've just inspected one hyperlink (i.e. the link editor box pops up and you close it) and then you click on another to inspect it too. Clicking the second one navigates you away from the page you're editing. So far I'm just fiddling around on a test page, because at this point I'm afraid to edit any our production pages. I emailed Cust Svc yesterday but have not yet heard back. (The funny thing is that I stumbled onto this while trying to figure out how to delete an apparently orphaned product page so I could reuse its URL. More on that later...)
  4. I am having the link editor problem today in both Chrome and Firefox on Mac OS. I thought I fixed it on Chrome by clearing the cache but it has returned after a couple of successful uses. This is with 7.0. The behavior I see is that clicking on text gives you the text formatting menu, but clicking on the link widget causes the entire menu to disappear and no link editor dialog appears. I can continue to modify the text but without any formatting.
  5. Does anyone know of a programmatic way to remove entries from the "Files" list in the Link Editor? (7.0/Montauk) Sure, you can manually select "Delete" on each file, but that is so clumsy when you have a lot of junk files. And why would you have a lot of junk files? Because every time you import a product .csv file, apparently that filename gets added to the list of files in the Link Editor. Then if you later try to use the Link Editor to link to a static file you actually care about, you have to scroll thru all the .csv files you have ever imported. So, before I get started on setting up our new store (with products whose prices will be updated daily via .csv imports) I am wondering if there is a way to deal with Link Editor file clutter. Anyone have any suggestions? (Am I the only one who's ever had this problem? I am mystified as to why the product import .csv clutter up the list. You can't reuse them, you can't download them, and you can't tell how big they are or when they were uploaded. In fact, even failed import attempts add filenames to the Link Editor list. I contacted Customer Care about this a year ago and they said they'd look into it, but I just did a little test and found that the problem still persists.)
  6. I guess there's been no improvement from Squarespace on this? We've been living with this problem for years. What we do is make sure that each of our event descriptions and excerpts leads with text giving the actual date and time, e.g., Saturday Oct 30 and Saturday Nov 6, 2021, 10 am to 4 pm. I believe that over time we have actually trained our clientele to recognize and subliminally adjust for Squarespace event date anomalies. 😁 A worse problem, as I see it, is that a disjointed event date span, like the one above, makes a mess when displayed in the calendar format, because it shows the event on every single day in the intervening week. We finally just gave up trying to display a calendar of events on our Squarespace site.
  7. Same thing happens to me, and this appears to be new behavior. The fix that worked for me is to go to Site Styles for the Events page in question, and uncheck "Show Location". This will keep the location address from showing on the Events page, at least. But it does not seem to keep Squarespace from populating new event locations from your business address. Which means that the event detail page will show an address and a "(map)" link. I can see how that would be very misleading for virtual events. But we have the opposite problem; all our events are at our business address, and having every event on the Events page listed with the same address and map link just looks silly.
  8. I reported this Customer Care and they say it's expected behavior: "Product Blocks pull content from Store Pages to display on other pages. As long as the page where the Product Block is located is not password protected, customers will be able to purchase those items through the Product Block... To hide products in a Product Block from the public, we recommend password protecting the page where the Product Block has been added..." Their reply made no mention of any recent change in this behavior. Although, as I say, I could have sworn it worked differently a year ago. The funny thing is that the new behavior solves a problem we've had for a long time, which is that the Product/Store Page is completely inflexible, and other than changing its title, you can't add explanatory text or any additional content to it. So we display our products in Product Blocks and Summary Blocks on other pages with more context for our visitors. But we were unable to prevent our visitors from viewing the raw Product Page because, if we password-protected it, its products would disappear from Summary Blocks and Product Blocks. Now it looks like we can put a password on a Product Page without affecting product visibility elsewhere, and I'm happy with that. I just wish I could get assurance that yes this is new behavior and it's going to stay this way.
  9. I could have sworn that when you put a password on a store (fka product) page, the products on that page would not appear in summary blocks or product blocks in other pages. But today I see that products do appear when referenced in other pages even if they live on password-protected store pages. Am I going crazy or did that behavior change in the last year? (Forgive me if this question is redundant, but I was not able to find mention of this in a forum search.) We're on Montauk/7.0.
  10. Oh man, your site makes my mouth water! So, I think your site is 7.1, yes? I am 7.1-curious: How many products can you have in a 7.1 summary block? In 7.0, the limit is 30. We struggled setting up our recent campaign because, like you, we needed to have a title and introductory text on our landing page with all our product thumbnails. Therefore the default product/store page would not work. So we set up a page with summary blocks to display our thumbnails. With 145 products, we had to categorize our products with five artificial categories and put up five summary blocks on our landing page. Talk about a lot of work! And there is no simple way to configure all five blocks to have the same properties. E.g., the morning we went live I had to edit 5 different summary blocks to unhide prices.
  11. Did you open a product detail page before going to Site Styles? Here's what I see.
  12. On re-reading my notes I see there's also a "Show Product Item Nav" toggle in Site Styles, and that is what will hide the "Back" link on the product detail page. In 7.0, at any rate.
  13. Look on this site for "hide add to cart button" -- there are many CSS examples.
  14. I don't know anything about 7.1, but in 7.0 the hack that I use to display common info in our product details is to create a dummy product that can be embedded in the "Additional Info" field of other products. Here's a proof of concept (password 'tada'). Everything below the 'Add to Cart' button for these products is text from this product's short description field, which can contain links and formatting. But not blocks, unfortunately. However, we've found it to be good enough for things like shipping and return info. (Examples here.) And although it's limited, you don't have to write Javascript to produce it. In 7.0 there's a Site Styles setting to hide category navigation on product detail pages. That keeps the product detail page from showing any links that go to the terrible product collection page. Perhaps there is something similar in 7.1?
  15. @Zawn: You can use image metadata to pre-fill the title and description/caption that will be displayed in the lightbox, and the description can contain HTML links. There's an option in Settings that tells Squarespace to import metadata as you upload images, documented here. Here's an example of imported HTML links in a lightbox: https://www.whitprint.com/catalog/emerald-print-exchange-2020 (Note that not all of these images have links in the captions.) I pre-filled the HTML for these 145 images, then uploaded them en masse. (Actually, in batches, because I've had trouble with sqs choking on mass image uploads.) You'll need to use your photo mgmt app (e.g., Photos on Mac) to get HTML text into the image metadata. Or you can use one of the many tools that can wrangle EXIF/IPTC data. (I used 'exiftool' -- very nice for us old-timers who know our way around a Unix command line -- and it has a CSV input/output option, which meant I could set up my data in a spreadsheet .)
  16. I was wondering how to suppress prices for products with certain tags. Now that I know a little more about Squarespace I see that it is do-able, but probably varies with each page, template, and version. E.g., on a product collection page in Montauk/7.0, you could use something like: <style> .tag-hidden-price .product-price .sqs-money-native { display:none } </style> where 'hidden-price' is a tag you've applied to various products.
  17. Is that the same as the "Wall" layout in the Montauk summary block? That uses a fixed width for images. Instead of indicating the relative sizes of tall and wide images, it makes the tall images look much bigger than the wide images, which is misleading when the products are the images themselves.
  18. Well, for example, take a look at the product collection page here: whitprint.com/emprex-2020-inv On mobile, there's so much whitespace beneath each wide image that its title appears to label the image below it. So instead of the product collection page, I use summary blocks to display product thumbnails, and that looks a lot better on mobile. However, summary blocks crop the images, which is not what you want when displaying art. But it seems the better of the two choices.
  19. @mgrillpainting I so agree that Squarespace is not a great fit for selling art! We've run into the product image aspect ratio problem, and although I now have a solution that works for our template, it took what seemed an uncalled-for amount of coding and testing. (And because I don't have a way to test it beyond my own environment, I am loathe to actually implement it. And it works only on the product detail page, not on any of the other pages where images are poorly positioned or cropped.) I'm not sure my script can be modified for your template/version, but you'll find it here if you want to take a look. As I've said before on this forum, I have a list of issues as long as my leg, but we stick with Squarespace because the commerce side is quite seamless and requires very little attention from anyone inside our very small non-profit. I wish I could say the same for the website side.
  20. After relearning far more CSS, Javascript, and jQuery than I ever intended, I was able to craft a fairly general solution: // Fix whitespace around singleton image on a product detail page. // const imgWhitespaceFixer = function() { // This code assumes that (a) the products in this collection have only // one image apiece (which is true for our products), and (b) the detail // page has only one IMG.loaded element (which seems to be the case for // our template). let w = $( 'img.loaded' ).css( 'width' ); let h = $( 'img.loaded' ).css( 'height' ); // Just in case we are observing in between setting a pair of dimensions: if ( ! ( w && h ) ) return; // This makes horizontal image align with title, and vertical image align // with left margin of 'additional info' text (i.e. div#productDetails): $( 'img.loaded' ).css( 'top', '0px' ).css( 'left', '0px' ); // This seems to prevent accidental cropping: $( '#productSlideshow' ).css( 'height', h ).css( 'width', w ); // This prevents div#productDetails text from dangling too far below image: $( '#productGallery' ).css( 'height', h ).css( 'width', w ); } // Sqs doesn't load images until after document ready (and it might // even load them more than once, who knows). When it loads images it // updates IMG attributes, and this observer detects when that happens. // const prodPageImgObserverJuju = function() { // This function runs when page changes (mutations) are observed // const observerCallback = function(mutationsList, observer) { // How to tell whether this is the product collection page or the product // detail page? This function could be executing for either, but our fix // is only for the detail page. Just banging around in the dark, I found // that #productList appears to test true with .hasClass(clear) only on // the collection page. On the detail page, #productList is in the DOM, // strangely, but it fails this test. // if ( $( '#productList' ).hasClass( 'clear' ) ) { observer.disconnect(); return; } // Filter for changes to IMG.loaded // for (const mutation of mutationsList) { if (mutation.target.nodeName == 'IMG' && mutation.attributeName == 'class' && mutation.target.className == 'loaded' ) { imgWhitespaceFixer(); } } }; const observer = new MutationObserver( observerCallback ); // Configure it to look for attribute changes (as opposed to child adds and // deletes), and to traverse subtree (presumably meaning all descendants // of document.body.) // const config = { attributes: true, childList: false, subtree: true }; // Launch the observer on this page // observer.observe( document.body, config ); } jQuery(document).ready(function($) { // ...other code here prodPageImgObserverJuju(); // ...other code here }); This works for 7.0/Montauk. It's is meant to go inside the <script></script> tag in the header code injection of a product page whose products all have only one image apiece. (The copious comments are for my own benefit; in a week I'm not going to remember any of this. 😄) It seems to do the right things with both wide and tall images, and on mobile as well as desktop. Hopefully there's enough here that anyone else who needs a similar fix can use it as a jumping-off point. It was certainly a learning experience for me. Attached are 'before' and 'after' screenshots.
  21. Well, since no one has responded to this question, I'll just say what I've observed so far: When you change a page's URL explicitly, links to it are not automatically updated. E.g., If you change the URL of /alpha/beta to /alpha/gamma, page links to /alpha/beta are not updated. I've found TWO EXCEPTIONS to this behavior, and they involve products. When you change a product page's URL explicity, links to its products are automatically updated. E.g., say /alpha/beta is a product page, and /alpha/beta/hat is a product detail page. On another page, you used the Link Editor to create a page link to /alpha/beta/hat. Now, if you change the URL of the /alpha/beta page to /alpha/gamma, your page link to /alpha/beta/hat will automatically change to /alpha/gamma/hat. Also, any summary blocks that referenced the /alpha/beta page will be updated automatically to reference the /alpha/gamma page. And when you move a product from one product page to another, thus implicitly changing the product detail page's URL, links to the product detail page are updated. E.g., say you move the 'hat' product from /alpha/beta to /alpha/gamma. This automatically updates page links and product blocks to point to the new product URL. That's as best as I can determine, at any rate.
  22. Sigh... Customizing end-user-visible text should be Thing One of a point-and-click web dev platform like SS. Anyway, I got what I needed out of this thread, thanks to your help. Our fundraiser went live today and you can see it here if you're curious: whitprint.com/rafwelcome (This project left me with a list of SS bugs and gotchas as long as my leg! One the one hand, I learned so much that setup will be a breeze if we do this again next year. On the other hand, I am wondering if it's time for us to shop for another platform. Ugh.)
  23. Thanks, @creedon. (But good heavens, I had to make my browser window 20% wider than my screen size to reveal that button!) Anyway, here's my hack: <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script> $( ( ) => { /* change out of stock alert message */ if ( ! $( '#productWrapper' ).length ) return; if ( ! 'MutationObserver' in window ) return; const observer = new MutationObserver ( function ( mutations ) { mutations.forEach ( function ( mutation ) { if ( ! mutation.addedNodes.length ) return; let $e = $( mutation.addedNodes [ 0 ] ); if ( $e.hasClass ( 'sqs-widgets-confirmation' ) ) { $( '.title', $e ).text ( 'Limited Enrollment' ); $( '.message', $e ).text ( 'Sorry, no space left in this workshop.' ); } } ); } ); // starts listening for changes in body observer.observe ( document.body, { childList: true } ); } ); </script> The code is injected on each product page with text appropriate to that product collection. I'm very happy with the way it looks. For example: It is not a great solution, though, because it works only with the Add to Cart buttons that appear on the product page or on the product detail page. (Which is all we need right now, but it would be nice to nip that button in the bud everywhere it appears.) So I'm wondering if I can use product categories to filter products in other contexts. So I applied categories 'workshop' and 'artwork' to my test products, and displayed all the products on whitprint.com/testcombo (pw 'tada'). On that page, none of the Add to Cart buttons show my desired text. Is there a way your code could be adapted for product categories instead of SKUs to work on that page? Alternatively, what about the "data-collection-id" thingy I see here and there in the page source? Seems like it maps to product pages -- can it be used for what I want? Thanks in advance for your guidance.
  24. Thanks, @creedon. I didn't use your exact code, because of the hardcoded SKUs, but I was able to distill your nicely annotated code into a generalized per-product-page solution. If someone would kindly tell me how to insert a formatted code snippet on this forum I will gladly post it here. 🤔 (On Stackexchange you just click '{}' to insert code examples. What the heck is the equivalent on this forum? It's probably staring me right in the face...)
  25. @creedon Kindly take a look at: https://www.whitprint.com/testw https://www.whitprint.com/testa Password is "tada". When a shopper clicks "Add to Cart" on a sold-out product on the "testw" page, the error message should say "Sorry, no space left in this workshop." But for products on the "testa" page, the message should say "Sorry, this piece has been sold." Thanks! ps: I do know how to customize the "Sold Out" badge for a single product page, but for this test I left that customization out. "Sold" is our site-wide default text.
  • Create New...