• Man, I would love to get this working before! I used to use the old version picasa and google plus express, but sometime recently (I hadn’t uploaded a photo album for a while, so I’m not entirely sure when) it stopped working! I’m assuming it’s the authorization problem you were all talking about on the old plugin’s support page. However, I’m using only public albums anyway, and I did what others suggested about revoking the authorization to see if it worked. It did work to show me my photos in the photo selecter (the little icon next to the media thing), but every time I choose one and it creates the shortcode, it still says “A valid URL was not provided.”

    So, I was thrilled to read through the support page and see that you’d updated the plugin. I installed it and tried using it (after uninstalling the old picasa and google plus express plugin), but I keep getting the same problem. I like the photile look of this plugin way more than any other and I’d love to keep using it.

    Here is the album I’m trying to link to:

    https://picasaweb.google.com/107120179579373387906/SouthAfricaTanzania2013

    And here is a test page where I tried to put it in (knowing it’s not working currently, I just left it like that):

    http://www.madmissions.com/wordpress/2000/11/test-post/

    Any idea what I can do? I would really love to keep using this plugin, especially seeing that you’re keeping it updated again, but I don’t know what to do. Thanks for any help you can give me!

    P.S. You can also see that the shortcode generator created a bunch of extra junk. It was always like that before (I don’t know why) and I just had to delete the extra junk that shows up and it never previously affected the display of the album. But while I’m asking for help, maybe you have some idea why it does that.

    https://wordpress.org/plugins/photo-express-for-google/

