Is there a way to link to a specific node within my Views Slideshow? I don't want to view the node outside of the slideshow; I just want the slideshow to appear with this node "on top" instead of whatever would normally be there.

For example: in this Galleria demo if the URL has this anchor tag on the end the slideshow will open up to the lotus image instead of the default grass blades:
http://devkick.com/lab/galleria/demo_01.htm#img/lotus.jpg

Thanks!

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

redndahead’s picture

Status: Active » Postponed

Postponing to look at a future version.

Shane Birley’s picture

Subscribing. This, I think, is becoming an important feature. Being able to link to an individual slide via a menu item would be better than awesome - it would be hawsome! Anything I can do to help make this feature happen?

redndahead’s picture

Although it doesn't work with 2.0 yet what you are looking for is http://drupal.org/project/views_slideshow_menu

Shane Birley’s picture

Yes and no. I did look at that module and it looks like it would work but I found it didn't do exactly what I wanted (although, I can't test it since I did update to Views Slideshow 2.0 the other day). I suppose I could check it out again.

Let me test it out in a bit more detail and then I can document what I find.

intyms’s picture

Version: 6.x-2.0-beta2 » 6.x-2.x-dev

It will be a nice feature if we can set a "view field" to be displayed at the end of url instead of "image name (shown in the example with galleria)"

So, if this feature will be implemented, the views slideshow urls will look like:

http://example.com/views-slideshow-page/Taxonomy-term-name
http://example.com/views-slideshow-page/Node-title
http://example.com/views-slideshow-page/Taxonomy-vocabulary/taxonomy-term-name (we will have a possibility to add both vocabulary and term names using Globals:custom text).

In this case the urls can increase the SEO ranking of the page, i think.

benklocek’s picture

Category: feature » support

1+ For anchor link to specific slide.

http://site.com/views-slideshow-page#slide2

EDIT: I found this, http://malsup.com/jquery/cycle/perma.html that gives a simple way to do it with jquery.

intyms’s picture

Category: support » feature

I have an argument for using of a "views field" instead of a simple anchor.

An example of use. Let's say that i have 2 views:

Views No.1 displays the list of terms (as links):
--BMW (http://mysite/views-slideshow#BMV)
--Mercedes (http://mysite/views-slideshow#Mercedes)
--Ford (http://mysite/views-slideshow#Ford)
--Audi (http://mysite/views-slideshow#Audi)

Views No.2 is a Views Slideshow which displays term's description.

Now, i would like to make possible the following scenario:
I click on the term name (Views NO.1 ) and i am redirected to a page where Views No.2 will show the description of that term to me.

It could be a very nice feature.

redndahead’s picture

Category: support » feature

boy we sure like to complicate things. ;) All this is doable and I have some thoughts on how, but I am not sure if this should be a 2.x or 3.x feature. I'm wary to add more features to 2.x code until I have at least 3.x out. Mainly because 3.x is going to be the version that will work for D7.

So for a timeline that I am most certain that I will not meet:

1) 2.2 will be out on June 20th.
2) 3.x will be ready for new features by the end of July.

If someone wants to put together a patch and let it linger here for the time being I am happy to have it.

redndahead’s picture

Version: 6.x-2.x-dev » 6.x-3.x-dev

Moving to 3.x maybe will backport when completed.

kiwad’s picture

subscribing

matthewn’s picture

subscribing

Danny_Joris’s picture

subscribing - this would be an amazing feature!

spazfox’s picture

Is this feature implemented in 3.x?

redndahead’s picture

No it is not.

redndahead’s picture

Version: 6.x-3.x-dev » 7.x-3.x-dev
Status: Postponed » Needs review
FileSize
1.67 KB

Here is a patch that will work against 7.x Nothing will really change for 6.x, but will have to be applied manually.

This works in the form of [slideshowId]_[slideNum]
The slideshowId can be found when you look at a slide div. It will be something like views_slideshow_cycle_div_slideshow-cycle_0
In this case what you need is the ending portion slideshow-cycle_0.
The slideNum is the number of the slide 0 indexed.

ex. mysite.com#slideshow-cycle_1

If you have more than one slideshow on a page you can set a starting slide for each.

ex. mysite.com#slideshow-cycle_1;slideshow-flashy_3

redndahead’s picture

This one is a little better. It changes a bit of the syntax so it'll work with version 2 better.

This works in the form of [slideshowId]:[slideNum]
The slideshowId can be found when you look at a slide div. It will be something like views_slideshow_cycle_div_slideshow-cycle_0
In this case what you need is the ending portion slideshow-cycle_0.
The slideNum is the number of the slide 0 indexed.

ex. mysite.com#slideshow-cycle:1 would start on the second slide

If you have more than one slideshow on a page you can set a starting slide for each.

ex. mysite.com#slideshow-cycle:1;slideshow-flashy:3

snufkin’s picture

Wouldn't an argument handler be better approach, so we can create slideshows that don't start at the first slide without custom coding?

redndahead’s picture

hmm didn't think of that. Only problem I can think of is that it would require extra work for slideshows that are blocks that's nothing new for other views items though. Would we be able to handle multiple slideshows on a single page? Never implemented an argument handler before.

snufkin’s picture

For blocks argument has always been a bit of pain (ppl had to put PHP code into the argument processing under d6, i dont know if this changed with d7).

Multiple slideshows should be fine, after all the argument is processed separately for each slideshow (this is actually better than the fixed url parsing via JS, because its the view that controls the starting slide, not the url).

I am happy to get cracking on this.

redndahead’s picture

Show me the way of the argument oh great snufkin

snufkin’s picture

on second thought arguments are not good for this, they would just limit the result set. It would perhaps be possible to alter the view in hook_views_pre_render, or accept PHP code in the slideshow configuration for the starting slide.

redndahead’s picture

Status: Needs review » Fixed

I'm going to go with the current implementation. If anyone comes up with something better I'd be willing to look at the patch.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

funkeyrandy’s picture

so how would you update the url when a prev/next or thumb is clicked?

redndahead’s picture

I don't. Probably should. Will have to look at it further. I think only supported on newer browsers. Please open a new feature request.

xeraseth’s picture

I was curious if this had been back ported to the Drupal 6 version

xeraseth’s picture

So I don't know much PHP, I know more Javascript but still not a ton but I was able to get this written, its a mishmash of Jquery with Javascript but it works, the only issue is it only works with 1 view (since I am setting the number of characters at one point). If someone can help me figure out a better way to get the slide number of an image please do.

The way it works is you pass a url of http://mysite.com/pathtoslideshow?file-name-you-want-to-be-active.png

// Set the starting slide by URL
    if(document.URL.indexOf("?") >= 0){ //Check to see if the url to see if a value is trying to be passed.
	  var imagename = window.location.search.substr(1); //Strip everything of the url besides the file name.
	  var imagesrc = $("img[src$='"+imagename+"']"); //Find the image with that name.
	  var parent = (imagesrc).parent().parent().parent().attr('id'); //Find the parent that has the slide number in its div id.
	  var startSlide = parent.substr(66); // Strip away everything of that div id besides the slide number. Here is where it fails for using it for multiple views, if there is a way to have it look for the last underscore or perhaps there is just a better way of finding out the slide number.
      settings.opts.startingSlide =  startSlide;
    }

This works with my specific view but wouldn't work with any view. I put this in the views_slideshow.js in the two contrib modules source. This is for version 6.x-2.3.

The plus about this method is it works with arguments (since its not actually doing anything in the backend).

drizzi’s picture

hello to all :-)

is this feature already integrated or do you have to wait a bit longer?

thx. in advance
steffen

goldoak jp’s picture

Version: 7.x-3.x-dev » 7.x-3.0

It appears that the patch code is implemented in the 7.x-3.0 version of views_slideshow,
but its not clear how to construct the URL hash to make this work.

On my site, the ids of the slideshow row divs are like "views_slideshow_cycle_div_p-page_1_0".
It doesn't match the pattern of the example in #16.

So what is the slideshowid in this case?

redndahead’s picture

You would need to use #div_p-page:2 as the hash

goldoak jp’s picture

Thanks, but its not working for me. Always just goes to the first slide.

Here's where I'm testing.

Base path to view:
http://landsenddev.advantagelabs.com/our-work/142

I tried:
http://landsenddev.advantagelabs.com/our-work/142#div_p-page:4

but also since the view display's machine name is 'page_1', I tried:
http://landsenddev.advantagelabs.com/our-work/142#div_p-page_1:4

And both ways without the 'div_' part.
Not sure what I'm missing. Any ideas?

Thanks again!

BManuel’s picture

Having same problem, were you able to fix?
Thanks

redndahead’s picture

@goldoak jp it looks like it should be #p-page_1:2

goldoak jp’s picture

We found the problem. We have to slash before we hash!

So in my case this link works:
http://landsenddev.advantagelabs.com/our-work/142/#p-page_1:4

Which will start the slideshow on slide 5.

Thanks to Barry @ Advantage Labs and redndahead. WooHoo!

BManuel’s picture

Yes works for me too. Any idea how to make it actually slide to that position (same effect as clicking the next button).
See how they did it at http://www.goldmansachs.com
thanks

jkirkby91’s picture

Another way to do this is to add a text field to your content type called "node link"

input the node url you want the slideshow to link to

Include this field in your slideshow view but do not display it and ensure it is above your image.

Then you re-write the output of the image field using replacement tokens to use the "node link" to wrap and around the image field replacement token

Poieo’s picture

Issue summary: View changes

This doesn't appear to work inside of Colorbox. Does anyone have thoughts on how this could be adapted to work in an overlay?