Jump to content
покупайте без комиссии
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Вопрос по водяному знаку для сайта


Recommended Posts

Здравствуйте!

 

Сделал водяной знак, согласно инструкции:

Спойлер

Откройте файл image.php находящийся в директории /catalog/model/tool/ и после строки

 


$image = new Image(DIR_IMAGE . $image_old);

 

добавьте следующую строку

 


$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');

 

middlecenter - это позиция водяного знака отображающая его по центру изображения товара.

Позиция  может принимать следующие значения:

  • topleft - левый верхний угол
  • topcenter - сверху по центру
  • middleleft - слева посередине
  • middleright - справа посередине
  • bottomleft - внизу слева
  • bottomcenter - снизу по центру
  • bottomright - внизу справа

Сохраните файл и перейдите в раздел модификаторы панели администратора сайта. Нажмите кнопку обновить.

После этого необходимо удалить изображения находящиеся в кэше opencart. Для этого перейдите в директорию /image/cache/ и удалите раздел в котором находятся кэшированные изображения товаров. В моем случае это catalog. Очистите кэш браузера и перейдите на сайт. Теперь все изображения товаров отображаются на сайте с водяным знаком находящимся в центре.

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

В настройках шаблона магазина у меня прописаны следующие значения для размеров изображений в карточке товара.

Screenshot_9.jpg

Добавьте в файл /catalog/model/tool/image.php условие с размерами изображений для обработки.

Замените добавленную ранее строку

 


$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');

 

на

 


if ($width == 498 || $height == 498) {
$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');
}
if ($width == 600 || $height == 600) {
$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');
}

 

Screenshot_10.jpg

 

В целом все работает на ура. Водяной знак появился, но прям на всех изображениях.

 

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

 

Что именно можно указать, чтобы он присваивался конкретным папкам?)

Link to post
Share on other sites

27 минут назад, Tom сказал:

Установил, но чет с ним не так. Как только устанавливаю, сайт выдает страницу 500(белый экран) (не админка, она работает, а сам сайт на любой странице нет)

 

Удаляю из менеджера дополнений, сайт вновь работает!

 

Похоже из-за того что тема не стандартная и надо править ocmod!? Или я ошибаюсь!?

 

 

Link to post
Share on other sites

@MFX ,  могу порекомендовать обратить внимание на:

 

 

 

Решит все ваши вопросы и проблемы с изображениями. Плюс масса полезного кроме водяного знака.  Например, поднятие оценки Гуглом вашего сайта.

Не бесплатно, конечно. Но зато и проблем никаких. Конечно, если вы цените свое время.

 

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

Модуль "Компрессор & Водяной знак"  решит и эту проблему путем засекречивания путей к исходникам.

Аналог можете не искать если вас интересует весь спектр возможностей Компрессора - их просто нет.

Link to post
Share on other sites
17 минут назад, sitecreator сказал:

@MFX ,  могу порекомендовать обратить внимание на:

 

 

 

Решит все ваши вопросы и проблемы с изображениями. Плюс масса полезного кроме водяного знака.  Например, поднятие оценки Гуглом вашего сайта.

Не бесплатно, конечно. Но зато и проблем никаких. Конечно, если вы цените свое время.

 

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

Модуль "Компрессор & Водяной знак"  решит и эту проблему путем засекречивания путей к исходникам.

Аналог можете не искать если вас интересует весь спектр возможностей Компрессора - их просто нет.

 

В данном случае нужна только приколюха ввиде водяного знака! До исходников плевать, пусть качают если нужно!)

 

Link to post
Share on other sites

5 минут назад, MFX сказал:

В данном случае нужна только приколюха ввиде водяного знака!

 

ну если вам только для прикола, тогда разбирайтесь с вашей нестандартной темой.  Напишите код для работы с "определенными папками с изображениями".

Это не так уж и сложно если понимаете php.

У меня (Компрессор & водяной знак) с нестандартными темами нет проблем, даже с journal 2. Да и доработка (если нужно) под шаблон делается бесплатно.

 

1 час назад, MFX сказал:

а по определенным папкам с изображениями

 

у меня и это все решено.  как и масса других моментов.

 

Вам ведь это нужно было, вроде бы, но вы смотрите на модуль, который этого не умеет, это раз.  И два, он не совместим с вашей темой.

Так какой смысл смотреть на дополнение, которое все равно не выполнит нужные вам функции?

Link to post
Share on other sites
48 минут назад, sitecreator сказал:

 

