Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo

Adding a php slideshow


Go to End


5 Posts   5212 Views

Avatar
luisq

Community Member, 15 Posts

6 September 2008 at 5:31pm

Edited: 06/09/2008 5:31pm

Hello there,
I'm trying to add a slideshow to my site that I got online. I got it to make it appear on the place that I want it using this code:

mysite/code/HomePage:

class HomePage_Controller extends Page_Controller {

function Content() {
return str_replace('$slideshow', $this->slideshow(), $this->Content);
}

function slideshow() {
return include('slideshow.php');
}

}

so by that I'm able to show it (include it) on the part that I want. But when it comes on the site, it appears all the way to the top, and it only appear a number 1 where it suppose to be the slideshow. You can look at it here:

http://sitesimpleonline.com

I try to change the styles of the div, add a new div and put it inside, try everything with CSS but I think that it's not the problem =(

Any help, comments, manuals, etc will be REALLY appreciated!

THANK YOU very much!!!

Avatar
(deleted)

Community Member, 473 Posts

6 September 2008 at 9:15pm

Edited: 06/09/2008 9:23pm

What you could do is wrap the contents of slideshow.php in a function, which you can call. Instead of using echo/print/printf in that function, you'll want to return all output. Depending on how you do this, you may need to append the output to a variable and then return the variable, or, if there's only one output call, change it to return;

Then change the slideshow() method to something like:

function slideshow() { 
   include_once('slideshow.php'); 
   return slideshowFunc();
   }

Avatar
luisq

Community Member, 15 Posts

7 September 2008 at 7:34am

Thanx simon but didn't make it, the slideshow has to many prints, echos, returns and to many files taht are being include = (

So I'm trying to use a simple <iframe>, but for some reason SS doesn't like iframes and makes a mess of the page this is what I'm using:

<?php
/**
* Defines the HomePage page type
*/

class HomePage extends Page {

}

class HomePage_Controller extends Page_Controller {

function Content() {
return str_replace('$slideshow', $this->slideshow(), $this->Content);
}

function slideshow() {
$show = '<iframe src="http://sitesimpleonline.com/demoslideshow.php">';
return $show;
}
}
?>

any suggestion??? =P

Thnx again!

Avatar
(deleted)

Community Member, 473 Posts

7 September 2008 at 9:28am

The iframe needs to be closed, so replace

<iframe src="http://sitesimpleonline.com/demoslideshow.php">
with
<iframe src="http://sitesimpleonline.com/demoslideshow.php" />

You may also want to specify the width and height of the iframe.

Avatar
luisq

Community Member, 15 Posts

7 September 2008 at 9:36am

Thank you very much simon!
for some reason this didn't worked:

<iframe src="http://sitesimpleonline.com/demoslideshow.php" />

but like this it did (even though it's not correct...)

<iframe src="http://sitesimpleonline.com/demoslideshow.php"></iframe>

but "the end justifies the means" lol

Thanx again!