Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Fisana

Навигация форума

Рекомендованные сообщения

Собираюсь повесить на форум контекстную рекламу над или под навигацией. С ужасом думаю, что придется вставлять код в массу скинов на этом форуме.

Поэтому хотелось бы упростить задачу, а именно, поместить код в файл форума. Только в какой файл и как корректно это сделать?

Поделиться сообщением


Ссылка на сообщение

/sources/classes/class_display.php

 

Найти строчку:

		$nav .= $this->ipsclass->compiled_templates['skin_global']->end_nav();

 

После этого вписать

$nav = '<h1>ИНФЕРНАЛЬНЫЙ РЕКЛАМНЫЙ БЛОК</H1>'.$nav;

, если хочешь, чтобы реклама была после стрелок навигации, и

$nav .= '<h1>ИНФЕРНАЛЬНЫЙ РЕКЛАМНЫЙ БЛОК</H1>';

, если хочешь, чтобы до.

 

Сойдёт?

 

Можно также, например, вынести HTML-код баннера в какой-либо отдельный файл, и писать в духе

$nav .= file_get_contents( ROOT_PATH . 'advert.html' );

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

Поделиться сообщением


Ссылка на сообщение

Спасибо :)

Поделиться сообщением


Ссылка на сообщение
/sources/classes/class_display.php

 

Найти строчку:

		$nav .= $this->ipsclass->compiled_templates['skin_global']->end_nav();

 

После этого вписать

$nav = '<h1>ИНФЕРНАЛЬНЫЙ РЕКЛАМНЫЙ БЛОК</H1>'.$nav;

, если хочешь, чтобы реклама была после стрелок навигации, и

$nav .= '<h1>ИНФЕРНАЛЬНЫЙ РЕКЛАМНЫЙ БЛОК</H1>';

, если хочешь, чтобы до.

 

Сойдёт?

 

Можно также, например, вынести HTML-код баннера в какой-либо отдельный файл, и писать в духе

$nav .= file_get_contents( ROOT_PATH . 'advert.html' );

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

Сделал, т.к. написано - помогло, спасибо, но блок вставляется на каждой странице. Как сделать, чтобы вставлялся только на некоторых? Интересуют в частности страница Портала и Главная страница форума.

Поделиться сообщением


Ссылка на сообщение

Да, и код должен вставляться снизу страницы (до или после копирайтов). Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение

Кто-то ведь это делал? Поделитесь опытом!

Поделиться сообщением


Ссылка на сообщение

Редактируйте основной шаблон форума. Там есть <% COPYRIGHT %> до или после него вставляйте.

Поделиться сообщением


Ссылка на сообщение

Если бы всё было так легко, я бы не спрашивал. Я не говорю об HTML - мне нужно вставить PHP, а он так просто в шабы не ставится ;(

Поделиться сообщением


Ссылка на сообщение

Ну вы даете. Коды счетчика идут на java, а не php. Это вам надо редиктировать ./sources/classes/class_display.php. Прописываете нужное в общем шаблоне, потом, по аналогии, делаете preg_replace на вашу функцию/ваш пхп код.

Если не понимаете в php ничего - не беритесь.

Поделиться сообщением


Ссылка на сообщение

А разве я говорил о счётчиках? Тема о PHP - я сюда и написал.

Методом Dr.Freddy вывел код сверху, а мне нужно снизу и желательно только на 1 странице (главной). По-моему я так и писал :)

Поделиться сообщением


Ссылка на сообщение
Прописываете нужное в общем шаблоне, потом, по аналогии, делаете preg_replace на вашу функцию/ваш пхп код.
Дык по какой аналогии. Хоть бы показали...

Поделиться сообщением


Ссылка на сообщение
А разве я говорил о счётчиках? Тема о PHP - я сюда и написал.

Методом Dr.Freddy вывел код сверху, а мне нужно снизу и желательно только на 1 странице (главной). По-моему я так и писал :)

ну понимаете, код контестной рекламы обычно идет на java, а не на php.

Хотите до копирайта?

вставьте до

$this->ipsclass->skin['_wrapper'] = str_replace( "<% CSS %>"			, $css								, $this->ipsclass->skin['_wrapper']);

код

$copyright .= ВАШ КОД;

если до, то

$copyright = ВАША КОД.$copyright;

Вот аналогия.

 

А вот аналогия с str_replace, так же пишите до вставьте до

$this->ipsclass->skin['_wrapper'] = str_replace( "<% CSS %>"			, $css								, $this->ipsclass->skin['_wrapper']);

Вот код

$this->ipsclass->skin['_wrapper'] = str_replace( "ВАША СТРОКА В ШАБЛОНЕ"	, ВАША ФУНКЦИЯ			 , $this->ipsclass->skin['_wrapper']);

эм, понятно объяснил?

Поделиться сообщением


Ссылка на сообщение

Да, спасибо, вроде всё понятно. Пока не попробовал, но ничего страшного вроде не увидел.

А можно как-нибудь сделать вывод только на одной странице, т.е. вставлять не через общий шаблон форума, а через изменение HTML шаблонов? Или это не имеет принципиального значения?

Поделиться сообщением


Ссылка на сообщение

Только на одной странице? Вариантов множество. Можно просто редактировать нужный файл в ./sources/action_public/, можно в class_display.php сделай условите if($this->ipsclass->input['_low_act'] == ваш) то исполняем скрипт. Смотря, что вам надо. Так же можно отредактировать html фрагменты и сделать str_replace в class_display.php.

Поделиться сообщением


Ссылка на сообщение
Только на одной странице? Вариантов множество. Можно просто редактировать нужный файл в ./sources/action_public/, можно в class_display.php сделай условите if($this->ipsclass->input['_low_act'] == ваш) то исполняем скрипт. Смотря, что вам надо. Так же можно отредактировать html фрагменты и сделать str_replace в class_display.php.

В принципе получилось, но строчки типа <% TEST %> можно вставить только через общий шаблон, через фрагменты HTML - не получается (выглядит также <% TEST %> - не парсится).

Отсюда вопрос - как вставлять непосредственно в фрагменты HTML? - это был бы хороший вариант, т.к. не очень понял, как выбирать страницы с помощью условий.

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

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