ну если вам только для прикола, тогда разбирайтесь с вашей нестандартной темой.  Напишите код для работы с "определенными папками с изображениями".

Это не так уж и сложно если понимаете php.

У меня (Компрессор & водяной знак) с нестандартными темами нет проблем, даже с journal 2. Да и доработка (если нужно) под шаблон делается бесплатно.

 

 

у меня и это все решено.  как и масса других моментов.

 

Вам ведь это нужно было, вроде бы, но вы смотрите на модуль, который этого не умеет, это раз.  И два, он не совместим с вашей темой.

Так какой смысл смотреть на дополнение, которое все равно не выполнит нужные вам функции?

 

Мне надо добавить лишь водяной знак, без сжатия, без защит, без разного рода приколюх. К картинкам товаров! Для данного сайта. Зачем мне покупать модуль за 2099р., если мне тут нужно только водяной знак разместить!? Я же писал выше, я сделал водяной знак, согласно инструкции и он спокойно встал, без всяких проблем. Только он встал на все картики которые только есть. По этому и был изначальный вопрос, о возможности прикрепления к папкам определенным.

 

Согласен, есть сайт, куда бы я ваш модуль задействовал, так как там картинок на 50гб только! И там я бы воспользовался вашим модулем!

 

НО ТУТ ТО МНЕ ТОЛЬКО ВОДЯНОЙ ЗНАК НУЖЕН, ЗАЧЕМ ради водяного знака покупать модуль, стоимостью 2099р на один сайт!?!?!

 

 

 

З.Ы. Кстати шаблон Unity Store 3.0 Filter

Edited by MFX
Link to post
Share on other sites

24 минуты назад, MFX сказал:

НО ТУТ ТО МНЕ ТОЛЬКО ВОДЯНОЙ ЗНАК НУЖЕН, ЗАЧЕМ ради водяного знака покупать модуль, стоимостью 2099р на один сайт!?!?!

 

Согласен, незачем если у вас есть варианты.

Например, просто водяной знак от неoseо за 1999 р. + 1999р (в год за обновление).  Там есть то, что вам нужно.

 

Или Вы можете самостоятельно доработать существующий бесплатный модуль или "водяной знак, сделанный согласно инструкции".

Либо можете заплатить специалисту те же 2090 р., который вам сможет доработать под ваши нужды и под ваш шаблон тот самый бесплатный модуль.

Бесплатно кто-то вряд ли сделает, но не исключаю, что это может быть дешевле чем 2090 р. Тут все спецы желают не менее $20 в час получать за нестандартные работы. Может быть кто-то сделает за час.

 

Также можете попытаться поискать решение среди других платных модулей. Главное чтобы поддержка была (под ocstore), а то можете опять получить неработающий вариант.

Т. е. выбор у вас довольно большой.

 

От неработающего, но бесплатного модуля, до 2090 р.

Вы всегда можете что-то найти в промежутке.

Выбор только за вами!

 

40 минут назад, MFX сказал:

шаблон Unity Store

 

у меня не было проблем.

Link to post
Share on other sites
48 минут назад, sitecreator сказал:

 

Согласен, незачем если у вас есть варианты.

Например, просто водяной знак от неoseо за 1999 р. + 1999р (в год за обновление).  Там есть то, что вам нужно.

 

Или Вы можете самостоятельно доработать существующий бесплатный модуль или "водяной знак, сделанный согласно инструкции".

Либо можете заплатить специалисту те же 2090 р., который вам сможет доработать под ваши нужды и под ваш шаблон тот самый бесплатный модуль.

Бесплатно кто-то вряд ли сделает, но не исключаю, что это может быть дешевле чем 2090 р. Тут все спецы желают не менее $20 в час получать за нестандартные работы. Может быть кто-то сделает за час.

 

Также можете попытаться поискать решение среди других платных модулей. Главное чтобы поддержка была (под ocstore), а то можете опять получить неработающий вариант.

Т. е. выбор у вас довольно большой.

 

От неработающего, но бесплатного модуля, до 2090 р.

Вы всегда можете что-то найти в промежутке.

Выбор только за вами!

 

 

у меня не было проблем.

 

Спасибо!)

Link to post
Share on other sites

Я для одной работёнки нашёл прогера по PHP, который задачу выполнил за 600р... когда все остольные просили не меньше 10к на этом форуме)

как вариант, есть форумы где сидят PHP прогеры и можно у них задать Ваш вопрос. Они менее алчные и чаще помогают советами) и не привязаны к opencart))

Link to post
Share on other sites

11 часов назад, MFX сказал:

