[Помогите] NextGEN Gallery plugin допиливание под себя

Тема в разделе "Wordpress", создана пользователем poison-b13, 3 сен 2009.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. poison-b13

    poison-b13 Постоялец

    Регистр.:
    21 июл 2009
    Сообщения:
    64
    Симпатии:
    5
    Добрый день, нужна помощь, есть плагин к WP: NextGEN Gallery
    хочется его немного переделать под себя:
    Используемая версия WordPress: 2.8.4 (RUS)
    Версия плагина: 1.3.5
    Суть проблемы:
    при создании статичной страницы для отображения галереи на сайте
    галерея отображается дивами (<div>)
    Код:
    <div id="ngg-image-388" class="ngg-gallery-thumbnail-box"  >
    		<div class="ngg-gallery-thumbnail" >
    			<a href="/wp-content/gallery/010701.jpg" title="010701" class="shutterset_obrazy-rossii" >
    				<img title="010701" alt="010701" src="/wp-content/gallery/thumbs/thumbs_010701.jpg"  />
    			</a>
    		</div>
    	</div>
    
    что не очень удобно,
    генерируюется сию следующим php кодом (файл wp-content/nextgen-gallery/view/gallery.php:(
    Код:
    <?php
    /**
    Template Page for the gallery overview
    
    Follow variables are useable :
    
            $gallery     : Contain all about the gallery
            $images      : Contain all images, path, title
            $pagination  : Contain the pagination content
    
     You can check the content when you insert the tag <?php var_dump($variable) ?>
     If you would like to show the timestamp of the image ,you can use <?php echo $e                                                xif['created_timestamp'] ?>
    **/
    ?>
    <?php if (!defined ('ABSPATH')) die ('No direct access allowed'); ?><?php if (!e                                                mpty ($gallery)) : ?>
    
    <div class="ngg-galleryoverview" id="<?php echo $gallery->anchor ?>">
    
    <?php if ($gallery->show_slideshow) { ?>
            <!-- Slideshow link -->
            <div class="slideshowlink">
                    <a class="slideshowlink" href="<?php echo $gallery->slideshow_li                                                nk ?>">
                            <?php echo $gallery->slideshow_link_text ?>
                    </a>
            </div>
    <?php } ?>
    
    <?php if ($gallery->show_piclens) { ?>
            <!-- Piclense link -->
            <div class="piclenselink">
                    <a class="piclenselink" href="<?php echo $gallery->piclens_link                                                 ?>">
                            <?php _e('[View with PicLens]','nggallery'); ?>
                    </a>
            </div>
    <?php } ?>
    
            <!-- Thumbnails -->
            <?php foreach ($images as $image) : ?>
    
            <div id="ngg-image-<?php echo $image->pid ?>" class="ngg-gallery-thumbna                                                il-box" <?php echo $gallery->imagewidth ?> >
                    <div class="ngg-gallery-thumbnail" >
                            <a href="<?php echo $image->imageURL ?>" title="<?php ec                                                ho $image->description ?>" <?php echo $image->thumbcode ?> >
                                    <img title="<?php echo $image->alttext ?>" alt="                                                <?php echo $image->alttext ?>" src="<?php echo $image->thumbnailURL ?>" <?php ec                                                ho $image->size ?> />
                            </a>
                    </div>
            </div>
            <?php if ( $gallery->columns > 0 && ++$i % $gallery->columns == 0 ) { ?>
            <br style="clear: both" />
            <?php } ?>
            <?php endforeach; ?>
    
            <!-- Pagination -->
            <?php echo $pagination ?>
    
    </div>
    хочу сделать отображение таблицей:
    Код:
    <table cellspacing="0" cellpadding="0" bordercolor="#7d4600" border="1" bgcolor=                                                "#ffffff" align="center">
        <tbody>
           <tr>
                <td width="160" height="175" align="center">
                <table cellspacing="0" cellpadding="0" border="0">
                    <tbody>
                        <tr>
                            <td width="160" height="160" align="center">&nbsp;</td>
                        </tr>
                        <tr>
                            <td height="15" style="text-align: center;">&nbsp;</td>
                        </tr>
                    </tbody>
                </table>
                </td>
                <td width="160" height="175" align="center">
                <table cellspacing="0" cellpadding="0" border="0">
                    <tbody>
                        <tr>
                            <td width="160" height="160" align="center">&nbsp;</td>
                        </tr>
                        <tr>
                            <td height="15" style="text-align: center;">&nbsp;</td>
                        </tr>
                    </tbody>
                </table>
                </td>
                <td width="160" height="175" align="center">
                <table cellspacing="0" cellpadding="0" border="0">
                    <tbody>
                        <tr>
                            <td width="160" height="160" align="center">&nbsp;</td>
                        </tr>
                        <tr>
                            <td height="15" style="text-align: center;">&nbsp;</td>
                        </tr>
                    </tbody>
                </table>
                </td>
                <td width="160" height="175" align="center">
                <table cellspacing="0" cellpadding="0" border="0">
                    <tbody>
                        <tr>
                            <td width="160" height="160" align="center">&nbsp;</td>
                        </tr>
                        <tr>
                            <td height="15" style="text-align: center;">&nbsp;</td>
                        </tr>
                    </tbody>
                </table>
                </td>
            </tr>
        </tbody>
    </table>
    по 4 пикчеры в ряд
    но как замутить не знаю, в php не очень силен.
    есть мысль замутить с array но в массивах не силен совсем :(

    Буду признателен за подсказку и любую другую помощь.
     
  2. pdd

    pdd Постоялец

    Регистр.:
    11 сен 2007
    Сообщения:
    133
    Симпатии:
    72
    4 в ряд можно в настройках выставить., да хоть десять в ряд.

    на самом деле очень удобно и даже просто, переходите на Div'ы не парьтесь с таблицами!!!
     
  3. poison-b13

    poison-b13 Постоялец

    Регистр.:
    21 июл 2009
    Сообщения:
    64
    Симпатии:
    5
    да я бы не парился, если бы мне мозг не парили те, для кого делаю, потому и попросил помощи.
     
  4. slav911

    slav911 Писатель

    Регистр.:
    25 сен 2008
    Сообщения:
    6
    Симпатии:
    0
    Есть другой вопрос по этой же гналерее: как можно сделать, чтобы при генерации квадратных тамбнейлов вырезалась не центральная часть картинки а верхняя (большинство картинок вертикальной ориентации и достаточно длинные.)
     
  5. slav911

    slav911 Писатель

    Регистр.:
    25 сен 2008
    Сообщения:
    6
    Симпатии:
    0
    И ещё вопрос, как сделать, чтобы всплывшая картинка отображалась фуллсайз, а не ужималась до размеров экрана?
     
  6. poison-b13

    poison-b13 Постоялец

    Регистр.:
    21 июл 2009
    Сообщения:
    64
    Симпатии:
    5
    в настройках смотрите,
    насчет первого есть галочка Gallery->Options->Thumbnails->Ignore the aspect ratio, no portrait thumbnails
    ее надо снять, тогда thumb'ы будут генериться по человечески, ну и не мешает поиграться с другими настройками, плюс если что то нельзя изменить в доступных настройках можно всегда залезть в код скрипта и там попробовать поправить.
     
  7. slav911

    slav911 Писатель

    Регистр.:
    25 сен 2008
    Сообщения:
    6
    Симпатии:
    0
    Насколько я понял, там есть три режима: квадратная превью вырезанная из центральной части, превью заданного размера без сохранения пропорций и превью заданного размера с сохранением пропорций (по большей стороне), а мне хотелось бы квадратные, вырезанные от верхней части с сохранением пропорций. К сожалению в ПХП я ноль, поэтому правка в рукопашную рассматривается только при точном указании как, чего и где править.
    З.Ы.
    Это не наглое требование сделать всё за меня, просто если кто поможет - буду рад, нет - буду искать другие способы.
     
  8. Sizamas

    Sizamas

    Регистр.:
    17 апр 2008
    Сообщения:
    417
    Симпатии:
    97
    вообще-то, там есть настройка(не помню точно, вроде на странице всех фоток), клацаешь на кнопочку и тогда можешь сам выбрать в активном окне из какой части резать тумбу и как она будет выглядеть
     
  9. poison-b13

    poison-b13 Постоялец

    Регистр.:
    21 июл 2009
    Сообщения:
    64
    Симпатии:
    5
    Пошарился в коде, но подходящий по смыслу кусок кодя только в admin/functions.php
    там есть коменты типа //check for portrait format, но как там сделать руками не понял.

    Свою же проблему решил с помощью заведения счетчика.
    Код:
     <!-- Thumbnails -->
            <?php foreach ($images as $image) : ?>
    
            <td width="160" height="175" id="ngg-image-<?php echo $image->pid; $a++ ; ?>" <?php echo $gallery->imagewidth ?>>
                <table cellspacing="0" cellpadding="0" border="0">
                        <tbody>
                                <tr>
                                        <td width="160" height="160" align="center">
                                                <a href="<?php echo $image->imageURL ?>" title="<?php echo $image->description ?>" <?php echo $image->thumbcode ?> >
                                                        <img border="0" title="<?php echo $image->alttext ?>" alt="<?php echo $image->alttext ?>" src="<?php echo $image->thumbnailURL ?>" <?php echo $image->size ?> />
                                                </a>
                                        </td>
                                </tr>
                                <tr>
                                        <td height="15" style="text-align: center;"><strong><?php echo $image->alttext ?></strong></td>
                                </tr>
                        </tbody>
                </table>
            </td >
    
            <?php if ( $a == 4 ) { echo "</tr>"; $a=0; }?>
    
            <?php endforeach; ?> 
     
  10. jamce123

    jamce123 Постоялец

    Регистр.:
    7 апр 2009
    Сообщения:
    70
    Симпатии:
    5
    никто не сталкивался с проблемой кодировки в этой галерее? То есть я создаю галерею из админки, а когда хачу ее вставить (при написании нового сообщения) нажимаю на иконку галереи (там где иконки цитата, вставить картинку) и вылетает окно с выбором вставляемой галереи, и там вместо текста везде "???!?!?!??"
    Конешно я угадываю, что нужно нажать, но как-то не эстетично.

    Версия плагина 1.3.5
     
Статус темы:
Закрыта.