Перейти к контенту
  • 0

Использование скриптов с личного профиля на главной странице


NCsoft

Вопрос

Доброго времени суток !

 

в общем сообосную проблему :

 

Есть сайт , стоящий на движке IPB 3.1.4

Есть программа которая взаимосвязанная с сайтом , а именно :

 

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

 

вот нужно поместить информацию для нашей программы на главную страницу в боковую панель !

 

трудностей настроить два приложения (IPB) (APP Win) не составило !

 

Вот только IPB 3.1.4 категорически отказывается выполнять свои же скрипты (Движок IPB не подлежал ни каким модификациям , всё в заводском режиме)

а именно :

 

добавлены новые поля дополнительной информации в личном профиле

 

http://www.imageup.ru/img227/1210431/untitled.png

 

в личном профиле они работают без каких либо проблем !

 

http://www.imageup.ru/img227/1210434/untitled.png

 

нам нужно пометить данный раздел на главную страницу в боковую панель

 

http://www.imageup.ru/img227/1210437/untitled.png

 

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

 

--------------------------------------

 

В общем на странице профиля он работает нормально и работает он от скрипта :

 

profileModern

 <if test="pcfieldsOther:|:$member['custom_fields']">
  <foreach loop="pcfieldsOtherLoop:$member['custom_fields'] as $group => $mdata">
<if test="pcfieldsOtherLoopCheck:|:$group != 'profile_info' AND $group != 'contact'">
 <if test="pcfieldsOtherLoopCheck2:|:is_array( $member['custom_fields'][ $group ] ) AND count( $member['custom_fields'][ $group ] )">
  <div class='other_contact clearfix'>
   <div class='clearfix' id='custom_fields_{$group}'>
	<h3 class='bar'>{$member['custom_field_groups'][ $group ]}</h3>
	<dl>
	 <foreach loop="pcfieldsOtherLoopCheckInner:$member['custom_fields'][ $group ] as $key => $value">
	  {$value}
	 </foreach>
	</dl>
   </div>
  </div>
 </if>
</if>
  </foreach>
 </if>

 

и

 

customField__generic

<if test="$f->parsed != ''">
<dt>{$f->raw_data['pf_title']}:</dt>
<dd>
 <if test="genericIsArray:|:is_array($f->parsed)">
  {parse expression="implode( '<br />', $f->parsed )"}
 <else />
  {$f->parsed}
 </if>
</dd>
</if>

 

то-есть сюда подгружается только те таблицы которые были созданы вручную! не системой .

 

данный код пытались вставить на главную страницу как реклама , и как просто дополнения к шаблону в разделы globalTemplate и boardindexTemplate (из настроек Стилей) в положенные места но результат один и тот же , а именно - он не понимает свои же скрипты которые используются в личном профиле системы IPB , даже при всех 3х вариантах !

 

http://www.imageup.ru/img227/1210441/untitled.png

 

так же применяли код для идентичного визуального отображения :

 

 

<div class='general_box alt clearfix' id='hook_watched_items'>
	<h3>Учебное заведение</h3>

 <if test="pcfieldsOther:|:$member['custom_fields']">
  <foreach loop="pcfieldsOtherLoop:$member['custom_fields'] as $group => $mdata">
<if test="pcfieldsOtherLoopCheck:|:$group != 'profile_info' AND $group != 'contact'">
 <if test="pcfieldsOtherLoopCheck2:|:is_array( $member['custom_fields'][ $group ] ) AND count( $member['custom_fields'][ $group ] )">
  <div class='other_contact clearfix'>
   <div class='clearfix' id='custom_fields_{$group}'>
	<h3 class='bar'>{$member['custom_field_groups'][ $group ]}</h3>
	<dl>
	 <foreach loop="pcfieldsOtherLoopCheckInner:$member['custom_fields'][ $group ] as $key => $value">
	  {$value}
	 </foreach>
	</dl>
   </div>
  </div>
 </if>
</if>
  </foreach>
 </if>

</div>

 

и без данного визуального кода тоже пробовали , всё равно скрипты отображения дополнительной информации работать не хотят ! та же история и с IPB 3.3.3 !

 

Будьте любезны ! Подскажите что делать ? Очень срочно нужно !

 

есть и другой вариант (не сильно ним удовлетворены) но с ним тоже проблема , сделать что бы главной страницей был не форум а страница профиля пользователя (что то в роде как в соц сети ВКонтакте , после авторизации видна страница профиля)

но как это осуществить тоже остаётся загадкой .

 

как делать это - мы в курсе

 

initdata.php

 

/**
* Default app name
* You can set this in your own scripts before 'initdata.php' is required.
*/
if ( ! defined( 'IPS_DEFAULT_PUBLIC_APP' ) )
{
define( 'IPS_DEFAULT_PUBLIC_APP', 'forums' );
}

 

вот только проблема в том что заместо

    define( 'IPS_DEFAULT_PUBLIC_APP', 'forums' );

что писать ?

 

Есть ли подобные хуки ?

- в лучшем случае хук для отображения дополнительной информации с профиля на главной странице ! (Готовы приобрести если есть такие в продаже!)

или же хуки для отображение профиля за место главной страницы по умолчанию ?

 

надеюсь выразился понятливо в какой помощи нуждаемся ...

 

Благодарствуем за выделенное внимание , и за затраченное время для ознакомления с данной петицией о помощи !

 

с Уважением ваши покорные фанаты IPB )))

Изменено пользователем NCsoft
Ссылка на комментарий
Поделиться на других сайтах

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

  • 0
а именно - он не понимает свои же скрипты которые используются в личном профиле системы IPB , даже при всех 3х вариантах !

 

Естественно не понимает, если это разные шаблоны и отрабатывают они в разных моментов времени при разных обстоятельствах. Вы должно уяснить, что нельзя один шаблон или его код вставить в другой и он будет чудесным образом работать как на прежнем месте. Там он вызывается из скрипта где ему передаются все необходимые для работы параметры. Самый лучший вариант написать хук для boardIndexTemplate который будет выводить блок в сайдбаре с нужными вам данные.

 

Как вариант вместо $member заюзать $this->memberData

Ссылка на комментарий
Поделиться на других сайтах

  • 0

<div class='general_box alt clearfix' id='hook_watched_items'>
			<h3>Учебное заведение</h3>

 <if test="pcfieldsOther:|:$this->memberData['custom_fields']">
  <foreach loop="pcfieldsOtherLoop:$this->memberData['custom_fields'] as $group => $mdata">
	<if test="pcfieldsOtherLoopCheck:|:$group != 'profile_info' AND $group != 'contact'">
	 <if test="pcfieldsOtherLoopCheck2:|:is_array( $member['custom_fields'][ $group ] ) AND count( $this->memberData['custom_fields'][ $group ] )">
	  <div class='other_contact clearfix'>
	   <div class='clearfix' id='custom_fields_{$group}'>
			<h3 class='bar'>{$this->memberData['custom_field_groups'][ $group ]}</h3>
			<dl>
			 <foreach loop="pcfieldsOtherLoopCheckInner:$this->memberData['custom_fields'][ $group ] as $key => $value">
			  {$value}
			 </foreach>
			</dl>
	   </div>
	  </div>
	 </if>
	</if>
  </foreach>
 </if>

</div>

 

Нет результатов , то же самое ...

 

Есть каието мануалы или инфа как сделать хук или же где его заказать ?

Изменено пользователем NCsoft
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

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

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

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

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.