Feb 122019

I had to patch the version of Photonic that I released yesterday. Version 2.20 contains the following changes:

  1. A fix for sites running PHP 5.4 and below. Older versions of PHP were throwing a fatal error due to some additional checks that I had put in. You should be able to safely run Photonic on older PHP versions too.
  2. The video_size parameter was not getting passed to the videos nested within an album if you were displaying a group of albums. That should be working now.
Feb 112019

Version 2.19 of Photonic is now available.

One of the big things I had intended for this release was the drastic simplification of authentication for Google. As most users are aware, getting an API key for Google Photos is a lot more cumbersome than newbies bargain for, and authentication is riddled with challenges. The simplification needed Google to approve me as a “Google Photos Partner”. So I followed the process and was granted provisional approval as a partner, however at a later point Google backtracked saying that WordPress users have to download their photos from Google Photos to their WP installations!! This obviously makes no logical sense and violates 3 other core directives they have set, however Google has not responded to any of my repeated follow-ups in this matter.

So I had to scale down my ambitions, nevertheless this ended up being a release with several small things:

  1. RIP Picasa
    About 3 weeks back Google killed off the last vestiges of Picasa by deprecating its API. It is debatable whether the Google Photos API is a better replacement, but it is all we have now. The Google Photos API, while more streamlined, is a lot harder to authenticate, cannot fetch videos and, ironically for Google, sucks at searching. That being said, Photonic has supported Google Photos since July 2018, and the interactive gallery builder should make it easier to build out your galleries once you have overcome the authentication hurdles.
  2. No More API Key for Regular SmugMug Requests
    Most people who use Photonic for SmugMug use it to display their public or password-protected photos. There is good news for them – they don’t need to create an API key any more! What was intended to be in place for Google ended up happening for SmugMug. There is a catch here: if you want to display your private photos, you will need to authenticate … and for that an API key is required. This is because authentication would require me to bundle my API secret with the key, and Photonic being an Open Source application would expose me to risk.
  3. Block Improvements
    1. Gutenberg block “wide-alignment” and “full-width” options are now available for Photonic galleries. Note that the underlying theme has to support these options for them to work.
    2. The interactive block-builder now shows the equivalent shortcode at the bottom for users who are facing Gutenberg conflicts or want to use a shortcode instead of a block while in the Gutenberg editor.
  4. Native Galleries
    1. Performance tracing was causing native WP galleries to not show up if the style attribute was left out. This should be working fine now.
    2. Another issue that has been fixed is that the main_size option was being ignored for the native galleries in favour of slide_size
  5. Miscellaneous Additions / Changes
    1. A few releases back I had significantly streamlined the JavaScript in Photonic. This release I have taken it a step further and minified the scripts by default. You can turn off minification from Photonic → Settings → Generic Options → Advanced → Script Dev Mode.
    2. I have removed the links to the albums and photos for Google Photos, as they almost always point to private locations that cannot be accessed by blog visitors.
    3. Instagram justified grid, masonry and mosaic layouts can now use the tile_size to avoid serving a full-sized image on the main page.
    4. Videos for Instagram, Flickr and SmugMug now display an overlaid “play” icon when viewed as a part of a gallery.
    5. All galleries now get an “end” element to enable linking to the end of the gallery. E.g. if your gallery has an id photonic-instagram-stream-1, the end element will have an id photonic-instagram-stream-1-container-end.
    6. All translation strings have been “escaped” properly. This wouldn’t have caused an issue earlier given that the only translation out there for Photonic was Spanish, but now you have an additional layer of security.
    7. I have added a photonic_helper utility shortcode. The shortcode is eponymous in the sense that it functions the way the Photonic → Helpers page functions. Since the shortcode doesn’t do much, I have provided the documentation in the Photonic → Getting Started page.
    8. I have added options to let users disable the loading of Photonic’s lightbox scripts but continue using the associated JavaScript calls. This will let users load fewer scripts if they have other plugins handling the same lightboxes that Photonic offers.
    9. I have renamed the translation file to photonic.pot from photonic.po.
  6. Bug Fixes
    The following bugs have been fixed in this round:

    1. For some user configurations the more button was not showing up due to end-of-line character mismatches. This has been addressed in the code.
    2. I fixed an issue where the slideshow layout was not respecting the strip-above option.
    3. Safari users were seeing an “empty space” at the bottom of the masonry layout. With Apple no longer making Safari for any platform other than OSX or iOS this was hard to troubleshoot, but it should be working now.
    4. In some cases if PhotoSwipe was the lightbox and the Random Justified Grid layout was being used, the lightbox would start up with an image different from the one clicked. This has been addressed.
    5. I fixed another bug with PhotoSwipe and StripJS where the looping setting was not being respected.
    6. There were some compatibility issues with PHP 7.3, which I have addressed in this version.
