vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 4.x Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=245)
-   -   vBulletin CMS Widgets - Photopost Pro Random Image Widget (https://vborg.vbsupport.ru/showthread.php?t=234589)

ZippySLC 01-30-2010 10:00 PM

Photopost Pro Random Image Widget
 
1 Attachment(s)
Hey all,

One of the things that I missed from my transition from Drupal to vBCMS was my Photopost random image block. It's one of the features that my visitors seem to really like as well. After some trial and error, I managed to create a working vBCMS widget that utilizes the "Random Image Anywhere" code submitted by Garrynz on the Photopost site.

Now, I will say that I am not a huge fan of the way that Garrynz's code works (variables are defined in the code rather than looking at the config files), but it's a quick and dirty way to get this work. In no way are your database details visible to anybody, so don't worry - it's more of an aesthetic thing than a security thing.

Anyway, to utilize this widget, follow these steps:

1. Go into your AdminCP, vBulletin CMS, Widgets, and click on "Add New Widget"
2. Create a new widget of type "PHP Direct Execution" and name it what you want. This name gets used in the header of the widget. I chose "Random Image."
3. Paste the following code in, making changes for your specific environment:

PHP Code:

$host  'database_server'
$dbUser 'database_user';   
$dbPass 'database_password'
$db 'database_name'
mysql_connect("$host""$dbUser""$dbPass") or die(mysql_error());
mysql_select_db("$db") or die(mysql_error());

ob_start();

$result mysql_query("SELECT id,cat,bigimage FROM pp_photos order by rand() LIMIT 1" ) or die(mysql_error());   
while(
$row mysql_fetch_array$result )) {    
print 
"<div align=\"center\"><a href=\"photos/showphoto.php/photo/" $row['id'] . "\"><img src=\"photos/data/" $row['cat'] . "/thumbs/" .  $row['bigimage'] . "\"></a><br /><a href=\"/gallery\">See more photos in the Gallery</a></div>";
}

$output .= ob_get_contents();
ob_end_clean(); 

Important Notes:
  • Make sure you make the widget be a "PHP Direct Execution" widget! If you don't, none of this will work!
  • Make sure you enter your database information correctly! Check your photopost config files if you've forgotten it. The correct syntax for the entries should be something like this:
    $host = 'localhost'; (with the entry in apostrophes and a semi-colon at the end)
  • If your Photopost tables don't have the pp_ prefix, you'll need to alter the code to reflect your prefix.
  • Make sure the URL to your gallery is set correctly after the print statement. In my case, since my gallery runs in a subdomain, my own print statement looks something like this:
    PHP Code:

    print "<div align=\"center\"><a href=\"http://gallery.njpinebarrens.com/showphoto.php/photo/" $row['id'] . "\"><img src=\"http://gallery.njpinebarrens.com/data/" $row['cat'] . "/thumbs/" .  $row['bigimage'] . "\"></a><br /><a href=\"/gallery\">See more photos in the Gallery</div>"

  • The output is wrapped in a div that's centered. Feel free to change that to your liking.
  • Again, this will not run out of the box without some customization on your part! But I hope it's fairly straightforward to understand.
  • SEO vs Non-SEO Friendly URL's:
    Photopost lets you use "Spider-Friendly URL's." There's three different options, spider, SEO, and none. I personally use spider on my Photopost site and the code I have above works fine. If you have your URL's set to "none" you'll need to use slightly different code. In that case, use this alternate print statement. (Replace the one in the code above with this, and obviously adjust the paths to match your specific install.)
    PHP Code:

    print "<a href=\"/photopost/showphoto.php?photo=" $row['id'] . "&cat=" $row['cat'] . "\"><img src=\"/photos/data/" $row['cat'] . "/thumbs/" $row['bigimage'] . "\" border=\"0\"></a>"


You can see this widget in action on my site, http://www.njpinebarrens.com

Froggfish 01-31-2010 07:11 AM

Is this for Photopost Callery og for Photopost Pro?

tazattitude 01-31-2010 10:03 AM

Actually, there is a file that you can download from Photopost, and re-upload in your "Gallery". Then you run it from your Gallery cp. This will create a "product" file that you upload in your vb products section.
This will create a thumbnail strip that you can specify weather you want newest or newest pics. Plus the amount of images you want to show up.
You can make the changes in the Plugin section.
You can see how I have 6 images are 'random' on my website


This of course, if it's Photopost Gallery

ZippySLC 01-31-2010 10:42 AM

Froggfish,

Photopost Pro, but it might work for regular Photopost (vBGallery) as well.

Taz,

I saw their plugin, but I don't think that works on the CMS side. Additionally, it takes up a lot of space. This is just a quick and dirty way to display one random image and be done with it.

Your site design is very nice, by the way.

MattZ DSLR 01-31-2010 04:50 PM

OK
What am I doing wrong
My site takes a very long time to load in

Template Name???
vbcms_widget_execphp_page

ZippySLC 01-31-2010 05:14 PM

You can leave the template name as the default vbcms_widget_execphp_page.

What is the URL to your site?

MattZ DSLR 01-31-2010 05:33 PM

Pm Send

ZippySLC 01-31-2010 05:46 PM

I don't see the random image widget on your CMS.

MattZ DSLR 01-31-2010 06:07 PM

I took it out as home page wouldn't load :(

ZippySLC 01-31-2010 06:25 PM

Wouldn't load at all, or would load very slowly?


All times are GMT. The time now is 06:07 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03667 seconds
  • Memory Usage 1,754KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete