Перейти к публикации
nexRM.ru

Вставить баннер в центр статьи


PooshEEstiCk

11 просмотров

 Поделиться

Бывает так – есть сайт на CMS c множеством статей и нужно вставить в каждую статью баннер, лучше в её центр т.к. в таком месте у баннера будет лучшая эффективность. Но не вставлять же в админке код баннера в каждую статью отдельно.

 

2016-11-1911-52-58.png.c3fea38292cffacd71f5ce1608e68f07.png

 

Решение:
В шаблоне вывода статей сделать замену текста. Данный код не нарушает верстку, исключает встраивание в ячейки таблиц и маркированных списков.

 

$article = 'Текст статьи';
$banner  = 'Код баннера';
 
$text = $article;
$text = str_replace('<p> </p>', '', $text);
$text = preg_replace('/<table[^>]*?>.*?</table>/si', '', $text);
preg_match_all('/(<p|<ul|<ol|<div|<h2|<h3|<h4|<h5|<h6)+(.*)/i', $text, $res);
 
foreach ($res[0] as $row) {
	if (!empty($row)) {
		$bl[] = $row;
	}
}
 
$c = ceil(count(@$bl) / 3);
if (isset($bl[$c])) {
	$article = str_replace($bl[$c], $banner . $bl[$c], $article);
}
 
echo $article;

 

 

 

 Поделиться

0 комментариев


Рекомендованные комментарии

Нет комментариев для отображения

Гость
Добавить комментарий...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...