dirak Опубликовано 20 Ноября 2007 Жалоба Поделиться Опубликовано 20 Ноября 2007 Здравствуйте. Помогите найти файл, который в админке редактировать можно так: Админцентр > Управление шаблонами > Изменение общего шаблона форума. Где этот файл "общего шаблона" находится? Мне просто нужно расширение html у него поменять на php. Ведь когда я шаблон загружал, я загружал его через xml, а куда он распаковывается я не знаю. Подскажите кто знает. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 20 Ноября 2007 Жалоба Поделиться Опубликовано 20 Ноября 2007 Не получится. Вообще говоря изначально все стили в базе хранятся и только потом кешируются в php файлы. А глобальный шаблон — нет, он грузится каждый раз из БД. И добавить в него PHP код нельзя. Единственная возможность — делать включение через exec.file, об этом можно почитать на форуме. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dirak Опубликовано 21 Ноября 2007 Автор Жалоба Поделиться Опубликовано 21 Ноября 2007 Не получится. Вообще говоря изначально все стили в базе хранятся и только потом кешируются в php файлы. А глобальный шаблон — нет, он грузится каждый раз из БД. И добавить в него PHP код нельзя. Единственная возможность — делать включение через exec.file, об этом можно почитать на форуме. Всё понятно, я почитал форум, php скрипты просто так через главную страницу не запустить. В общем я хотел сделать чтобы новые темы отображались на главной под главным баннером. Тема поддержки находится тут: http://www.ibresource.ru/forums/index.php?showtopic=22013 , но так как скрипт работает на php, но там решение этой проблемы я не увидел, тем более такая проблема может произойти с любым подобным скриптом. . Дело в том, что в инструкции написано, что вывод информации можно осуществить так:1. С помощью php include :<?php include("Абсолютный путь");?> 2. С помощью frame :<IFRAME src="Путь до latest_posts.php" width="400" height="100"scrolling="auto" frameborder="1"></IFRAME> Так вот, с фреймом всё работает нормально, но мне не нравится фрейм, тем более у меня на заднем фоне шаблона поставлена картинка и этот фрейм не в тему, да и много других минусов у него. А вот с помощью php include не хочет выводится (в файле общего шаблона). Попробовал вывести скрипт через простую страницу сайта (переименовав её в ".php") - всё работает, а тут никак. Поюзал поиск - много чего интересного и познавательного нашёл, но ничего не помогает. пробовал черерез exec:<!--exec.file="./файл.php"--> <!--exec.file="полный путь"--> через exec.url тоже Не помогает. Потом попробовал через classes/class_display.php: HTML$your_code = "kakoi-to code"; $this->ipsclass->skin['_wrapper'] = str_replace( "<% NAME %>", $your_code, $this->ipsclass->skin['_wrapper']); И этот NAME прописал в файле общего шаблона, но не помогает, выдаёт ошибку. Больше никак нельзя? Придётся смириться? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 21 Ноября 2007 Жалоба Поделиться Опубликовано 21 Ноября 2007 через exec.url тоже Не помогает.Точнее? Именно так это и можно сделать. Только не в глобальный шаблон вставляйте, а в любой обычный шаблон. И этот NAME прописал в файле общего шаблона, но не помогает, выдаёт ошибку.Какую? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dirak Опубликовано 21 Ноября 2007 Автор Жалоба Поделиться Опубликовано 21 Ноября 2007 Точнее? Именно так это и можно сделать. Только не в глобальный шаблон вставляйте, а в любой обычный шаблон. <!--exec.url="http://site.ru/forum/latest_posts.php"-->Вот таким образом. Но это я пробовал в глобальном шаблоне. Но как я понимаю, можно так сделать не в глобальном шаблоне, а на главной странице форума. Но как? Какую?Я имею ввиду так: Я добавил в classes/class_display.php: HTML$your_code = include("http://site.ru/forum/latest_posts.php");$this->ipsclass->skin['_wrapper'] = str_replace( "<% NAME %>", $your_code, $this->ipsclass->skin['_wrapper']); А потом <% NAME %> вписал в главный шаблон. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 21 Ноября 2007 Жалоба Поделиться Опубликовано 21 Ноября 2007 Я имею ввиду так:Прямо так не получится, нужно делать по аналогии с exec.*. Если нужно на главной, то смотрите шаблоны из группы skin_boards, если на всех, то в skin_global. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dirak Опубликовано 22 Ноября 2007 Автор Жалоба Поделиться Опубликовано 22 Ноября 2007 Я имею ввиду так:Прямо так не получится, нужно делать по аналогии с exec.*. Если нужно на главной, то смотрите шаблоны из группы skin_boards, если на всех, то в skin_global. А в skin_boards какой именно файлик или все? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 22 Ноября 2007 Жалоба Поделиться Опубликовано 22 Ноября 2007 Я добавил в classes/class_display.php: HTML$your_code = include("http://site.ru/forum/latest_posts.php");$this->ipsclass->skin['_wrapper'] = str_replace( "<% NAME %>", $your_code, $this->ipsclass->skin['_wrapper']); А потом <% NAME %> вписал в главный шаблон. ха-ха это просто жесть. Вот возможные способы инклуда скриптов: Инклудинг внешних php скриптов в IPB Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
dirak Опубликовано 22 Ноября 2007 Автор Жалоба Поделиться Опубликовано 22 Ноября 2007 Я добавил в classes/class_display.php: HTML$your_code = include("http://site.ru/forum/latest_posts.php");$this->ipsclass->skin['_wrapper'] = str_replace( "<% NAME %>", $your_code, $this->ipsclass->skin['_wrapper']); А потом <% NAME %> вписал в главный шаблон. ха-ха это просто жесть. Вот возможные способы инклуда скриптов: Инклудинг внешних php скриптов в IPBА как сделать так чтобы скрипт выводился только на главной странице форума? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 23 Ноября 2007 Жалоба Поделиться Опубликовано 23 Ноября 2007 напиши условие:if ( $this->ipsclass->input['act'] == "idx" ) { ... } Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.