Архив категории "PHP"

Добавляем CKFinder к модулю FCKEditor для Drupal

13:56, 19-ое Октября 2009, Автор: Q-Zma, Рубрики: Drupal, Open source, PHP

В процессе создания одного сайта столкнулся с отсутствием поддержки CKFinder в модуле FCKEditor для Drupal.

Поковырявшись в интернетах и исходниках модуля, состряпал следующее решение это проблемы:

  1. В settings.php вашего сайта (обычно этот файл находится здесь: sites/default/settings.php) найдите и раскомментируйте параметр $cookie_domain (если он закомментирован, конечно, в случае, если он уже раскомментирован — убедитесь, что его значение корректно). Если этот параметр не будет установлен или будет установлен неверно, то FCKEditor откажется загружать CKFinder под предлогом, что браузер файлов отключен.
  2. Скачайте дистрибутив CKFinder и распакуйте его в директорию модуля.
  3. Откройте файл fckeditor.config.js в корневой директории модуля и добавьте в конец следующие строки:
    FCKConfig.LinkBrowserURL = '/ckfinder/ckfinder.html';
    FCKConfig.ImageBrowserURL = '/ckfinder/ckfinder.html?type=Images';
    FCKConfig.FlashBrowserURL = '/ckfinder/ckfinder.html?type=Flash';
    FCKConfig.LinkUploadURL = '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files';
    FCKConfig.ImageUploadURL = '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Images';
    FCKConfig.FlashUploadURL = '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Flash';
    
  4. Откройте файл fckeditor.module, найдите следующие строки:
    if ($advanced_uploads) {
      $js .= $js_id .".Config['LinkBrowserURL'] = \"". $module_full_path ."/fckeditor/editor/filemanager/browser/default/browser.html?Connector=". $connector_path ."&ServerPath=". $files_path ."\";
      ". $js_id .".Config['ImageBrowserURL'] = \"". $module_full_path ."/fckeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=". $connector_path ."&ServerPath=". $files_path ."\";
      ". $js_id .".Config['FlashBrowserURL'] = \"". $module_full_path ."/fckeditor/editor/filemanager/browser/default/browser.html?Type=Flash&Connector=". $connector_path ."&ServerPath=". $files_path ."\";\n";
    }
    

    и замените их на:

    if ($advanced_uploads) {
      $js .= $js_id.".Config['LinkBrowserURL'] = '".$module_full_path."/ckfinder/ckfinder.html';
      ".$js_id.".Config['ImageBrowserURL'] = '".$module_full_path."/ckfinder/ckfinder.html?type=Images';
      ".$js_id.".Config['FlashBrowserURL'] = '".$module_full_path."/ckfinder/ckfinder.html?type=Flash';\n";
    }
    
  5. Откройте файл ckfinder/config.php, найдите пустую функцию CheckAuthentication и замените её:
    function CheckAuthentication () {
      static $authenticated; 
      if (!isset($authenticated)) {
        $drupal_path = "../../../";
        if(!file_exists($drupal_path . "/includes/bootstrap.inc")) {
          $drupal_path = "../..";
          do {
            $drupal_path .= "/..";
            $depth = substr_count($drupal_path, "..");
          }
          while(!($bootstrapFileFound = file_exists($drupal_path . "/includes/bootstrap.inc")) && $depth<10);
        }
        if (!isset($bootstrapFileFound) || $bootstrapFileFound) {
          $cwd = getcwd();
          chdir($drupal_path);
          require_once "./includes/bootstrap.inc";
          drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
          $authenticated = user_access("allow fckeditor file uploads");
          chdir($cwd);
        }
      } 
      return $authenticated;
    }
    $config['Enabled'] = CheckAuthentication();
    

    далее найдите параметр $baseUrl и установите его значение:

    $baseUrl = '/' . file_directory_path() . '/';
    
  6. Enjoy.

К сожалению, сайт некого voyageur, автора оригинального решения, на котором базируется моё, в настоящий момент в дауне, поэтому ссылку не привожу.

Перейти к началу страницыПостоянная ссылка Комментарии не разрешены

Перевод FeedWordPress 2009.0707

00:42, 11-ое Августа 2009, Автор: Q-Zma, Рубрики: FeedWordPress, Open source, PHP, WordPress

В процессе работы над одним проектом возникла необходимость создать агрегатор RSS лент. Порыскав по просторам интернетов, нашёл офигенный плагин для WordPress — FeedWordPress. Одна беда — автор, как и многие забугорные разработчики, позабыл, что в мире существует огромный пласт людей, которые разговаривают (а иногда даже читают и пишут) на языках отличных от английского. После нескольких дней ковыряния в исходниках и натравливания штатных вордпрессовских тулзей для переводчиков, удалось выковырять все языкозависимые строки и сгенерировать gettext шаблон.

Адаптированную для перевода версию можно скачать здеся. Архив комплектуется gettext шаблоном, а так же альфа-версией русского перевода, так что по поводу качества русификации просьба не пинать, если есть конкретные дельные предложения по переводу — предлагать.

Перейти к началу страницыПостоянная ссылка Комментарии не разрешены

Полезные модули Drupal для client side разработчика

