Wordpress - Ads separating gallery thumbs?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Heath
    Confirmed User
    • Sep 2008
    • 491

    #1

    Wordpress - Ads separating gallery thumbs?

    Anyone know of any plugins that separate the gallery thumbs with a banner ad?
    Email - popuplace [at] yahoo [dot] com
  • Denny
    Too lazy to set a custom title
    • Feb 2005
    • 17393

    #2
    Bump for you

    Comment

    • just a punk
      So fuckin' bored
      • Jun 2003
      • 32393

      #3
      Had some free time today and decided to write the one for you. Here it is:

      Code:
      <?php
      /*
        Plugin Name: WP Gallery Banner
        Version: 0.1
        Author: CyberSEO.net
        Author URI: http://www.cyberseo.net/
        Description: Inserts a custom HTML code (e.g. banner) below the specified row
        License: GPL
       */
      
      define('WGB_CUSTOM_HTML_CODE', '<h1 align="center"><a href="http://www.cyberseo.net/" target="_blank">Click Here</a></h1>');
      define('WGB_THE_ROW', '2');
      
      function wgb_gallery_shortcode($attr) {
          global $post;
      
          static $instance = 0;
          $instance++;
      
          // Allow plugins/themes to override the default gallery template.
          $output = apply_filters('post_gallery', '', $attr);
          if ($output != '')
              return $output;
      
          // We're trusting author input, so let's at least make sure it looks like a valid orderby statement
          if (isset($attr['orderby'])) {
              $attr['orderby'] = sanitize_sql_orderby($attr['orderby']);
              if (!$attr['orderby'])
                  unset($attr['orderby']);
          }
      
          extract(shortcode_atts(array(
                      'order' => 'ASC',
                      'orderby' => 'menu_order ID',
                      'id' => $post->ID,
                      'itemtag' => 'dl',
                      'icontag' => 'dt',
                      'captiontag' => 'dd',
                      'columns' => 3,
                      'size' => 'thumbnail',
                      'include' => '',
                      'exclude' => ''
                          ), $attr));
      
          $id = intval($id);
          if ('RAND' == $order)
              $orderby = 'none';
      
          if (!empty($include)) {
              $include = preg_replace('/[^0-9,]+/', '', $include);
              $_attachments = get_posts(array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
      
              $attachments = array();
              foreach ($_attachments as $key => $val) {
                  $attachments[$val->ID] = $_attachments[$key];
              }
          } elseif (!empty($exclude)) {
              $exclude = preg_replace('/[^0-9,]+/', '', $exclude);
              $attachments = get_children(array('post_parent' => $id, 'exclude' => $exclude, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
          } else {
              $attachments = get_children(array('post_parent' => $id, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby));
          }
      
          if (empty($attachments))
              return '';
      
          if (is_feed()) {
              $output = "\n";
              foreach ($attachments as $att_id => $attachment)
                  $output .= wp_get_attachment_link($att_id, $size, true) . "\n";
              return $output;
          }
      
          $itemtag = tag_escape($itemtag);
          $captiontag = tag_escape($captiontag);
          $columns = intval($columns);
          $itemwidth = $columns > 0 ? floor(100 / $columns) : 100;
          $float = is_rtl() ? 'right' : 'left';
      
          $selector = "gallery-{$instance}";
      
          $gallery_style = $gallery_div = '';
          if (apply_filters('use_default_gallery_style', true))
              $gallery_style = "
                      <style type='text/css'>
                              #{$selector} {
                                      margin: auto;
                              }
                              #{$selector} .gallery-item {
                                      float: {$float};
                                      margin-top: 10px;
                                      text-align: center;
                                      width: {$itemwidth}%;
                              }
                              #{$selector} img {
                                      border: 2px solid #cfcfcf;
                              }
                              #{$selector} .gallery-caption {
                                      margin-left: 0;
                              }
                      </style>
                      <!-- see gallery_shortcode() in wp-includes/media.php -->";
          $size_class = sanitize_html_class($size);
          $gallery_div = "<div id='$selector' class='gallery galleryid-{$id} gallery-columns-{$columns} gallery-size-{$size_class}'>";
          $output = apply_filters('gallery_style', $gallery_style . "\n\t\t" . $gallery_div);
      
          $i = 0;
          $raw = 0;
          foreach ($attachments as $id => $attachment) {
              $link = isset($attr['link']) && 'file' == $attr['link'] ? wp_get_attachment_link($id, $size, false, false) : wp_get_attachment_link($id, $size, true, false);
      
              $output .= "<{$itemtag} class='gallery-item'>";
              $output .= "
                              <{$icontag} class='gallery-icon'>
                                      $link
                              </{$icontag}>";
              if ($captiontag && trim($attachment->post_excerpt)) {
                  $output .= "
                                      <{$captiontag} class='wp-caption-text gallery-caption'>
                                      " . wptexturize($attachment->post_excerpt) . "
                                      </{$captiontag}>";
              }
              $output .= "</{$itemtag}>";
              if ($columns > 0 && ++$i % $columns == 0) {
                  $output .= '<br style="clear: both" />';
      
                  if (++$raw == WGB_THE_ROW) {
                      $output .= WGB_CUSTOM_HTML_CODE;
                  }
              }
          }
      
          $output .= "
                              <br style='clear: both;' />
                      </div>\n";
      
          return $output;
      }
      
      remove_shortcode('gallery');
      add_shortcode('gallery', 'wgb_gallery_shortcode');
      ?>
      1. Upload it to your host as /wp-content/plugins/wp-gallery-banner/wp-gallery-banner.php.
      2. Assign your values to WGB_CUSTOM_HTM_CODE and WGB_THE_ROW.


      That's all, folks

      P.S. Contact me if you need a custom WordPress plugin: http://www.cyberseo.net/#contacts
      Last edited by just a punk; 07-05-2013, 04:20 AM.
      Obey the Cowgod

      Comment

      Working...