OpenStore на Хабре. Неистово плюсуем
Прошу поддержать плюсиками:
OpenStore — бесплатная сборка интернет — магазина на основе Drupal и Ubercart
Прошу поддержать плюсиками:
OpenStore — бесплатная сборка интернет — магазина на основе Drupal и Ubercart
Надысь в мои руки попал официальный перевод Друпал 7 на drupal.org и я снова убедился — хочешь сделать как надо — сделай сам и с нуля.
Качество перевода, мягко говоря, страдает. И дело не в описках мелких, запятых всяких — это всё мелочи.
Поражает атмосфера методичного и беспробудного тупилова, в которой это всё переведено.
Ребята, английский нельзя переводить дословно. Одно английское слово заменяет два, а то и три русских, что оставляет пространство для некоторого смыслового манёвра. Надо этим пользоваться и пересказывать своими словами.
Вообщем, говнецо я подчистил (допускаю, что там ещё на дне осталось), проверил по мере сил контекстно в интерфейсе.
В архиве 2 файла
Импорт, сначала drupal.ru.po, потом includes.po, иначе строки в некоторых местах слегка коряво (не критично) будут переведены
Буду премного благодарен. Обещаю вести себя культурно
Сам то я нигде почти не бываю.
Тематика форумов:
Общее сайтостроение
Коммерсц в интернете
НЕ НАДО:
узкоспециализированные форумы гиков и линуксоидов
Несколько запоздало (в свете выхода 7-й версии) представляю свою сборку Drupal 6.x + Ubercart 2.x под названием OpenStore.
UPD от 22.01.2011 Качаем последний dev!
Более 2-х лет назад я столкнулся с такой штукой как Drupal пятой модели. Мой интерес был практический - сделать интернет-магазин, который можно было бы расширять по мере необходимости, имел бы понятную архитектуру, и тд... До этого у меня были непродолжительные романы с другими решениями для e-commerce вроде Oscommerce и проч., к которым я довольно быстро охладел.
Drupal был свеж, заманчив, обещал много разных благ, а в связке с Ubercart, похоже, должен был дать всё то, о чём я и не мечтал. Я решил смастерить свой свечной заводик в течении месяца-два... Но, господа, недаром Друпликон ухмыляется как Мона Лиза
Самостоятельная разботка интернет-магазина на основе Drupal для человека, незнакомого с API Drupal, и, тем более, с php, и, тем более, с базовыми знаниями CSS+HTML представляет собой кромешный ад и не может быть рекомендована, если вы хотите просто начать свой бизнес в сети, т.е вас интересует немедленный результат
Возникла проблема при сохранении текста, содержащего хтмл теги
Код
<?php
$text = '
<h3><a id="1" name="1">Заголовок</a></h3>
<p>текст</p>
.... много текста
<p>текст</p>
';
$node = new stdClass();
$node->title = 'Заголовок';
$node->body = $text;
$node->type = 'page';
$node->created = time();
$node->changed = time();
$node->path = 'about';
$node->status = 1;
$node->promote = 1;
$node->sticky = 0;
$node->format = 3; // формат ввода, 3 - php
$node->uid = 1;
node_save($node); // сохраняем
?>
Как видим формат ввода установлен в 3, что соответсвует php фильтру
Текст не сохраняется. Простой текст сохраняется
Озанчает ли это, что при сознании ноды через node_save() настройки фильтра игнорируются и применяется некий дефолтный фильтр?
Или я чего упустил?
Возьмём пресеты, которые добавляет Уберкарт. Задача изменить действия в них и/или добавить другие действия
Я соорудит такой код:
<?php
$presets
= array(
array(
'presetname' => 'product',
'actions' => array(
array(
'action' => 'imagecache_crop',
'data' => array('width' => 300, 'height' => ''),
'weight' => 0,
'module' => 'imagecache',
),
array(
'action' => 'canvasactions_canvas2file',
'data' => array('xpos' => 'center', 'ypos' => 'center', 'path' => 'actions/pad_300_300.gif', 'dimensions' => 'background',),
'weight' => 1,
'module' => 'imagecache_canvasactions',
),
),
),
array(
'presetname' => 'uc_thumbnail',
'actions' => array(
array(
'action' => 'imagecache_scale',
'data' => array('width' => 55, 'height' => 55, 'upscale' => 0),
'weight' => 0,
'module' => 'imagecache',
),
array(
'action' => 'canvasactions_canvas2file',
'data' => array('xpos' => 'center','ypos' => 'center', 'path' => 'actions/pad_60_60.gif','dimensions' => 'background'),
'weight' => 1,
'module' => 'imagecache_canvasactions',
),
),
),
array(
'presetname' => 'product_full',
'actions' => array(
array(
'action' => 'imagecache_scale',
'data' => array('width' => 600, 'height' => 600, 'upscale' => 0),?>
Аксель, http://drupal.ru/username/megaraz, будь-ласка, потрібно знищити
hook_views_default_views_alter() - такая нужная функция и так мало о ней написано!
Кто переписывал дефолтные вьюхи при помощи этой функции, попросил бы скинуть образец того, что вы сделали.
Спасибо
Народ, использующий Features для своих видов: как переписываете дефолтные виды, которые предоставлены различными модулями?
Тока вручную, через hook_views_default_views_alter() и больше никак?
По аналогии с пустым текстом для блоков, предоставляемых вьюсами, но для обычных системных или блоков от других модулей
Что нибудь попроще
Всем, в том числе и мне, известно, что при установке Друпал подхватывает переводы для того или иного модуля, если он лежит в папке модуля по адресу translations/код_языка.po, а как быть с переводами для системных файлов .inc в директории /includes?
Неужели только ручками? Сразу скажу, что вариант с объединением перевода для /includes с каким нибудь переводом модуля не подходит по некоторым причинам - всё должно быть отделено
Пробовал ложить перевод в includes/translations/код_языка.po и это не работает
Парни, как я понял Features не поддерживает дефолтные вьюхи (т.е те, которые прописаны в файлах), вопрос:
Есть модуль который имеет дефолтный вид и использует его. Я не могу просто выключить его вьюху и создать свою - он использует только свою и это в коде
Его вьюху можно переписать вручную, а как это сделать програмно? Задача переписать вид модуля через инсталляционный профиль.
Вопрос скорее по PHP сломал мозг, не могу понять, в чём дело
<?php
Fatal error
При установке модуля domain access как известно требуется добавить в settings.php строчку со ссылкой на его конфиг
У меня этот модуль ставится из установочного профиля. Так как я не могу записать нужную строку в settings.php перед установкой системы (установка не пойдёт вообще), то я решил записывать нужную строку на конечном этапе установки
Соорудил код:
<?php
function write_domain_conf () {
$modules = module_list(FALSE, TRUE, FALSE, NULL);
if (in_array('domain', $modules)) {
global $base_path;
$filename = $base_path . conf_path() . '/settings.php';
$path = $base_path . 'sites/all/modules/domain/settings.inc';
$conf = "include '$path';";
chmod($filename, 0777);
if (is_writable($filename)) {
fopen($filename, 'a+');
fwrite($filename, $conf);
fclose($filename);
}
chmod($filename, 0444);
}
}
?>
Это не работает, думаю дело в правах. Директории, в которых находится settings.php имеют права 777, сам settings.php тоже как бы должен иметь 777 (тот же владелец ведь?)
В чём может быть проблема?
Профиль установки, с самого начала, заменить системный Гарланд на свою, которая используется только при установке
Без хака ядра, кто нибудь делал?
Никогда не обращал на это внимание, но сегодня, в процессе написания профиля установки, столкнулся с тем, что юзер №2 никак не хочет создаваться. Первым идёт админ, второго нет. Пробовал обновлять запросом - ноль эффекта, всё так же юзер №3 самый первый за админом. Встречал скудные упоминания об этом баге на орге, вроде связано с БД.
Кто нибудь из знатоков MySQL просветите, почему есть юзер 1, но нет №2?
Часто встречаю.
Объясните тайный смысл.
Коллеги, подскажите максимально простой способ загрузки перевода сборки из одного большого .po из профиля установки
Я смотрел установочный профиль Open Atrium, там используется l10n_update, который тянет перевод с ихнего сервера. Это нехило так усложняет задачу, завести свой сервер локализации у меня в планах явно не на первом месте.
Более лёгкий способ?
Спасибо.
Ситуация: есть некоторая абстрактная сборка Друпал
Сборка настроена от а до я, что подразумевает использование дампа БД. В процессе тестинга вносятся правки как в код, так и в БД.
С патчем файлов всё ясно, чего не скажешь про БД.
Посоветуйте софт для Mysql который:
1) Желательно фриварный
2) позволяет сравнивать два варианта .sql дампа и создавать патч в виде готового к выполнению .sql запроса, который можно выполнить, скажем в PhpMyAdmin
Кто-то практически таким занимался?