11:44, 26-ое Мая 2009, Автор: Q-Zma, Рубрики: Drupal, Javascript, jQuery, Open source, PHP

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

jQuery Update

Как вы наверняка знаете — jQuery в Drupal является основной javascript-библиотекой, однако, в связи с тем, что Drupal содержит довольно много зависящих от jQuery фишек, обновлять библиотеку в ядре с каждым минорным релизом Drupal у сообщества не принято. Но, так как почти каждый релиз jQuery совершает маленькую революцию, некоторые из членов сообщества озаботились актуальностью версии библиотеки, и в помощь революционерам был создан модуль jQuery Update. Для того, чтобы использовать самые последние возможности jQuery — установите и активируйте этот модуль. Для 5-ой версии Drupal потребуются некоторые дополнительные телодвижения типа замены кое-каких файлов в ядре, в 6-ой же версии всё начинает функционировать сразу после активации модуля.

jQuery UI

Этот модуль является обёрткой для интеграции jQuery UI — библиотеки компонентов для разработки пользовательских инетрфейсов. Сам по себе модуль не содержит дистрибутива jQuery UI, поэтому после его установки вам потребуется установить девелоперский дистрибутив jQuery UI, подробные инструкции смотрите в README.txt. После установки и активации у вас появится возможность разрабатывать модули, которые используют какие-либо компоненты jQuery UI, подробности, опять же, смотрите в README.txt.

jQuery plugins

jQuery — довольно популярная библиотека, благодаря большому сообществу существуют тысячи плагинов реализующих ту или иную функциональность, зачем изобретать велосипед, если что-то уже было реализовано до вас? Конечно, если вы не начинающий web-разработчик, как известно, каждый начинающий должен изобрести какое-то количество велосипедов :). Данный модуль предназначен для централизованного хранения и использования плагинов jQuery, подробности как всегда смотрите в README.txt.

Перейти к началу страницыПостоянная ссылка Комментарии не разрешены

Перевод темы Sandbox для WordPress

23:41, 12-ое Мая 2009, Автор: Q-Zma, Рубрики: Open source, PHP, WordPress

Перевёл на досуге тему Sandbox для WordPress на русский, может кому пригодится — брать здеся. Просто распакуйте архив в директорию темы.

Перейти к началу страницыПостоянная ссылка Комментарии не разрешены

Установка memcache для PHP в Windows

15:32, 12-ое Мая 2009, Автор: Q-Zma, Рубрики: Open source, PHP

Установка демона memcached

  1. Скачиваем скопиленную win32 версию отсюда.
  2. Устанавливаем сервис memcache:
    • Распакуйте скачанное в директорию, куда мы хотим установить memcached, например в c:\memcached (по идее там должен быть один файл — memcached.exe).
    • Если вы счастливый пользователь Windows Vista, то вы не забудьте поставить галочку напротив «Run this program as an administrator» во вкладке compatibility в свойствах исполняемого файла.
    • Установите сервис из командной строки: c:\memcached\memcached.exe -d install.
    • Запустите сервер из Microsoft Management Console или из командной строки одной из следующих команд: c:\memcached\memcached.exe -d start или net start "memcached Server".

Установка расширения PHP для работы с memcache

  1. Загляните в директорию расширений PHP (обычно это что-то типа: C:\php\ext) и попытайтесь там найти файл php_memcache.dll, если вам не повезло его обнаружить, то попробуйте его найти в одном из нижеперечиленных мест:
  2. Теперича нужно подправить конфигурационный файл php:
    extension=php_memcache.dll
  3. Перезапускаем apache.
  4. Пробуем:
    <?php
    $memcache = new Memcache;
    $memcache->connect("localhost",11211); # You might need to set "localhost" to "127.0.0.1"
    echo "Server's version: " . $memcache->getVersion() . "\n";
    $tmp_object = new stdClass;
    $tmp_object->str_attr = "test";
    $tmp_object->int_attr = 123;
    $memcache->set("key", $tmp_object, false, 10);
    echo "Store data in the cache (data will expire in 10 seconds)\n";
    echo "Data from the cache:\n";
    var_dump($memcache->get("key"));
    ?>
    

Если вы не видите ошибок, значит всё в порядке, вы уже юзаете memcache!

Настройки демона

По умолчанию memcached использует 64 мегабайта памяти, такого количества памяти может быть недостаточно для большинства веб-приложений. Для того, чтобы изменить количество используемой демоном памяти вам придётся поковыряться в реестре: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server, найдите ключ ImagePath и измените его значение:

C:\memcached\memcached.exe” -d runservice -m 512

Теперь, когда вы перезапустите memcached, он будет использовать 512 мегабайт памяти.

Эта статья — вольный перевод, оригинал: Installing memcache on Windows for PHP



Май 2017
Пн Вт Ср Чт Пт Сб Вс
« Июл    
1234567
891011121314
15161718192021
22232425262728
293031  
Вы просматриваете архивы рубрики PHP.

Поиск

Архивы

Категории

Разное

Изменения

Рекомендую

  • WordPress
  • Get Firefox! b2evolution

Стандарты

  • Valid XHTML Transitional 1.0! Valid CSS!
  • Valid RSS!