در سیستم دیتالایف انجین، تصاویری که درون مطالب خود ارسال میکنید، چنانچه سایز بزرگتری از حد مجازی که تعیین کرده باشید دارا باشند، تبدیل به تصاویر بند انگشتی میشوند. این تصاویر بند انگشتی بر اساس سایز کلی، طول و یا عرض تصویر اصلی ساخته میشوند. اما چون سایز هر تصویری که ارسال میکنید با سایر تصاویر متفاوت هست، تصاویر بند انگشتی شما در اندازه های مختلف ساخته میشوند.
حال، این میتواند مشکلی باشد برای آن دسته از کاربرانی که در ظاهر سایت و قالب خود سخت گیر و حساس هستند و از روشهای غیر استاندارد و نامناسب مانند تغییر سایز تصویر با استفاه از CSS نیز استفاده نمیکنند.
بوسیله این هک که امروز نوشتم، میتوانید قابلیت Crop یا همان برش تصاویر را به سیستم دیتالایف انجین اضافه کنید. در نتیجه، تصاویر سایز شما دقیقا به همان اندازه که شما تعیین میکنید بریده خواهند شد و ظاهر مناسبی به سایت شما خواهد داد.
امکانات نسخه 1:
۱. فعال و یا غیر فعال کردن ماژول از قسمت مدیریت سیستم.
۲. قابلیت تعیین سایز دلخواه برای برش تصاویر از قسمت مدیریت سیستم.
یک خط بالاتر از کد بالا، کد زیر را قرار دهید:
showRow("<span style=\"color:#953ed0;text-shadow:1px 1px #ddd;\">برش تصاویر:</span>", "با فعال کردن این قسمت، میتوانید یک سایز به دلخواه خود انتخاب کنید تا تصاویری که در مطلب خود آپلود میکنید، به جای اینکه تصویر بند انگشتی شما بر اساس سایز طول و یا عرض، به صورت یک تصویر بند انگشتی به نمایش در بیاید و کوچک شود، دقیقا به سایزی که شما تعیین میکنید تبدیل خواهد شد.", makeDropDown( array ("1" => "فعال", "0" => "غیر فعال" ), "save_con[crop_enable]", "{$config['crop_enable']}"));
showRow("<span style=\"color:#953ed0;text-shadow:1px 1px #ddd;\">تعیین سایز برش تصاویر:</span>", "سایزی که تمایل دارید تصاویر شما به آن اندازه برسه داده شوند را در این قسمت قرار بدهید.<br /><b>نمونه:</b> 100x100", "<input class=\"edit bk\" type=text style=\"text-align: center;\" dir=\"ltr\" name='save_con[crop_size]' value=\"{$config['crop_size']}\" size=10>" );
//CROP IMAGES BY IMP
۲. فایل engine/classes/uploads/upload.class.php را باز کرده و کد زیر را پیدا کنید:
بعد از کد بالا، کد زیر را قرار دهید:
if ($config['crop_enable'] == 1){
$thumb->size_auto($config['crop_size']);
$thumb->jpeg_quality( $config['jpeg_quality']);
if($this->make_watermark) $thumb->insert_watermark( $config['max_watermark']);
$thumb->save( ROOT_DIR . "/uploads/posts/" . FOLDER_PREFIX . "thumbs/" . $uploaded_filename);
@chmod(ROOT_DIR . "/uploads/posts/" . FOLDER_PREFIX . "thumbs/" . $uploaded_filename, 0666);
}else{
//CROP IMAGES BY IMP
در همان فایل، کد زیر را پیدا کنید:
}
}
بعد از کد بالا، کد زیر را قرار دهید: