GAMMA

GAMMA
Рейтинг
154
Регистрация
27.12.2006
Должность
Фрилансер
Интересы
Сайты и блоги

Взято с russeler

<?php

//скрипт находит все фото в указанной папке и делает минииатюры помещая их в другую указанную папку

$thumb_directory = "images/thumb"; //Папка для миниатюр
$orig_directory = "images/full"; //Папка для полноразмерных изображений

$dir_handle = @opendir($orig_directory); //Открываем папку с полноразмерными изображениями
if ($dir_handle > 1){ //Проверяем, что папка открыта и в ней есть файлы

$allowed_types=array('jpg','jpeg','gif','png'); // Список обрабатываемых расширений
$file_parts=array();
$ext='';
$title='';
$i=0;

while ($file = @readdir($dir_handle))
{
/* Пропускаем системные файлы: */
if($file=='.' || $file == '..') continue;

$file_parts = explode('.',$file); //Разделяем имя файла на части
$ext = strtolower(array_pop($file_parts));

/* Используем имя файла (без расширения) как заголовок изображения: */
$title = implode('.',$file_parts);
$title = htmlspecialchars($title);

/* Если расширение входит в список обрабатываемых: */
if(in_array($ext,$allowed_types))
{

/* Если вы планируете хранить изображения в базе данных, вставьте код для запроса здесь */

/* Далее следует код, который разбирался в уроке */
/* Выводим каждое изображение: */

$nw = 150;
$nh = 100;
$source = $orig_directory . $file;
$stype = explode(".", $source);
$stype = $stype[count($stype)-1];
$dest = $thumb_directory . $file;

$size = getimagesize($source);
$w = $size[0];
$h = $size[1];

switch($stype) {
case 'gif':
$simg = imagecreatefromgif($source);
break;
case 'jpg':
$simg = imagecreatefromjpeg($source);
break;
case 'png':
$simg = imagecreatefrompng($source);
break;
}
/*
$dimg = imagecreatetruecolor($nw, $nh); imageAlphaBlending($dimg, false); //режим смешивания отключить
imageSaveAlpha($dimg, true); //сохранить информацию о прозрачности
$wm = $w/$nw;
$hm = $h/$nh;
*/
$dimg = imagecreatetruecolor($nw, $nh);
$wm = $w/$nw;
$hm = $h/$nh;
$h_height = $nh/2;
$w_height = $nw/2;

if($w> $h) {
$adjusted_width = $w / $hm;
$half_width = $adjusted_width / 2;
$int_width = $half_width - $w_height;
imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);
} elseif(($w <$h) || ($w == $h)) {
$adjusted_height = $h / $wm;
$half_height = $adjusted_height / 2;
$int_height = $half_height - $h_height;

imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);
} else {
imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);
}
imagejpeg($dimg,$dest,100);
}
}

/* Закрываем папку */
@closedir($dir_handle);

}
?>

Если воспользоваться поиском то можно найти кучу подобных примеров с демо и без.

Pavel_:
Неужели "натяжка диза" шибко от движка зависит?
плюс - минус полчаса

Зависит конечно. Если в движке код отвязан от дизайна то раз плюнуть. Особенно если сам движок хорошо знаешь. Да и ещё смотря какой дизайн по ТЗ.

Под цитатник использовать Друпал наверно то же самое как перевозить на Камазе пакетик с солью. Удобное чтение маленьких читат с рейтингом - отлично подойдёт MaxSite CMS, функционал на уровне WP но намного легче в плане нагрузки.

vclicks:
Что имеется ввиду под оптимизацией?

Правдив ли слух что вордпресса предел 10к в сутки?

Оптимизация WP это не включать кучу ненужных плагинов а только те, которые жизнено необходимы, грамотно настроить плагин кэширования, оптимизировать графику по объёму, оптимизировать размер css, все джава скрипты в конец кода, через .htaccess кэшировать всё что можно на строне клиента.... Список можно ещё продолжать, но не вижу смысла. Это только самое основное. Ну а насчёт 10к в сутки, это у кого как. Тут ведь ещё зависит от количества страниц которые эти 10к посетителей пооткрывают + активность паучков. Видел примеры когда на хорошем шаринге 3000 посетителей без особых тормозов держит, но там спец с очень хорошим напильником поработал. А видел как при 1000 посетителях слабенький VDS загибается от перерасхода памяти.

Наверно всё же лучше посмотреть в сторону более лёгкого движка, например MaxSite CMS - полный аналог WP по функционалу а нагрузка на сервер в 5-6 раз как минимум меньше. Там где при 10к сервер упадёт с WP, MaxSite будет спокойно работать и при 30к.

Если без дизайна то можно договориться с фрилансерами на 2-3 тысячи. Насчёт дизайна не подскажу, не мой профиль.

Редирект бывает и через хэйдер, что позволяет использовать статику на которой работают народные сайты. Плюс robots.txt, других вариантов не вижу.

ТС же написал что никаких загрузок и онлайн просмотров!

Галерея галерее рознь, что именно Вам нужно от галереи? Какой функционал со стороны пользователей и админа? От этого нужно плясать.

MaxSite CMS, Даннео

Все будут предлагать то на чём работают, потому как функционал простой, ничего особого.

Я подобное реализовал на Даннео. Хотя в принципе можно сделать на любом нормальном движке. Но прикручивать кое что всё равно нужно будет.

Всего: 509