Здравствуйте!

 

Сделал водяной знак, согласно инструкции:

  Показать контент

Откройте файл image.php находящийся в директории /catalog/model/tool/ и после строки

 



$image = new Image(DIR_IMAGE . $image_old);

 

добавьте следующую строку

 



$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');

 

middlecenter - это позиция водяного знака отображающая его по центру изображения товара.

Позиция  может принимать следующие значения:

  • topleft - левый верхний угол
  • topcenter - сверху по центру
  • middleleft - слева посередине
  • middleright - справа посередине
  • bottomleft - внизу слева
  • bottomcenter - снизу по центру
  • bottomright - внизу справа

Сохраните файл и перейдите в раздел модификаторы панели администратора сайта. Нажмите кнопку обновить.

После этого необходимо удалить изображения находящиеся в кэше opencart. Для этого перейдите в директорию /image/cache/ и удалите раздел в котором находятся кэшированные изображения товаров. В моем случае это catalog. Очистите кэш браузера и перейдите на сайт. Теперь все изображения товаров отображаются на сайте с водяным знаком находящимся в центре.

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

В настройках шаблона магазина у меня прописаны следующие значения для размеров изображений в карточке товара.

Screenshot_9.jpg

Добавьте в файл /catalog/model/tool/image.php условие с размерами изображений для обработки.

Замените добавленную ранее строку

 



$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');

 

на

 



if ($width == 498 || $height == 498) {
$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');
}
if ($width == 600 || $height == 600) {
$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');
}

 

Screenshot_10.jpg

 

В целом все работает на ура. Водяной знак появился, но прям на всех изображениях.

 

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

 

Что именно можно указать, чтобы он присваивался конкретным папкам?)

Ммм. а в чем проблема запускать вот это $image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter'); в работу только при условии, что папка, откуда берете изображение, находится в массиве названий папок для которых нужна вотермарка?

Link to post
Share on other sites

12 часов назад, MFX сказал:

Установил, но чет с ним не так. Как только устанавливаю, сайт выдает страницу 500(белый экран) (не админка, она работает, а сам сайт на любой странице нет)

 

Удаляю из менеджера дополнений, сайт вновь работает!

 

Похоже из-за того что тема не стандартная и надо править ocmod!? Или я ошибаюсь!?

 

 

После установки включить и настроить в админке.

Link to post
Share on other sites
4 часа назад, niger сказал:

Ммм. а в чем проблема запускать вот это $image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter'); в работу только при условии, что папка, откуда берете изображение, находится в массиве названий папок для которых нужна вотермарка?

Можно подробнее!?)

Link to post
Share on other sites

3 часа назад, Tom сказал:

После установки включить и настроить в админке.

Попробовал.

 

После того как залил файлы, установил окмод, нажимаю обновить в менеджере обновлений, сразу сайт отрубается(ну не админка, а сам сайт). Настраивай не настраивай через дополнения(водяной знак) в админе, ничего не появляется, белый экран, ошибка 500!

Просмотрел файлы окмода и файлы что заливаются на сайт, чет прям ничего не понял, фактически визуальной части не касается, но при этом все равно белый экран!

Пробовал перезалить, заново установить, все равно то же самое. Стоит только нажать обновить в менеджере обновлений, сразу белый экран, потом отключаешь дополнение и все работает вновь!

 

Link to post
Share on other sites

3 часа назад, MFX сказал:

Можно подробнее!?)

 

ну как вариант

if ( preg_match("/ваша папка с картинками/i", $path)) {

$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');
 }

Link to post
Share on other sites
4 часа назад, alena967 сказал:

 

ну как вариант

if ( preg_match("/ваша папка с картинками/i", $path)) {

$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');
 }

 

Перепробовал все вариации и так и так, похоже я не догоняю что и куда и откуда

Начинал с этого:

if (preg_match("/image/catalog/tovary/i", $path)) {
    $image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');	
}

И с i и без i и просто папку указывал и и сокращенно папку указывал выражение с # вместо / и указывал до пути папки с кешированными изображениями и что только не делал за эти 4 часа! Чет пока не вышло ничего! Либо куча ошибок ссылающихся на неправильный символ, либо вообще ничего не происходит!

 

Если просто вот так:

$image->watermark(new Image(DIR_IMAGE . 'watermark.png'), 'middlecenter');

То показывает вообще на всех изображениях, кроме слайдшоу.

 

 

Я запутался!

Link to post
Share on other sites

7 часов назад, MFX сказал:

Попробовал.

 

