1,576

(3 replies, posted in Juicebox-Pro Support)

Thank you for marking this thread as solved.
I hope that you've been able to resolve your problem.

1,577

(3 replies, posted in Juicebox-Pro Support)

I think your problem is due to your site having 3 levels in its navigation menu (gallery index pages grouped under other gallery index pages). Showkase natively supports only 2 levels in its navigation menu and it is not possible to group a gallery index page under another gallery index page in the interface. A gallery index page can be only a top-level menu item.

Normally, when viewing a top-level page, the navigation menu displays all top-level links and also links to pages grouped under the current page. When you select a second-level page, the navigation menu remains the same.
Your problem seems to occur when you select a third-level page (a gallery grouped under a gallery index page grouped under another gallery index page). Everything in the navigation menu displays and works as expected until a third-level page is selected when the navigation menu displays only top-level links.
I'm not sure how you achieved a third level but Showkase was not designed to support or handle this. (It sounds like you would need a third row of links in the navigation menu and this is not something that Showkase has ever been able to do.)

As far as I am aware, there were no changes between v1.6.1 and v1.7.0 with regard to the navigation menu.
Perhaps you had made some manual modifications to the v1.6.1 source files (or maybe to your theme's 'custom.css' or 'custom.js' files) which were overwritten when you upgraded to v1.7.0.

If you are sure that v1.6.1 displayed the links in a way that v1.7.0 does not, then I would not ordinarily recommend using an older version of any software but maybe reverting to v1.6.1 might be the easiest remedy for your problem (as long as your site does not suffer from any of the bugs fixed in v1.7.0).

Incidentally, we have a dedicated Showkase forum here.

1,578

(3 replies, posted in Juicebox-Pro Support)

You're welcome.
Hopefully creating and merging SEO code for several galleries shouldn't be too big of a task.
If you still have local copies of your galleries on your computer, you can open the galleries in JuicbeoxBuilder-Pro to have the application generate the SEO code for you (one less thing for you to do manually).
Knowing the baseUrl that you will use for each gallery, you can then change the <img> tag 'src' attributes in the SEO code so that the relative paths from the embedding page to the images in their respective gallery folders are correct. (For each gallery, this can be done with just a single global search and replace action in a text editor such as Notepad++.)
Then all that is left to do is merge the SEO code for all galleries and copy and paste it inside the 'juicebox-container' <div>.

1,579

(3 replies, posted in Juicebox-Pro Support)

You're welcome!
I hope you're able to move your gallery's Button Bar to where you'd like it to be. (I thing using the CSS classes I suggested with negative margins and adding '!important' is perhaps the best solution. It seems to work well in my own test gallery so I hope it works for you, too.)

1,580

(3 replies, posted in Juicebox-Pro Support)

I'd really recommend that you position the Button Bar using the available Button Bar configuration options (buttonBarPosition and buttonBarHAlign).
If you try to reposition the Button Bar manually using CSS, Juicebox will not know of this modification and will expect the Button Bar to be in a different position. This might have unforeseen knock-on effects, for example if the browser window is narrowed and the Button Bar needs to wrap onto multiple lines. (This might not apply to your own gallery with only one button on the Button Bar but it could be a concern for anyone else reading this thread with a larger Button Bar.)

Having said that, you are certainly free to try repositioning the Button Bar using CSS (but please be aware that such modifications are not officially supported).
You should be able to find out which classes and/or ids you might need to apply your custom CSS rules to (and what rules are currently being applied to specific elements) using your browser's developer tools (F12).

Try something like the following:

.jb-classifier-link-wrapper.jb-classifier-detail-area.jb-classifier-layer {
    margin-top: -10px !important;
    margin-right: -24px !important;
}

1,581

(3 replies, posted in Juicebox-Pro Support)

For reference, the Search Engine Optimization support section can be found here.

When you create a gallery with JuiceboxBuilder-Pro, select the 'Add SEO Content' checkbox in the 'Customize -> Sharing' section and SEO code will be generated. The SEO code will be included in the gallery's 'index.html' file (which can be used to view the gallery on a page of its own) but it will also be presented in the 'Get Embed Code' window on JuiceboxBuilder-Pro's 'Publish' tab. As long as you follow the regular embedding instructions here you can just copy and paste the entire embedding code into your web page and all should be fine.

However, things are complicated slightly with your own setup. Not only do you use a baseUrl (which would mean that you would need to modify the paths to the images in the SEO code as JuiceboxBuilder-Pro has no knowledge of your custom gallery structure when generating the SEO code) but you also switch between multiple galleries on the same page. You would probably need to merge the SEO code from your multiple galleries (making sure that the paths to the images are correct for each gallery) and manually insert it into your web page (inside the 'juicebox-container' <div> within <noscript> ... </noscript> tags, which is how JuiceboxBuilder-Pro presents the SEO code).

Try creating a sample gallery with JuiceboxBuilder-Pro (with the 'Add SEO Content' checkbox selected) and check the 'Get Embed Code' window on the 'Publish' tab to see the format that JuiceboxBuilder-Pro uses for the SEO code if you plan to implement it manually for your own web page.

Placing the SEO code (<img> tags) inside <noscript> ... </noscript> tags is not hiding the images (so Google should not penalize your site for this). It is simply telling the browser that this is what should be displayed if JavaScript is disabled. Not only is this a method of adding the SEO code to your web page, it also ensures that your gallery images will still be seen even if JavaScript is disabled in the browser.

1,582

(3 replies, posted in Juicebox-Pro Support)

You're welcome!

1,583

(3 replies, posted in Juicebox-Pro Support)

You're welcome!

1,584

(1 replies, posted in Juicebox-Pro Support)

(1) Upload all your images (the gallery images and the image you'd like to use as the representing image on the gallery index page) on the gallery page's 'Upload' tab.
(2) On the 'Images' tab, select the image you'd like to use on the gallery index page (via the corresponding radio button in the 'Index' column).
(3) On the ''Customize' tab, scroll down to the 'Override Site Options' section and deselect the 'Show index image' checkbox.
(4) Now click 'Save' and 'Publish'.

1,585

(3 replies, posted in Juicebox-Pro Support)

Drag and drop the gallery page name onto the gallery index page name.
For example, click and hold the text 'Land', drag it onto the text 'Galleries' (make sure the small arrow is directly to the left of the text 'Galleries', not above or below it) and release the mouse click. (Then click 'Save' and 'Publish'.)

1,586

(3 replies, posted in Juicebox-Pro Support)

From your screenshot, it looks like you are referring to the Kosel theme in Showkase.

You can hide individual pages from the navigation menu by dragging and dropping the page name onto 'Hidden pages' on the 'Pages' tab (and then clicking 'Save' and 'Publish'). The page's URL will remain the same but there will no longer be an entry for it in the navigation menu.

There is no way to disable the navigation menu completely from within the Showkase interface (other than dragging and dropping all page named onto 'Hidden pages') but you could hide the navigation menu using CSS if you like.
Try adding something like the following to your '/showkase/_themes/kosel/css/custom.css' file:

#nav {
    display: none;
}

If you want to hide the navigation menu only on a certain page, then you can check the page's id (from the 'class' attribute in the page's <body> tag) and use something like the following in your '/showkase/_themes/kosel/css/custom.css' file:

