• Resolved hellohell

    (@hellohell)


    Столкнулись с очевидной проблемой – у нас стоит плагин по автоматическому созданию водяных знаков на товары (Product Watermark for WooCommerce by BeRocket). Этот плагин меняет все картинки, и создают бэкапную копию рядом с надписью _br_backup в конце файла.
    То есть был оригинальный файл:
    100042342-400×300.jpg
    Стало:
    100042342-400×300.jpg – с водяным знаком
    100042342-400x300_br_backup.jpg – оригинальный файл без watermark

    Может кто-то уже нашел хорошо совместимый watermark-плагин для выгрузки в яндекс.маркет?? Так как маркет не устраивает наши картинки с наличием лого магазина.

    Единственная мысль, которая не трудоемко должна реализоваться из посетивших:
    1)Найти watermark-плагин, который будет заменять не все thumbnails, а выборочно
    2)В настройках вашего модуля в php файлах выбрать thumbnail изображение без водяного знака

    Попытки на втором пункте своими силами решить не удалось
    Пытаясь самостоятельными силами 2-ой пункт (почти ничего не понимаю в программировании) пытался заменить в class-attributes.php в строках 233 и 237. Приведу отрывок:

    // Get images.
    $main_image = get_the_post_thumbnail_url( $offer->get_id(), 'full' );
    // If no image found for product, it's probably a variation without an image, get the image from parent.
    if ( ! $main_image ) {
    	$main_image = get_the_post_thumbnail_url( $product->get_id(), 'full' );
    }

    Заменял full (в двух местах, в приведенных строках) на gallery, а затем на square. В обоих случаях, даже после чистки кэша в вордпресс никаких результатов – все так же в yml вижу ссылки на те же полные оригинальные картинки

    Не хочется отказываться полностью от водяных знаков на сайте и при этом выгружать товары на яндекс-маркет, может у кого-то есть решение?

Viewing 7 replies - 1 through 7 (of 7 total)
  • Plugin Author Anton Vanyukov

    (@vanyukov)

    Добрый день @hellohell,

    Попробуйте после кода выше добавить

    $main_image = str_replace( '-scaled', '-scaled_br_backup', $main_image );

    С уважением,
    Антон

    Thread Starter hellohell

    (@hellohell)

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

    $image = wp_get_attachment_url( $attachment_ids[ $exported - 1 ] );
    if ( false !== $image && strlen( utf8_decode( $image ) ) <= 512 && $image !== $main_image ) {
    $yml .= $this->add_child( 'picture', esc_url( $image ) );
    }

    Вставляем 3-ью строку:

    $image = wp_get_attachment_url( $attachment_ids[ $exported - 1 ] );
    if ( false !== $image && strlen( utf8_decode( $image ) ) <= 512 && $image !== $main_image ) {
    $image = str_replace( '-scaled', '-scaled_br_backup', $image );
    $yml .= $this->add_child( 'picture', esc_url( $image ) );
    }

    К сожалению, дополнительные картинки остаются прежними

    Мы, честно, будем счастливы, даже если в крайнем случае их совсем отрубить.. Наверно просто этот участок кода удалить… Но, если уже получится и это решить – было бы совсем супер!.. Неудобно за просьбу.. Но кажется фича очень крутая, и выделяет плагин

    Thread Starter hellohell

    (@hellohell)

    Если что сейчас мы получаем ссылки в таком виде
    <picture>https://НАШ_САЙТ/wp-content/uploads/НАЗВАНИЕ_ФАЙЛА1-300×300.jpg</picture&gt;
    <picture>https://НАШ_САЙТ/wp-content/uploads/НАЗВАНИЕ_ФАЙЛА2.jpg</picture&gt;
    <picture>https://НАШ_САЙТ/wp-content/uploads/НАЗВАНИЕ_ФАЙЛА3.jpg</picture&gt;

    “_br_backup” на конце нет.. Но все равно есть возможность воспользоваться другим watermark-плагином, в котором можно выбирать конкретные миниатюрки для водяных знаков… Правда, с _br_backup на конце было бы легче, но и так очень хорошо, спасибо большое!

    ——
    Апдейт:
    Ничего не понимаю… Откатываю изменения файла .php назад – перестали меняться файлы с full на миниатюрки… Совсем не пойму, что происходит. Столько раз перепроверял, перегенерировал yml, удалял кэш в вордпрессе, удостоверялся в наличии миниатюрок, пересоздавал их – ничего не помогает, буд-то class-attributes.php до изменений.. Завтра еще буду ковыряться, но вообще не выходит понять в чем дело.. Я даже скачивал каждый раз отдельно yml, и я вижу, что я ничего не напутал…

    Отпишусь как пойму что не так случилось

    Thread Starter hellohell

    (@hellohell)

    Кошмар.. Что я только не пытался. Удалял плагин, устанавливал этот плагин заново, вводил только первоначальные изменения, предложенные автором.. Чистил кэш на вордпрессе. Пересоздавал миниатюрки. Убеждался, что ссылки, сгенерированные в старых yml с thumbnails – ссылаются на до сих пор существующие миниатюрки….
    Для убеждения в том, что я то редактирую и заменяю тот файл на хостинге (учитывая, что я не могу добиться изменений – мысль не странная) менял пхп до видимых отличий…

    Я уже не знаю, что пробовать. В очередной раз регенерирую миниатюрки, в надежде, что из базы данных … В общем, не знаю на что уже надеяться. Не понимаю почему перестало работать, а мои знания пхп.. В смысле их нет.
    Кроме мысли, что из базы данных не могу получить картинки по каким-то причинам у меня нет. Хотя, никаких действий, вызывающих такое я не делал (занимаюсь последние дни исключительно этой проблемой). Единственной, что могло как мне кажется выступить тригером – плагин Regenerate Thumbnails – но я всегда им пользовался, было бы странно….

    Thread Starter hellohell

    (@hellohell)

    Очень странная ситуация. Если откатить пхп файл до дефолтного состояния, и поменять в строках кода из первого поста full на thumbnails (в 2 местах) – я в yml получаю картини 80х80 (тот самый размер, который у меня в вкладке Media Settings)

    Это, конечно же все неудивительно. Вот, что странно очень для меня:

    Меняю в тех же строках thumbnails на medium:
    В yml у меня остаются thumbnails 80×80.

    Меняю medium на large:
    В yml у меня все те же thumbnails 80×80.

    Update: все решалось сбросом кэша на вордпрессе

    Закомментировать пришлось строчки с дополнительными картинками – там не знаю как миниатюрки получить

    Так и оставил себе, попробую еще сделать замену в конце, чтобы получал в конце _br_backup перед .jpg – было бы проще мне. В идеале, конечно, заставить бы доп картинки тоже в миниатюрках получать..
    Если самостоятельно получится – отпишусь

    Plugin Author Anton Vanyukov

    (@vanyukov)

    @hellohell,

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

    $main_image = str_replace( '-scaled', '-scaled_br_backup', $main_image );

    на

    $main_image = str_replace( '.jpg', '_br_backup.jpg', $main_image );

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

    С уважением,
    Антон

    Thread Starter hellohell

    (@hellohell)

    Я точно так и сделал! Спасибо, Антон, не успел отписаться. Именно таким способо
    У меня как раз исключительно jpg

    Может еще в идеале доп изображения на миниатюрки изменить, хотя это вовсе не критично

    Очень благодарю за отклик Антон! У Вас прекрасный плагин!

Viewing 7 replies - 1 through 7 (of 7 total)
  • The topic ‘Совместимость с Водяными Знаками \ Watermark’ is closed to new replies.