Viewing 9 replies - 1 through 9 (of 9 total)
  • Thread Starter MadagascarAdam

    (@madagascaradam)

    You can see the album on Google Plus here:

    https://plus.google.com/photos/107120179579373387906/albums/6030680875872555153

    Oh, and by the way, I went ahead and followed the process of OAuth too and everything seemed to work fine with that, but it still didn’t fix the problem of “No Valid URL”

    Plugin Author thhake

    (@thhake)

    Thanks for the detailed report. I’ll have a look into it.

    Thread Starter MadagascarAdam

    (@madagascaradam)

    Thanks a lot! I’m looking forward to your next response, because I’m really hoping I can get that plugin working again (well, the new one working for the first time, that is).

    Plugin Author thhake

    (@thhake)

    Can you post the shortcode that has been generated by photo express?

    Thread Starter MadagascarAdam

    (@madagascaradam)

    It generates all of this (including the extra junk):

    [peg-gallery album="http://picasaweb.google.com/data/feed/api/user/107120179579373387906/albumid/6030680875872555153?alt=rss&kind=photo" each="function each(iterator, context) { try { this._each(iterator, context); } catch (e) { if (e != $break) throw e; } return this; }" eachSlice="function eachSlice(number, iterator, context) { var index = -number, slices = [], array = this.toArray(); if (number < 1) return array; while ((index += number) < array.length) slices.push(array.slice(index, index+number)); return slices.collect(iterator, context); }" all="function () { if (arguments.length === 0) { return method.call(this, Prototype.K); } else if (arguments[0] === undefined) { var args = slice.call(arguments, 1); args.unshift(Prototype.K); return method.apply(this, args); } else { return method.apply(this, arguments); } }" any="function () { if (arguments.length === 0) { return method.call(this, Prototype.K); } else if (arguments[0] === undefined) { var args = slice.call(arguments, 1); args.unshift(Prototype.K); return method.apply(this, args); } else { return method.apply(this, arguments); } }" collect="function () { if (arguments.length === 0) { return method.call(this, Prototype.K); } else if (arguments[0] === undefined) { var args = slice.call(arguments, 1); args.unshift(Prototype.K); return method.apply(this, args); } else { return method.apply(this, arguments); } }" detect="function detect(iterator, context) { var result; this.each(function(value, index) { if (iterator.call(context, value, index, this)) { result = value; throw $break; } }, this); return result; }" findAll="function filter() { [native code] }" select="function filter() { [native code] }" grep="function grep(filter, iterator, context) { iterator = iterator || Prototype.K; var results = []; if (Object.isString(filter)) filter = new RegExp(RegExp.escape(filter)); this.each(function(value, index) { if (filter.match(value)) results.push(iterator.call(context, value, index, this)); }, this); return results; }" include="function include(object) { if (Object.isFunction(this.indexOf)) if (this.indexOf(object) != -1) return true; var found = false; this.each(function(value) { if (value == object) { found = true; throw $break; } }); return found; }" member="function include(object) { if (Object.isFunction(this.indexOf)) if (this.indexOf(object) != -1) return true; var found = false; this.each(function(value) { if (value == object) { found = true; throw $break; } }); return found; }" inGroupsOf="function inGroupsOf(number, fillWith) { fillWith = Object.isUndefined(fillWith) ? null : fillWith; return this.eachSlice(number, function(slice) { while(slice.length < number) slice.push(fillWith); return slice; }); }" inject="function inject(memo, iterator) { iterator = iterator || Prototype.K; var context = arguments[2]; return _reduce.call(this, iterator.bind(context), memo); }" invoke="function invoke(method) { var args = $A(arguments).slice(1); return this.map(function(value) { return value[method].apply(value, args); }); }" max="function max(iterator, context) { iterator = iterator || Prototype.K; var result; this.each(function(value, index) { value = iterator.call(context, value, index, this); if (result == null || value >= result) result = value; }, this); return result; }" min="function min(iterator, context) { iterator = iterator || Prototype.K; var result; this.each(function(value, index) { value = iterator.call(context, value, index, this); if (result == null || value < result) result = value; }, this); return result; }" partition="function partition(iterator, context) { iterator = iterator || Prototype.K; var trues = [], falses = []; this.each(function(value, index) { (iterator.call(context, value, index, this) ? trues : falses).push(value); }, this); return [trues, falses]; }" pluck="function pluck(property) { var results = []; this.each(function(value) { results.push(value[property]); }); return results; }" reject="function reject(iterator, context) { var results = []; this.each(function(value, index) { if (!iterator.call(context, value, index, this)) results.push(value); }, this); return results; }" sortBy="function sortBy(iterator, context) { return this.map(function(value, index) { return { value: value, criteria: iterator.call(context, value, index, this) }; }, this).sort(function(left, right) { var a = left.criteria, b = right.criteria; return a < b ? -1 : a > b ? 1 : 0; }).pluck('value'); }" toArray="function clone() { return slice.call(this, 0); }" zip="function zip() { var iterator = Prototype.K, args = $A(arguments); if (Object.isFunction(args.last())) iterator = args.pop(); var collections = [this].concat(args).map($A); return this.map(function(value, index) { return iterator(collections.pluck(index)); }); }" size="function size() { return this.length; }" inspect="function inspect() { return '[' + this.map(Object.inspect).join(', ') + ']'; }" _reverse="function reverse() { [native code] }" _each="function forEach() { [native code] }" clear="function clear() { this.length = 0; return this; }" first="function first() { return this[0]; }" last="function last() { return this[this.length - 1]; }" compact="function compact() { return this.select(function(value) { return value != null; }); }" flatten="function flatten() { return this.inject([], function(array, value) { if (Object.isArray(value)) return array.concat(value.flatten()); array.push(value); return array; }); }" without="function without() { var values = slice.call(arguments, 0); return this.select(function(value) { return !values.include(value); }); }" uniq="function uniq(sorted) { return this.inject([], function(array, value, index) { if (0 == index || (sorted ? array.last() != value : !array.include(value))) array.push(value); return array; }); }" intersect="function intersect(array) { return this.uniq().findAll(function(item) { return array.indexOf(item) !== -1; }); }" clone="function clone() { return slice.call(this, 0); }" ]

    However, from past experience (using Picasa Google Plus Express plugin, before it stopped working)… just this part right here was enough to make it work, and the rest I just manually deleted so it didn’t look like a bunch of junk:

    [peg-gallery album="http://picasaweb.google.com/data/feed/api/user/107120179579373387906/albumid/6030680875872555153?alt=rss&kind=photo" each="function each(iterator, context) { try { this._each(iterator, context); } catch (e) { if (e != $break) throw e; } return this; }" eachSlice="function eachSlice(number, iterator, context) { var index = -number, slices = []

    Let me know what you think of this, and if you need me to post any more info or what to do about it all.

    Thread Starter MadagascarAdam

    (@madagascaradam)

    Hi thhake… so what’s happening with this? Have you figured it out at all?

    Plugin Author thhake

    (@thhake)

    Somehow there is a lot of junk generated in your wordpress blog. You should delete everything but:
    [peg-gallery album=”http://picasaweb.google.com/data/feed/api/user/107120179579373387906/albumid/6030680875872555153?alt=rss&kind=photo”%5D

    This should work for you.

    But somehow the plugin seems to behave strange in your wordpress installation. Can you list the installed plugins and the used theme, so I can take a look at it? Normally you should not have to manually change the shortcode.

    Thread Starter MadagascarAdam

    (@madagascaradam)

    Thanks for the help – that shortcode does work great!

    I’m running WordPress v 4.2.5 with Bold (from Elegant Themes) v 4.5 but with a few modifications a friend helped me make.

    Plugins I have installed and activated are:

    AddThis Sharing Buttons v 5.2.0
    Akismet v 3.1.5
    Another Random Posts Widget v.1.1.11
    Easy Google+ Widget v 0.2.7.2
    Flexo Archives v 2.1.5
    Google Analytics by Yoast v5.4.6
    jQuery Colorbox v4.6.1
    Maintenance Mode v2.0
    Photo Express for Google v 0.3.2
    PicasaView v 1.1.6
    Shashin v 3.4.11
    Simple Google News v 2.1
    Subscribe2 v8.9.1
    Toppa Plugins Libraries for WordPress v 1.3.7 (I think this is needed for Shashin plugin)
    Widget Logic v 0.57
    Wordpress Importer v 0.6.1

    I have no idea which of these plugins might be interfering with the Photo Express for Google shortcode, but if you have a guess, let me know. Also, I think with the shortcode you gave me, I can figure out how to manually create more to get all of my photo albums working well and I really appreciate all your help! But if you know a better fix so I don’t have to manually edit my shortcode, then that’s also great.

    Same problem here, but I have only the “PicasaView Plugin” also installed, the other plugins of MadagascarAdam I don’t run in my wordpress.

    Now I have deactiveted PicasaView and the shortcode was inserted fine.

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘A valid URL was not provided.’ is closed to new replies.