.page-2 #nav {
    display: none;
}

More information about using custom CSS within Showkase can be found in the Adding Custom Styles and Fonts support section.

No problem! I'm glad my suggestion worked. Thanks for letting me know.

I'm glad you've been able to find a suitable workaround. Thank you for letting me know.
With regard to you Button Bar issue, this looks like it might be caused by a known bug where the Button Bar does not always wrap correctly when there is insufficient space for all the buttons. The developers are aware of this issue and it should hopefully be fixed in the next version. In the meantime, it might help to change the size of the Button Bar icons via buttonBarIconSize (in JuiceboxBuilder-Pro's 'Customize -> Button Bar' section). The default value is 20 so you could try using a slightly smaller or larger value. Hopefully this will help.

1,589

(3 replies, posted in Juicebox-Lite Support)

I've glad that you've been able to resolve your problem.
Thank you very much for letting me know.

Paths in WordPress pages are often absolute but they are usually generated dynamically when the page is displayed.
As you are aware, any hard-coded absolute paths will certainly cause problems if a WordPress site is moved.

I'm pretty sure this is a Cross-Origin issue. I've been able to replicate the problem myself in a test scenario but, unfortunately, I've been unable to find a good solution.

Normally, your gallery is hosted on gallery.charleychau.com but is displayed on charleychau.com.
However, when the gallery is expanded from the Splash Page, it is displayed via the 'full.html' page within the 'jbcore' folder on gallery.charleychau.com (swapping the domain on which the gallery is being displayed). To complicate matters, Juicebox passes configuration options to the 'full.html' page via a session cookie.

I've tried adding the following line to the .htaccess in my test scenario file to add cookie support to the CORS solution.

Header set Access-Control-Allow-Credentials true

... and I've tried adding the full .htaccess file:

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Credentials true

... to both domains (in theory to allow access in both directions) but it does not work.

The only thing I've been able to think of would be to set expandInNewPage="FALSE" to prevent the gallery from being displayed via the 'full.html' page when it is expanded from the Splash Page. The gallery will then be expanded on top of the embedding page (still on the charleychau.com domain) which may cause a scaling problem on iOS devices. (Expanding the gallery on a page of its own is designed to avoid this potential scaling issue.) It's certainly worth a try, though.
Alternatively, you could keep expandInNewPage="AUTO" and lock the viewport of your gallery's web page.
Please see the Expand Gallery Behavior support section for details.

I hope this is a suitable workaround for your problem (as it seems to work well in my test scenario).

1,591

(3 replies, posted in Juicebox-Lite Support)

It's a Wordpress site but I can find no plugin that looks like Juicebox.

The Juicebox plugin for WordPress is called WP-Juicebox and, if installed, it will be listed on the 'Plugins' page in the WordPress admin section.

There is a Portfolio section for the theme so perhaps the juicebox is somehow built into the theme?

As far as I am aware, there are no official themes which contain Juicebox so if Juicebox is somehow built into a theme, someone has been very creative!

This leads me to think perhaps there is a hard-coded "www" somewhere in a setup file. However I can find no setup file. I see talk on this forum of an "embed" file but at this point I have no idea where to find that file.

If WP-Juicebox is not installed, then it is likely that individual Juicebox galleries have been embedded manually into pages or posts.
Each gallery consists of a 'jbcore' folder (containing the Juicebox core files), a 'config.xml' file (containing the gallery's image data and configuration options) and 'images' and 'thumbs' folders. This should give you something to search for on your server.
In addition to the files required for a Juicebox gallery, there will be some embedding code (in the body of the page or post containing the gallery) which will look something like this:

<!--START JUICEBOX EMBED-->
<script src="my_gallery_folder/jbcore/juicebox.js"></script>
<script>
    new juicebox({
        baseUrl: 'my_gallery_folder/',
        configUrl: 'config.xml',
        containerId: 'juicebox-container',
        galleryWidth: '800',
        galleryHeight: '600',
        backgroundColor: '#222222'
    });
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->

If you find a Juicebox gallery that does not work, then it is certainly possible that the paths in the embedding code are pointing to the wrong places.
For each web page containing a gallery (or galleries), there will always be a path pointing towards the 'juicebox.js' file (inside the 'jbcore' folder).
Depending on the structure of the gallery, there may (or may not) be additional paths in the embedding code as follows:
(1) A configUrl path pointing towards a specific configuration file.
(2) A baseUrl path, pointing towards a specific gallery folder (please see here for details).

If there is any way for you to let me see the site (or at least a dysfunctional Juicebox gallery page), I should hopefully be able to help you further. Thank you.

1,592

(4 replies, posted in Juicebox-Pro Support)

Thank you for providing the screenshot.

Regarding point 3 that you made - we are using an Adobe script on the site that applies a specific font family on the site. Is this an example of a global CSS rule?

It could be, depending on how the CSS rule is applied. If it applied to only certain ids or classes, then things should be OK but if it is applied to all elements on the web page (being applied to * or the html or body tags), then you might run into problems with the gallery inheriting the font, although I can't actually override the Juicebox font myself by doing something similar (see below).

Also, we are testing the gallery on a staging server and not one that is public. Could this be affecting the gallery?

This is likely to be a factor only if there is a problem with the font MIME types on your staging server.

I am not sure if these are part of the font files that are uploaded with the juicebox module or not.

The icons in the screenshot are not part of the Juicebox font and I do not know where they are coming from. I've never seen the Juicebox font get hijacked like this before.
I can't even override the font myself by adding CSS code such as the following to a gallery's web page:

*, html, body, #juicebox-container {
    font-family: Courier !important;
}

The icons still display fine in my own test gallery, even with the code above in place.

In order to troubleshoot the problem further, please try the following.
(1) Create a sample gallery with JuiceboxBuilder-Pro (the desktop application which comes with Juicebox-Pro).
(2) Upload the complete gallery folder to your web server.
(3) Open the gallery's 'index.html' file (inside the gallery folder) to view the gallery on a web page of its own.

If the icons all display fine when you view the test gallery on its own 'index.html' page, then there is no problem with your server and the problem lies somewhere within the code on your other gallery's web page.
If the icons do not display fine in the test gallery, then there is likely to be a problem with the font MIME types on your server.

This should at least point you in the right direction and be one step closer to reaching a solution.

You could also use your browser's developer tools (F12) to try to figure out what custom CSS code on your web page might be overriding the gallery's own font.

1,593

(4 replies, posted in Juicebox-Pro Support)

The Splash Page was designed to be a placeholder for the gallery in Small Screen Mode (essentially an image link with some information) where the gallery may be too small to be useable (on small screen devices) if it is embedded into a web page. When the Splash Page is clicked (or tapped), the gallery is expanded to give the images as much room to be displayed as possible.

You can still use the Splash Page in Large Screen Mode if you like (by setting showSplashPage="ALWAYS") but the Splash Page's functionality will remain the same.

There is a little more information about the Splash Page in the Screen Modes section of the Gallery Tour.

There is no way to override how the Splash Page functions in a Juicebox gallery and it sounds like you might need to create your own custom version of the Splash Page in your web page and load your gallery in its place when it is clicked.
This would certainly be possible but knowledge of HTML, CSS and JavaScript will likely be required (and it would be much easier to work with the available configuration options to reach a compromise).

1,594

(1 replies, posted in Juicebox-Pro Support)

How I can configure so a unique URL for each image is displayed in the browser URL bar as the album is being viewed?

Set enableDirectLinks="TRUE" (in JuiceboxBuilder-Pro's 'Customize -> General' section) and each image in the gallery will have its own unique URL (the gallery's own URL with a # identifier at the end with a number representing the image's position in the gallery). The URL will change as images are selected in the gallery and each unique URL can be used to go directly to its corresponding image in the gallery. There is a short description of this configuration option in the General section of the Config Options page.

I switched to JB, the gallery is very nice, but nothing shows up in the search engines (while other images from the same site/page that are not in the JB album, do show up in search engines).

Select the 'Add SEO Content' checkbox in JuiceboxBuilder-Pro's 'Sharing' section (to instruct JuicboxBuilder-Pro to generate SEO Content code) and, if you are embedding your gallery into an existing web page (rather than just using the gallery's own 'index.html' file where the SEO Content code will already be present), then be sure to copy all the embedding code on JuiceboxBuilder-Pro's 'Publish' tab.
Please see the Search Engine Optimization support section for further information.

1,595

(9 replies, posted in Juicebox-Pro Support)

You're welcome!
I'm glad you've been able to implement one of my suggestions into your gallery.
Thank you for letting me know.

Juicebox was designed as an image viewer and, as such, does not support videos.
Please see this FAQ:
Will Juicebox load things other than images?

You may need to incorporate your videos either alongside your galleries (rather than within the galleries themselves) or on different web pages.

1,597

(4 replies, posted in Juicebox-Pro Support)

I placed the font files (extracted from the jbcore folder) to the following, which was recommended by Drupal community -

\sites\all\libraries\juicebox\classic\fonts -

That sounds correct. The module's documentation (Step #3 on this web page) states that you should copy the entire contents of the 'jbcore' folder to your /sites/all/libraries/juicebox/ directory. You should not need to find the font files specifically, though: just upload the entire contents of the 'jbcore' folder to your /sites/all/libraries/juicebox/ directory, keeping the 'jbcore' folder structure intact, and the font files should be uploaded (along with all the other resource files that Juicebox needs) to the correct location on your web server.

The problem is likely to be caused by one of the following:

(1) Please double-check that the font files are present in the correct location on your web server. Even if you find that they are where they should be, try re-uploading them in case something happened during the initial upload which has somehow resulted in corrupt files.

(2) A browser setting or extension might be causing the problem. Try viewing your gallery in a different browser (Edge, Firefox, Internet Explorer 11, Opera, Safari) to see if this makes a difference. If the icons appear OK in a different browser, then try temporarily disabling all extensions in your Chrome browser to see if this helps.

(3) Check that there are no global CSS font rules on your web page which might be setting a custom font for all elements which is overriding Juicebox's own icon font.

(4) A further cause of your problem might be incorrect or missing MIME types for the font files on your web server.
If this is the case, then you may have to contact your web host to ask if they can add the font file types (.eot, .svg, .ttf, .woff) to the list of known MIME types (so that browsers know what to do with them).

If you continue to experience difficulties, I'd be happy to help further but I'd really need to see the problem live on your web server (to at least try to determine whether the problem is server-side or client-side) but I notice that your gallery is currently password protected.
I hope that my notes above point you in the right direction but if you need any further assistance and are happy for me to view your gallery, please let me know and I'll send you an email where you can send me your web page's login details.
Thank you.

First of all, I would try to embed the gallery directly into the web page that you want the gallery to appear in.
This should prevent you from having to deal with iframe problems on mobile devices.

Next, if your Shopify page is actually on your own domain (the same domain where your gallery folder has been uploaded to), then there should be no need to use a CORS solution. You should be able to just use the regular embedding code (or the baseUrl embedding code if you have uploaded the entire gallery folder rather than just its contents).

But the gallery does not display: https://www.charleychau.com/pages/test-gallery-2

This is because you've uploaded the .htaccess file to gallery.charleychau.com but the paths in the embedding code point towards www.gallery.charleychau.com (note the different 'www' subdomain). (When I posted the code above, I just copied the path from the 'src' attribute of your iframe.)

Try changing the two paths in your embedding code from www.gallery.charleychau.com to just gallery.charleychau.com.

Alternatively, if you have direct access to the charleychau.com web space, then there is no need to have created a 'gallery' subdirectory (and it is probably just complicating matters).

If you can, upload your complete 'test-gallery' folder to the root directory of your charleychau.com domain and use the following embedding code in your 'test-gallery-2' page.

<!--START JUICEBOX EMBED-->
<script src="/test-gallery/jbcore/juicebox.js"></script>
<script>
  new juicebox({
    baseUrl: "/test-gallery/",
    containerId: "juicebox-container",
    galleryWidth: "100%",
    galleryHeight: "600",
    backgroundColor: "#222222"
  });
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->

This should hopefully be all that is required to allow the gallery to work when users visit either charleychau.com or www.charleychau.com.

1,599

(4 replies, posted in Juicebox-Pro Support)

It sounds like you are using the Splash Page in Large Screen Mode. When the Splash Page is clicked, the gallery expands using the useFullscreenExpand and expandInNewPage values.

Make sure you set screenMode="AUTO" (in JuiceboxBuilder-Pro's 'Customize -> General' section) and showSplashPage="AUTO" ('Customize -> Splash Page') and the Splash Page will not be used when the gallery is displayed in Large Screen Mode. A visitor to your web site will then be able to expand the gallery by clicking the Expand Button on the Button Bar (as long as you set showExpandButton="TRUE" and do not set buttonBarPosition="NONE").

If you continue to experience difficulties, please post back with the URL to your gallery so that I can take a look at its configuration options and hopefully help further.

If the width of your iframe is of concern, then you could try giving your iframe a width of 100% (either via the 'width' attribute or inline CSS):

<iframe src="https://www.gallery.charleychau.com/test-gallery/index.html" width="100%" height="600" frameborder="0" scrolling="no"></iframe>
<iframe src="https://www.gallery.charleychau.com/test-gallery/index.html" height="600" frameborder="0" scrolling="no" style="width: 100%;"></iframe>

It the layout of your gallery page is the problem, then you're seeing the thumbnail page of Small Screen Mode for the following reasons:
(1) Small Screen Mode is used by default on mobile devices.
(2) When a gallery is embedded with dimensions of 100% x 100% on a page of its own (with no other content), then the Splash Page is not used (and the thumbnail page is the first thing you'll see in Small Screen Mode). Your gallery fits this description as it is embedded full-page in 'index.html' on your 'charleychau.com' domain.

As you have uploaded your gallery to a regular web server which you seem to have control over, perhaps the best option would be to embed your gallery using the baseUrl method (using absolute paths) and ensure that you set up a CORS (cross-origin resource sharing) solution. More information about CORS can be found here.
Normally, trying to embed a Juicebox gallery hosted on one domain and whose embedding code is on another will not work due to the Same-Origin Policy.
However, if you add the following code to an '.htaccess' file in the root directory of your 'charleychau.com' domain (where your gallery is hosted):

Header add Access-Control-Allow-Origin "*"

... then you should be able to replace the iframe in your Shopify page with the following code to embed your Juicebox gallery directly into your Shopify page:

<!--START JUICEBOX EMBED-->
<script src="https://www.gallery.charleychau.com/test-gallery/jbcore/juicebox.js"></script>
<script>
  new juicebox({
    baseUrl: "https://www.gallery.charleychau.com/test-gallery/",
    containerId: "juicebox-container",
    galleryWidth: "100%",
    galleryHeight: "600",
    backgroundColor: "#222222"
  });
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->

I hope this works for you.