После того как залил файлы, установил окмод, нажимаю обновить в менеджере обновлений, сразу сайт отрубается(ну не админка, а сам сайт). Настраивай не настраивай через дополнения(водяной знак) в админе, ничего не появляется, белый экран, ошибка 500!

Просмотрел файлы окмода и файлы что заливаются на сайт, чет прям ничего не понял, фактически визуальной части не касается, но при этом все равно белый экран!

Пробовал перезалить, заново установить, все равно то же самое. Стоит только нажать обновить в менеджере обновлений, сразу белый экран, потом отключаешь дополнение и все работает вновь!

 

И что в логах ошибок сервера ? Что если вывести ошибки на экран?

Link to post
Share on other sites
25 минут назад, Tom сказал:

И что в логах ошибок сервера ? Что если вывести ошибки на экран?

Parse error: syntax error, unexpected '}', expecting end of file in /home/u370803502/public_html/system/storage/modification/catalog/model/tool/image.php on line 63

 

одна единственная!

Link to post
Share on other sites

Пробуйте заменить в последнем участке модификатора, там где он вносит правки в файл image.php , цифру 10 скажем на 15

Link to post
Share on other sites

В ocmod файле идет следующая часть кода:

<file path="catalog/model/tool/image.php">
    <operation>
      <search>
        <![CDATA[class ModelToolImage extends Model {]]>
      </search>
      <add position="before">
        <![CDATA[
		/*
class ModelToolImage extends Model {
        ]]>
      </add>
    </operation>
    <operation>
      <search index="10">
        <![CDATA[}]]>
      </search>
      <add position="after">
        <![CDATA[
        */
		require_once DIR_APPLICATION . 'model/extension/module/watermark/image.watermark.php';
        ]]>
      </add>
    </operation>
  </file>

В самом модифицированном файле закрывается  /* */ полностью участок кода из image.php и добавляется

require_once DIR_APPLICATION . 'model/extension/module/watermark/image.watermark.php';
    

За ним следует кусочек:  
            return $this->config->get('config_url') . 'image/' . $new_image;
        }  -  на эту скобку ругается ошибка syntax error, unexpected '}'  на строке 63! (но если ее удалить, она ругается на следующую. и т.д.

    }

}

 

И все! А почему так, не могу понять!

Link to post
Share on other sites

Все верно, потому что подключается другой файл из модуля, а количество строк не совпадает и строка вписывается до нужного места.

Link to post
Share on other sites
4 минуты назад, Tom сказал:

Все верно, потому что подключается другой файл из модуля, а количество строк не совпадает и строка вписывается до нужного места.

Добавил, вылезло следующее:

Цитата

Warning: Unterminated comment starting line 3 in /home/u370803502/public_html/system/storage/modification/catalog/model/tool/image.php on line 3
Warning: Invalid argument supplied for foreach() in /home/u370803502/public_html/system/storage/modification/system/engine/loader.php on line 53Notice: Undefined property: Proxy::resize in /home/u370803502/public_html/system/storage/modification/system/engine/loader.php on line 178

 

Link to post
Share on other sites

38 минут назад, Tom сказал:

Все верно, потому что подключается другой файл из модуля, а количество строк не совпадает и строка вписывается до нужного места.

 

Все огонь!) Сделал!)

 

<search index="10">   надо было вместо 10 указать <search index="13"> и все встало без проблем!)

 

@Tom  Спасибо большое!) Огромное спасибо!) Безумно благодарен!)

Edited by MFX
Link to post
Share on other sites

Добрый день уважаемые форумчани. Я не специалист поэтому решил обратится к Вас за помощью.

 

Ситуация следующая. у меня стоит система opencart pro 2.3.x.x там есть встроенная система sitemap я включил ее. Он выдает две ссылки на яндекс и на гугл. На яндекс все работает без проблем. А на гугл долго долго думает и выдает следующее Fatal error: Maximum execution time of 60 seconds exceeded in /home/c20506/public_html/ххххххх/catalog/model/extension/module/watermark/image_watermark.php on line 234 

Так я не специалист я не знаю что делать. Подскажите пожалуйста в чем проблема и как ее решить.

Вот строка на которую ссылается

$srcPixel = imageColorsForIndex($srcImg, $srcImgColorat);

 

Заранее благодарен за помощь. Если написал не в эту тему простите за это.

Link to post
Share on other sites

Вписали не в ту тему. Ошибка из за того что товару много, а хостинг слишком слабый что бы выдержать нагрузку при создании файла сатмапа.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.