Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

Всем здравствуйте.

Помогите решить вопрос с обрезкой части слов из урл.

Есть урл такого вида 

<?php echo $thumb; ?> то есть там получается такой путь https://site.ru/image/cache/adaptive/catalog/blog/main_test-100x200.jpg

Нужно вырезать из ссылки cashe/adaptive и -100x200

В итоге ссылка должна быть такого вида

https://site.ru/image/catalog/blog/main_test.jpg

Заранее благодарен!

Змінено користувачем pimur
Надіслати
Поділитися на інших сайтах


3 минуты назад, chukcha сказал:

хе, но там должен лежать файл
 

Файл там лежит 100%

Объясню что это.

В статьях модуля марка, у статьи есть картинка, если ее нет, то и не выводится в статье.

Так как стоит словие

<?php if ($thumb) { ?>
<?php echo $thumb; ?>
<?php } ?>

Мне нужно вытащить урл картинки из кеша и получить из нее оригинал.

<?php if ($thumb) { ?>
<!--Получаю урл картинки-->
<?php $str = $thumb; ?>
<!--Тут надо вырезать определенные слова, которые записанны -->
<?php $str = preg_replace('!^cashe/adaptive?:/!i', '', $str); ?>
<?php echo $str; ?>

<script type="text/javascript">
	$(document).ready(function(){
		var block = $('#bg-record__image'),
            //Тут уже буду получать нужную картинку обрезанную заранее
			image = '<?php echo $str; ?>';
	});
</script>
<?php } ?>

 

Надіслати
Поділитися на інших сайтах


Прикольно.. А не пробовали всё это сделать в контроллере где ещё дело до кэша не дошло?)))

Мда..

Змінено користувачем Гість
Надіслати
Поділитися на інших сайтах

25 минут назад, nexus сказал:

Прикольно.. А не пробовали всё это сделать в контроллере где ещё дело до кэша не дошло?)))

Мда..

У марка в блоге есть возможность указывать tpl шаблоны, смысл лезть в контроллер его не имеет смысла. Я понимаю, что надо это делать для шаблона или модуля на продажу, или вообще по правилам хорошего тона. Не суть.

4 минуты назад, AlexDW сказал:

<?php
$str = 'https://site.ru/image/cache/adaptive/catalog/blog/main_test-100x200.jpg';
echo preg_replace('(cache\/adaptive\/|\-100x200)', '', $str);
?>

так?

Большое спасибо! Плюсанул!

Надіслати
Поділитися на інших сайтах


3 минуты назад, AlexDW сказал:

по регуляркам - есть отличный сайт https://regex101.com/

И за это спасибо! Добавил в закладки.

Тему можно закрыть Спасибо @AlexDW

Надіслати
Поділитися на інших сайтах


не понятно зачем регулярка
str_replace(array('cache/adaptive/','-100x200'),'',$str)

 

но тогда непонятен зачем resize, если есть известный путь

 


 

  • +1 1
Надіслати
Поділитися на інших сайтах

не понятно зачем регулярка
str_replace(array('cache/adaptive/','-100x200'),'',$str)
 
но тогда непонятен зачем resize, если есть известный путь
 

 
Спасибо за совет.

По умолчанию все картинки resize получают в товарах, категориях, статьях. Тут ничего нового.
Разве можно получить урл картинки в tpl без объявления в controller ?
Условно не хотелось лезть в controller модуля сеокмс, ради того что бы вывести картинку статьи в background
Немного костыль но может.
Или есть более извращённое решение получить для любой статьи в пользовательском tpl картинку по прямому пути?

Отправлено через Tapatalk

Надіслати
Поділитися на інших сайтах


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

Или есть более извращённое решение

 

это вам уже к павликам на консультацию записываться :ugeek:

 

по-правильному - формировать ссылку на оригинал в самом контроллере

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

 

а вообще - лучше уточнить у @markimax , возможно в его мега-комбайне и такое предусмотрено ;)

  • +1 1
Надіслати
Поділитися на інших сайтах

8 часов назад, pimur сказал:

Разве можно получить урл картинки в tpl без объявления в controller ?

ну ... не ресазить, а сразу формировать

  • +1 1
Надіслати
Поділитися на інших сайтах

В 19.02.2018 в 02:15, pimur сказал:

Спасибо за совет.

По умолчанию все картинки resize получают в товарах, категориях, статьях. Тут ничего нового.
Разве можно получить урл картинки в tpl без объявления в controller ?
Условно не хотелось лезть в controller модуля сеокмс, ради того что бы вывести картинку статьи в background
Немного костыль но может.
Или есть более извращённое решение получить для любой статьи в пользовательском tpl картинку по прямому пути?

Отправлено через Tapatalk
 

Сразу на пряму в контроллере (без подключение tool/image и использования функции resize

 

$data['image_url'] = DIR_IMAGE . 'catalog/blog/main_test.jpg';

(Или через if (file_exists) как с ресайзом, только без него)

 

А ище можно не костыльно, чтоб например вставляеш картинку в админке и название картинки - подставлялось в переменную и если нет картинки, то пустой бекграунд(заглушка);

 

И в tpl: <img src="<?php echo $image_url; ?>" /> .....

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.