Jan 162019

I have just now released version 2.17 of Photonic. The following are covered in this release:

  1. Flickr private albums were not showing up in the interactive gallery builder – this should be working now
  2. There was an apparent conflict with Divi due to Divi overriding some of WP’s native styles. This was causing the WordPress media uploader to disappear behind Photonic’s interactive gallery builder – I have made a change at my end to help out with this

In other news I am working with Google towards making my API key usable by everyone. If I succeed in this, the most complex aspect of Photonic, i.e. creating a Google API Key will go away, dramatically simplifying Photonic’s back-end process.

Jan 082019

Happy New Year!

On my second day back from my break I have been able to release version 2.17 of Photonic. This version has the following bug fixes:

  1. Zenfolio photosets with “smart” names were not being pulled up correctly. E.g. If you had a photoset that had an id such as “birthday”, that wouldn’t show. This issue has been addressed.
  2. If the option to display titles was set to none, it was still showing a title upon hovering over the thumbnails. This has been changed so that the hover shows nothing, but the lightbox still shows a title.
  3. If you were using a Masonry layout to show a group of albums, the wouldn’t respect the columns attribute. This should be working now.
  4. I put in a couple of minor changes. The first ensures that the hints in the interactive workflow only show up when required. The second ensures that clicking on the link to share on Pinterest opens in a new window.

Hope you enjoy this release. As always, if you are enjoying Photonic and would like to show your appreciation, please feel free to rate it well.

Dec 292018

In the middle of the holidays I managed to quickly code up some improvements to Photonic. This release has the following changes:

  1. I added a “filter” capability in the interactive workflow to generate shortcodes. Particularly in cases where you have way too many albums, the filter will let you rapidly narrow your search results.
  2. I added the ability to specify a thumbnail size on the Instagram shortcode generator.
  3. There was a non-fatal JavaScript error showing up when the “Add / Edit Photonic Gallery” button was clicked. I have taken care to remove the error.

Happy Photoblogging for the New Year!

Dec 212018

Wish you all a Merry Christmas and a Happy New Year!

I will be taking a break for a couple of weeks, traveling internationally. In the meanwhile I have released version 2.14 of Photonic. Like the previous version this one too has minor fixes:

  1. In some scenarios Flickr collections were not showing nested collections. This should be working fine now.
  2. I fixed the following problems in the lightboxes:
    1. Fancybox3 social media icons were not getting linked correctly
    2. Photoswipe images were flickering on mobiles
    3. The option to allow resizing of Lightcase images was not working.
Dec 112018

The last few days have been interesting. Ever since WP 5.0 has released, I have watched, bemusedly, as the ratings for Gutenberg plummeted at unimaginable speeds – before the release of WP 5.0 the plugin had around 960 single-star ratings, but once the new version landed, this number shot up to 1120+. It managed twice as many single-star ratings in 5 days as Photonic has managed total ratings in its lifetime! Obviously people have not taken kindly to a radical new paradigm being shoved down their throats. And while “radical new paradigm” sounds cool, “shoving down their throats” isn’t. Has WP missed the oldest trick in the change management playbook? Only time will tell.

In more mundane news version 2.13 of Photonic is now out:

  1. Bug Fixes
    1. In my last post I had joked about Photonic supporting 13 lightboxes, and how the number 13 might be handled superstitiously by people. As it turns out, the thirteenth addition did break something in Photonic. Fancybox3, PrettyPhoto and StripJS lightboxes were broken for gallery transitions (only one photo would show) because I had to change something fundamentally for Magnific Popup, the thirteenth lightbox.
    2. In the interactive workflow for creating native WP galleries, if a “tile size” was being passed, it was being read as a “thumb size”. This behaviour has been fixed.
  2. New Additions
    1. I have added multiple new options to the lightbox settings screen
    2. I have added an explicit check within the interactive flow to ensure that the calling user has the capability to edit posts
Dec 062018

If you haven’t heard, WP 5.0 featuring Gutenberg is here. If you haven’t had a chance to form your opinion about it, do ensure that you download a copy of the “Classic Editor” plugin to recover from any shock caused by Gutenberg. Displaying behaviour that has been symptomatic of Gutenberg all along, I will move my sites to WP 5.0, but I will keep my wife on 4.9.8 before things stabilize. I will additionally install Classic Editor because the new WP 5.0 text editor is just too crippled, and Gutenberg suffers from an exceptional amount of bloat.

