Модификации/фиксы Инстанта
Автор блога: | Protomoto |
Все рубрики (8)
Возникла необходимость навигации по статьям в категории через Алфавитный указатель (как в Универсальном каталоге)
Реализовал.
Есть: Алфавитный указатель, поддержка ЧПУ, а так же без ЧПУ, поддержка подкатегорий (ЧПУ вида site.com/tema1/tema1-1/tema1-1-1)
НЕТ: в админке не птички Выводить ли указатель - можно решить указанием другого шаблона вывода в настройках каталога
Реализовал.
Есть: Алфавитный указатель, поддержка ЧПУ, а так же без ЧПУ, поддержка подкатегорий (ЧПУ вида site.com/tema1/tema1-1/tema1-1-1)
НЕТ: в админке не птички Выводить ли указатель - можно решить указанием другого шаблона вывода в настройках каталога

+34
23 комментария
2094
Добрый день. Предлагаю исправление "забытой Богом" библиотеки
/includes/graphic.inc.php
Исправлено поведение при обработке прозрачности в PNG: теперь при изменении размера картинки сохраняется прозрачность
Это актуально для всех ресайзов: аватарки, фотоальбомы, статьи и пр...
необходимо заменить функцию function img_resize
/includes/graphic.inc.php
Исправлено поведение при обработке прозрачности в PNG: теперь при изменении размера картинки сохраняется прозрачность
Это актуально для всех ресайзов: аватарки, фотоальбомы, статьи и пр...
необходимо заменить функцию function img_resize
Продолжаем усоциаливать инстант
Как сделать имена типа user.instantcms.ru
Открываем core/cms.php строка 1526
в конце функции detectURI(), перед "return $uri;"
вставить
Внимание! Данная модификация может негативную SEO-реакцию, т.к. порождается много субдоменов с одинаковыми description
По поводу SEO - не ко мне
примеры: http://1c.allmarkets.com.ua , http://incolor.allmarkets.com.ua/
Как сделать имена типа user.instantcms.ru
Открываем core/cms.php строка 1526
в конце функции detectURI(), перед "return $uri;"
вставить
Код PHP:
Естественно, в настройках хостинга должна быть включена обработка несуществующих субдоменов основным сайтом//tarzan обработка субдоменов $inDB = cmsDatabase::getInstance(); if (strpos($_SERVER['HTTP_HOST'],'www.')!==false){ header('location: http://site.com'.$_SERVER['REQUEST_URI']); exit; } if (preg_match('/([a-z,A-Z,0-9,\-,\_]+)\.site\.com/', $_SERVER['HTTP_HOST'], $matches)){ if (isset($matches[1])){ $q = "SELECT id,login FROM cms_users WHERE login LIKE '".mysql_real_escape_string($matches[1])."' LIMIT 0,1"; $result = $inDB->query($q) ; //если есть такой пользователь - обрабатываем if ($r = $inDB->fetch_assoc($result)){ if ($_SERVER['QUERY_STRING']=='') { $uri='users/'.$r['login'];} //показываем страницу профиля elseif (!strstr($_SERVER['QUERY_STRING'],'users/'.$r['login'])){ //если запрошена страница вне профиля пользователя, перенаправляем в основной адрес header('location: http://site.com'.$_SERVER['REQUEST_URI']); exit; } } } }
Внимание! Данная модификация может негативную SEO-реакцию, т.к. порождается много субдоменов с одинаковыми description
По поводу SEO - не ко мне
примеры: http://1c.allmarkets.com.ua , http://incolor.allmarkets.com.ua/
Nikitka: |
А как можно сделать чтоб адрес выглядел не как сейчас например /users/nikitka просто http://instantcms.ru/nikitka |
находим обработку компонента по умолчанию (строка 1565)
Код PHP:
заменяем его на это//если компонент не существует, считаем что это content $this->uri = 'content/'.$this->uri; $this->is_content = true; return 'content';
Как вы все знаете, в InstantCMS для вывода галереи используется Lightbox - очень хорошая вещь.
Но недавно задался вопросом - при просмотре слишком долго подгружается следующая картинка. Залез в код, начал дописывать...но стоп! Есть ведь тут загрузка ближайших картинок (следующей и предыдущей) и она работает (проверяем отключением Интернета - да следующая картинка уже есть в кеше). В чем же дело? Оказывается, вся проблема в "красоте" - т.е. в код заложены задержки
1. На показ нам процесса загрузки
2. На эффектное изменение размера лайтбокса
3. На эффектное центрирование лайтбокса
В результате мы смотрим не фотки, а эффекты лайтбокса
Поэтому, я перелопатил код и поубирал лишние задержки.
Пример работы - здесь http://shoka.com.ua/photos/101
Необходимо скачать файл, разархивировать, и заменить его на сайте includes/jquery/lightbox/js/jquery.lightbox.js
Качаем файл здесь
Но недавно задался вопросом - при просмотре слишком долго подгружается следующая картинка. Залез в код, начал дописывать...но стоп! Есть ведь тут загрузка ближайших картинок (следующей и предыдущей) и она работает (проверяем отключением Интернета - да следующая картинка уже есть в кеше). В чем же дело? Оказывается, вся проблема в "красоте" - т.е. в код заложены задержки
1. На показ нам процесса загрузки
2. На эффектное изменение размера лайтбокса
3. На эффектное центрирование лайтбокса
В результате мы смотрим не фотки, а эффекты лайтбокса
Поэтому, я перелопатил код и поубирал лишние задержки.
Пример работы - здесь http://shoka.com.ua/photos/101
Необходимо скачать файл, разархивировать, и заменить его на сайте includes/jquery/lightbox/js/jquery.lightbox.js
Качаем файл здесь
Разработал модуль "Карусель товаров" (анимированный)
Разработка заключалась в объединении модуля топ-товаров каталога (mod_uc_popular) с java-script каруселью jCarousel (http://sorgalla.com/jcarousel/)
Разработка заключалась в объединении модуля топ-товаров каталога (mod_uc_popular) с java-script каруселью jCarousel (http://sorgalla.com/jcarousel/)

Вот, зарегался (повторно) в Инстанте, и меня сразу же буквально в аське нашел человек, которому интересен Инстант. Привожу ответ на его вопрос (может кому-то пригодится)
Как закрыть страницу /users (либо аналогичные)
Как закрыть страницу /users (либо аналогичные)