1 پست در این موضوع قرار دارد

سلام به تمامی دوستان.

از منبع:

http://dolcepixel.com/how-to-watermark-all-your-uploaded-images/

برای گذاشتن واترمارک خودکار روی عکسام استفاده کردم

محتوای فایل httaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule (.*)wp-content/uploads/(.*\.(jpe?g|gif|png))$ $1watermark.php?p=br&q=90&src=wp-content/uploads/$2
</IfModule>
# END WordPress

همچنین محتوای فایل watermark.php:


<?php
header('Content-type: image/jpeg');
$img = $_GET['src'];
$p = $_GET['p']; if(!$p) $p = 'br';
/*
p can be anything from the following list:
tl = top left
tc = top center
tr = top right
cl = center left
c = center of the image
cr = center right
bl = bottom left
bc = bottom center
br = bottom right
*/
//watermarked image quality
$q = $_GET['q'];
//if the quality field is missing or is not on the 0 to 100 scale then we set the quality to 93
if(!$q || $q<0 || $q>100) $q = '100';


$filetype = substr($img,strlen($img)-4,4);
$filetype = strtolower($filetype);
if($filetype == ".gif") $image = @imagecreatefromgif($img);
if($filetype == ".jpg") $image = @imagecreatefromjpeg($img);
if($filetype == ".png") $image = @imagecreatefrompng($img);
if (!$image) die();

//getting the image size for the original image
$img_w = imagesx($image);
$img_h = imagesy($image);
//if the filename has 150x150 in it's name then we don't apply the watermark
if (eregi("150x150", $img)) {
imagejpeg($image, null, $q); die();
} else {
$watermark = @imagecreatefrompng('watermark.png');
}
/*
//if you want to use the watermark only on bigger images then use this instead of the condition above
if ($img_w < "150") {//if image width is less then 150 pixels
imagejpeg($image, null, $q); die();
} else {
$watermark = @imagecreatefrompng('watermark.png');
}
*/

//getting the image size for the watermark
$w_w = imagesx($watermark);
$w_h = imagesy($watermark);

if($p == "tl") {
$dest_x = 0;
$dest_y = 0;
} elseif ($p == "tc") {
$dest_x = ($img_w - $w_w)/2;
$dest_y = 0;
} elseif ($p == "tr") {
$dest_x = $img_w - $w_w;
$dest_y = 0;
} elseif ($p == "cl") {
$dest_x = 0;
$dest_y = ($img_h - $w_h)/2;
} elseif ($p == "c") {
$dest_x = ($img_w - $w_w)/2;
$dest_y = ($img_h - $w_h)/2;
} elseif ($p == "cr") {
$dest_x = $img_w - $w_w;
$dest_y = ($img_h - $w_h)/2;
} elseif ($p == "bl") {
$dest_x = 0;
$dest_y = $img_h - $w_h;
} elseif ($p == "bc") {
$dest_x = ($img_w - $w_w)/2;
$dest_y = $img_h - $w_h;
} elseif ($p == "br") {
$dest_x = $img_w - $w_w;
$dest_y = $img_h - $w_h;
}

imagecopy($image, $watermark, $dest_x, $dest_y, 0, 0, $w_w, $w_h);
imagejpeg($image, null, $q);
imagedestroy($image);
imagedestroy($watermark);
?>

اطلاعات:

1:گالری بر روی ساب دامنه هست (محتوی ها رو همه رو توی پوشه همون ساب دامین گذاشتم)

2:تصاویر بر روی هاست دانلود (یه هاست دیگه) آپلود میشن

3:در پایان هر آپلود با ارور

]: Cannot set time limit in safe mode in /home/MySiteName/public_html/gallery/wp-content/plugins/upload-to-ftp/upload-to-ftp.php on line 253
212

مواجه میشم

4: برای آپلود تصاویر همونطور که دیدید از افزونه upload to ftp استفاده میکنم و برای نمایش تصاویر شاخص از افزونه ی hacklong remote attachment

____________

اگر هر روش دیگه ای برای آپلود عکس (که بهتر باشه) ، یا واترمارک یاد دارین خوشحال میشم بهم بگین.

اگر هم مشکل بالا حل شد که چه بهتر...

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط Frankiiing
      سلام دوستان وقت تون بخیر
      من می خوام به تمامی تصاویری که از ابتدا در سایتم منتشر کردم یک واترمارک اضافه کنم ( مثلا اسم سایت )
      با 1-2 تا افزونه کار کردم جواب نگرفتم
       
      کسی راهی سراغ داره ؟ 
      آدرس سایت : Volvobabaee.com
    • توسط hesamkj
      سلام دوستان.
      بنده برای گذاشتن ادرس سایتم بر روی عکس های از افزونه water mark image استفاده میکنم.
      میخواستم بدونم چجوری محلی را که برای بازگذاری و اپلود عکس در وردپرس انتخاب شده را عوض کرده و به هاست دانلود منتقل کنم و یه مشکل دیگه اینکه این افزونه یا افزونه های دیگه واترمارک گذاری فقط عکس های داخل هاست میزبانی وب رو تغییر داده و ادرس عکس را در زیر آنها قرار میدهند برای حل این مشکل چه کنم ؟
      با تشکر :X

    • توسط montazer
      از دوستان اگر کسی افزونه ای برای واترمارک تصاویر میشناسه ممنون میشم معرفی کنه.
      من خودم از افزونه Watermark RELOADED استفاده می کنم. ولی این افزونه فقط متن رو روی تصاویر واترمارک می کنه من می خوام بتونم تصویر رو هم روی تصویر بارگذاری شده واترمارک کنه.
      یکی دیگه از مشکلات Watermark RELOADED عدم تشخیص نوع فایل، یعنی اگه یک فایل زیپ آپ کنی اررور میده. البته در روند کار مشکلی ایجاد نمیکنه.
      یکی دیگه از مشکلات این افزونه عدم همخوانی کامل با تصاویریه که دارای فضای خالی(transparent) باشند.