Having said the above, here is Photonic version 2.12 to go with WordPress 5.0.

  1. Magnific Popup Support:
    People are usually concerned when they have 13 of something. Well, for those superstitiously minded folks, here is cause for concern: Photonic has added support for its thirteenth lightbox – Magnific Popup. Unlike PhotoSwipe (which is also from the same developer), Magnific was a lot easier to code for, and was reminiscent of some of the easier coding I have had to do for Photonic.
  2. New Features / Changes:
    This release features a number of small additions / changes:

    1. I have moved the “Lightboxes” options from under Photonic → Settings → Generic Options to its own header, Photonic → Settings → Lightboxes.
    2. Consequently I have added a lot of customization options to the lightboxes, and I will continue adding more over the next few releases.
    3. I have added the capability to launch a lightbox from a slideshow. Currently this works only if your lightbox is LightGallery or Magnific, but I will be expanding this feature.
    4. There is a new option to remove the photo count from Google Album displays, under Photonic → Settings → Google Photos → Hide Photo Count in Album Title Display.
  3. Bug Fixes:
    1. In some cases slideshows were not stretching to the full width. This should be working now.
    2. There was a bug in the interactive flow that was causing a zero-impact JavaScript error while trying to create a new gallery. This has been patched.

Hope you enjoy the new release.

Nov 262018

I have released version 2.11 of Photonic with the following changes:

  1. JavaScript Optimization
    When Photonic started out in September 2011 it only had support for two lightboxes – Colorbox and Fancybox. About a month later I added support for PrettyPhoto, and then for a long period of time I didn’t add anything else. About 4 years later I added support for Swipebox, and I haven’t looked back since then, adding multiple lightboxes and amping up the capabilities of each script. During this process though, the core JavaScript file for the plugin kept getting bigger and bigger. Finally when I added support for PhotoSwipe last month I realized how big the JavaScript had become, and at that point I had to take stock and do some rewriting.

    So, in this version I broke down the core JavaScript and primarily separated each lightbox script into its own file. The net result was a reduction in size of almost 45%!

  2. Bug Fixes
    1. In the previous release I had made a change to have Flickr calls within a collection be executed in parallel. This had a side-effect: the sort order of albums in a collection stopped being respected. This should be fine now.
    2. There was an undetected bug since a long time: Instagram image sizes were being hardcoded, resulting in weird displays. This has been addressed.
    3. The interactive gallery creation flow had a bug that was causing it to crash for PHP versions < 5.5. This too should be fixed now.
  3. A small change I have made is to make the “display link” for Flickr be a little more “specific”. E.g. If a photo is in an album its link in Flickr will be specific to that album instead of the user’s photostream

Hope you enjoy this release. As always, if you are enjoying the use of Photonic please leave me a good word as a plugin review.

Nov 112018

WordPress 5.0 is on the horizon, and nothing in WP history has faced as much backlash as the inclusion of Gutenberg in WP 5.0 core. While the powers that be in the core development team portray Gutenberg as the light at the end of the tunnel, an overwhelming number of developers and users are of the opinion that the light is that of an oncoming freight train rather than one of hope.

I have written about my initial impressions about Gutenberg in the past and I will not endeavour to do so again. I do want to voice my disappointment with the poor quality of support and documentation around Gutenberg, though. On the one hand WP wants everyone to embrace Gutenberg with open arms. And on the other, it has made it extremely difficult for advanced plugins to operate with Gutenberg. Issues and support queries go unanswered for weeks if not months, there are JS errors that pop up in the JS console, and the code doesn’t do what the documentation says it should.

In any case, Gutenberg WP 5.0 is scheduled to be released on 27th November, and if it does, well, that is what this post is about. Version 2.10 of Photonic has just been released and this is what is included:

  1. Gutenberg Support:
    Just in case it wasn’t clear from all that I have written above, this release has Gutenberg support. Do see the documentation before you attempt to use “Convert to blocks” though. Also refer to the dashboard menu item, Photonic → Prepare for Gutenberg.
  2. Shortcode Replacement:
    Gutenberg implementation necessitated that users should be able to change existing Photonic-specific gallery to another shortcode before attempting to “Convert to blocks”. For this purpose there is a shortcode replacement utility bundled under Photonic → Prepare for Gutenberg.
  3. Advanced Settings:
    I have added a new sub-section under Photonic → Settings → Generic Options, called “Advanced”. Under this:

    • I have moved the SSL and performance logging options there.
    • I have added an option to increase the cURL timeout for cases where the connection between a server to the photo provider is slow.
    • I have also added an option to turn on debug tracing. So far this only helps print out the entire response in the interactive workflow.
  4. I have put in some performance optimization to make calls to Flickr collections in parallel. This helps reduce the time taken to fetch a collection.
  5. Bug Fixes:
    The following bugs have been fixed:

    • The default album search by user was failing for SmugMug galleries. This should be alright now.
    • I have also fixed an issue where the layout='strip-above' setting was not working for the slideshow layouts.

Hope you enjoy this release of Photonic!