Для того чтоб сайт поднятый на вашем локальном компьютере стал доступен с другого компьютера подключенного к вашей сети необходимо сделать следующее:
1. Идем в C:/WebServers/usr/local/apache/conf/httpd.conf и указываем серверу apache слушать 80 порт (данная строка по умолчанию закомментирована в целях безопасности, т.к. у denwer есть права админстратора) мы ее раскомментируем.
#Listen 80 заменим на: Listen 80
Поиск по сайту – необходиый инструмент при создании любого сайта (от визитки до социальной сети). Этому посвящено уже много статей, найти которые не составит для вас труда, но все они рассказывают об очень посредственном поиске. Я хочу рассказать о том как легко и без особых усилий вы можете сделать умный поиск на своем сайте. Под умным поиском я понимаю следующее:
1) проверка правописания в поисковой фразе
2) выделение корней значимых слов (stemming)
3) релевантный поиск по значимым словам
читать далее »
Как сделать сортировку в Grid на фреймворке Yii? Как запретить сортировку по тем или иным колонкам? Как настроить сортировку таблицы по какому либо полю по умолчанию (или по дефолту)? С этими вопросами сталкиваются как новички так и опытные программисты, вобщем все кому приходилось работать с фреймворком Yii. На все выше перечисленные вопросы вы найдете ответ в этом посте.
На самом деле все делается очень просто, как вы знаете в CGridView передается CActiveDataProvider который определяется прям во вьюхе, либо в модели. В любом случае нам лишь нужно передать необходимый параметр sort.
В своем примере я покажу это на примере таблицы Banners. В методе search зададим список колонок по которым разрешена сортировка, для этого тоже имеется несколько способов:
1. Указать массив названий колонок по которым разрешена сортировка:
$dataProvider = new CActiveDataProvider('Banners', array( 'sort'=>array('attributes'=>array('id','name')), // названия колонок по которым разрешена сортировка ));
Для подключения CKEditor к YII, я использовал расширения из yiiext. Скачиваем его и распаковываем в каталлог с расширениями. У меня получилось: application.extensions.ckeditor
Теперь создаем в этом каталоге, папку assets и распаковываем туда файлы самого CKEditor, которые скачиваем с официально сайта (я скачал ckeditor 4). Виджет отказался запускаться ссылаясь на некоторые ошибки. Чтобы он заработал открываем файл ECKEditor.php идем на строку 69 и меняем:
private $skin='moono'; на public $skin='moono'; // тут также можем указать свою тему
Дальше функция setLanguage($value), меняем:
if(isset($this->allowedLanguages[$language])) $this->language=$language; на if(isset($this->allowedLanguages[$lang])) $this->language=$lang;
Теперь виджет можно подключить следующим образом, как стандартный виджет yii.
читать далее »
Обычно WYSIWYG редактор требуется когда необходимо написать админку, в которой обычному пользователю не знающему html, будет легко и удобно добавлять собственные тексты. Так было и в моем случае.
Скачиваем CKEditor с официального сайта:
Скачиваем бесплатный файл менеджер KCFinder:
Стандартным способом интегрируем CKEditor на сайт. Добавляем на страницу скрипт ckeditor.js (в моем случае скрипт лежит в корне сайта в каталоге ckeditor). KCFinder я распаковал в папку ckeditor, просто для удобства.
<script src="/ckeditor/ckeditor.js"></script>
Пусть на странице имеется поле textarea которое нужно заменить WYSIWYG редактором:
<textarea name="ckeditor"></textarea> <script> CKEDITOR.replace( 'ckeditor' ); </script>
Работая программистом, очень часто приходится настраивать VirtualHost в Apache. Конечно это не занимает больше 10 минут, но все же время это деньги. Как же хорошо что не только denwer в windows может упростить задачу создания виртуальных хостов, в Ubuntu тоже есть такая возможность – это и есть тема данной статьи. Для начала рассмотрим процесс ручной настройки, а затем напишем sh скрипт для автоматического создания виртуальных хостов.
В каталоге /etc/apache2/sites-available создаём файл с именем «sitename.ru»
sudo gedit /etc/apache2/sites-available/sitename.ru