-
Постов
160 -
Зарегистрирован
-
Посещение
-
Победитель дней
9
Тип контента
Профили
Загрузки
База знаний IPS Community Suite 4
База знаний IP.Board 3.x
Форумы
События
Магазин
Совместные покупки
Сообщения, опубликованные Dmitriy427
-
-
Хук для класса \IPS\Theme:
public function getTemplate( $group, $app=NULL, $location=NULL ) { if( $group == 'my_group' and $app == 'my_app' and $location == 'my_location' ) { $template = parent::getTemplate( $group, $app, $location ); $search = preg_match( 'my_pattern', $template, $match ) ? $match[1] : false; if( $search ) { $replace = '<!--my_replece_code-->'; $template = str_replace( $search, $replace, $template ); } return $template; } return parent::getTemplate( $group, $app, $location ); }
-
Функцию удалять или комментировать не нужно, будут ошибки JS при обращении к ней, достаточно закомментировать её содержимое и добавить строку 'return;'. При компиляции файла скрипта в дисковый кэш комменты удаляются автоматически.
-
2 часа назад, Desti сказал:
preg_match на весь вывод, шаблон в коде.. А если там на пару-тройку строк фрагмент в неуникальных селекторах? Не, не наш метод.
Очевидно, это не Ваш метод, поскольку регулярные выражения Вам изучать влом. Но это метод использующийся IPS, в том же sendOutput весь вывод прогняетяся через регулярки методами parseOutputForDisplay, parseFileObjectUrls, replaceEmojiWithImages. К тому же это только пример, делайте замены с нужным шаблоном - \IPS\Theme\Template, никто против не будет.
-
Ищите в таблице `core_javascript`, строку с `javascript_name`='ips.core.navBar.js'
-
В регулярке лишняя треугольная закрывающая скобка, на коленке писал... Правильно - '#<div\sclass="zzz"><h1\sclass="www">Title</h1></div>\n?\r?(<a[^<]*</a>)#s'. С ней в общем-то варианты возможны.
-
Заменить что угодно в выводе ничто не мешает и штатными средствами PHP. Например хуком для класса \IPS\Output:
public function sendOutput( $output='', $httpStatusCode=200, $contentType='text/html', $httpHeaders=array(), $cacheThisPage=TRUE, $pageIsCached=FALSE, $parseFileObjects=TRUE, $parseEmoji=TRUE ) { if( preg_match( '#<div\sclass="zzz"><h1\sclass="www">Title</h1></div>\n?\r?(<a[^<>]*</a>)#s', $output, $match ) ) { $replace = '<!--my_replece_code-->'; $output = str_replace( $match[1], $replace, $output ); } parent::sendOutput( $output, $httpStatusCode, $contentType, $httpHeaders, $cacheThisPage, $pageIsCached, $parseFileObjects, $parseEmoji ) }
-
Или даже не так: Обработчик шлюза, размещенный разработчиком в папке плагина, в соответствии с нативной логикой приложения, тупо не будет работать, из-за этой правки.
-
Ну, вот тоже действие не сложно осуществить хуком плагина, расширяющим каласс \IPS\nexus\Gateway, но если сделать правку предлагаемую fortek, то вы не сможете разместить обработчик шлюза в папке плагина, только по фиксированному пути.
-
1 час назад, Respected сказал:
Такая правка имеет место быть, но проживёт до первого обновления форума. А там придётся вспоминать что и где правил.
Очевидно вы имеете ввиду разные правки. Добавление своей пары ключ-значение, в массив возвращаемый функцией gateways(), ничего не ломает, в отличии от правки fortek .
-
Там и так всё отлично копируется, прямо со страницы. У вас ФФ, похоже, глючит не по-децки. "Акура" - "mark=58".
-
У меня было, пока уведомления не отключил. Довольно странный у вас тут антидидос-скрипт, если на аякснотификатор движка раз в минуту запрсы отсылающий реагирует.
-
{lang="$topic->container()->parents()[0]->_title"}
-
Зависит от того - что за массив вы хотите получить:
$select = array(); foreach( \IPS\Db::i()->select('image_id', 'gallery_images', array('image_updated>?', '1538300099'),'image_id DESC', array( 0, 10 ) ) as $row ) { //$select[] = $row; $select[ $row['image_id'] ] = $row['gallery_images']; }
Сори, за копипастом не уследил. Правильно в Вашем случае так:
$select = array(); foreach( \IPS\Db::i()->select('image_id', 'gallery_images', array('image_updated>?', '1538300099'),'image_id DESC', array( 0, 10 ) ) as $row ) { $select[] = $row; }
-
-
Человеку, похоже, хочется вставить в шаблон готовый спагетти-код и совершенно не хочется заморачиваться с ООП, и разделением логики и представления. Вобщем-то, логично будет посоветовать подойти к вопросу кардинально и пересмотреть свой выбор движка. Например в тройке инклюды в шаблон возможны.
40 минут назад, WaNted сказал:dev/setup/install.php можете там намудрить с созданием своего php-файла. Чтобы во время установки создавался файл с нужным содержимым.
Кстати, многие разработчики, используя возможности класса ips_plugins_setup_install, даже не подозревают о возможности, а часто и необходимости удаления созданных с его помощью ресурсов (файлов, таблиц, полей, строк...), при деинсталяции плагина. Я и сам далеко не сразу узнал о файле uninstall.php создаваемом в корневой папке плагина.
-
Циклическая CSS-анимация грузит процессор не милосердно, не рекомендуется к использованию пока что.
https://css-live.ru/articles/proizvoditelnost-css-animacij-nerasskazannaya-istoriya-s-kommentariyami-pola-ajrisha.html
-
Повторюсь - в вашем вопросе ничего нет о странице темы, и на этом мы общение завершим, пожалуй.
-
Это работает на странице форума, с большим количеством тем, в артиклес на страницах категорий, в блогах, клубах и т.д.
Впрочем, Вам похоже важно не это. Впредь самоутверждаться Вы будете без моей помощи.
-
-
Яваскрипт в шаблонах IPS4 удаляется парсером движка. При написании плагина создавайте файл /plugins/my_plugin/dev/js/my_plugin.js
-
-
Конфликтовать они никак не могут. В настройках веб-сервера явным образом указывается файл сертификата, какой указали, такой будет использоваться.
-
-
Скорее всего не верное время на сервере, проверьте настройки системных часов.
Theme plugins
в Техническая поддержка IP.Board
Опубликовано
Да, не вопрос. Я просто забыл, что сталкивался уже с Вашим примечательным ЧСВ и обещал не мешать самовыражаться.