среда, 18 апреля 2012 г.

MySQL. Как сделать дамб БД с хранимыми процедурами, и не только.

Иногда приходится перенести дамп базы данных (MySQL), и перенести его не просто так, а с хранимыми внутри БД процедурами, чтобы приказать mysqldump делать дамп с оными надо выполнить такую вот команду:
mysqldump -uUser -pPass --routines --extended-insert DBName > /dir/file.sql
Для бекапа дампа и одновременного сжатия его можно воспользоваться таким вот способом.
mysqldump -uUser -pPass DBName | gzip > /dir/file.sql.gz
Чтобы развернуть дамп завернутый :) таким вот способом надо сделать вот так:
gunzip < /dir/file.sql.gz | mysql -uUser -pPass DBName
Если вы хотите сделать бекап только одной таблицы, для этого утилите mysqldump надо указать следующий ключ --tables table1 table2, и через пробел все таблицы которые вы хотите задампить. Вот примерчик:
mysqldump -uUser -pPass DBName --tables table1 table2 > /dir/file.sql.gz

пятница, 6 апреля 2012 г.

Magento. Как получить суффикс добавляемый в ЧПУ ссылку

Недавно возникла необходимость получить суффикс ссылки в Magento, это то что добавляется в конец ссылки имитируя физический документ, ну к примеру http://www.example.com/some/seo/link, - это без суффикса, а http://www.example.com/some/seo/link.html - с суффиксом. Это задается в админке, т.е. может меняться пользователем. Получить это в коде можно очень просто.
// Для ссылки на товар
Mage::getStoreConfig('catalog/seo/product_url_suffix');
// Для ссылки на категорию
Mage::getStoreConfig('catalog/seo/category_url_suffix');

четверг, 5 апреля 2012 г.

CSS. Ненумерованный (bullit) список с маркерами-символами

Способ задать, к примеру, в списке в качестве маркера, такое длинное, смачное тире "—" не просто, ну в смысле, просто, но не так как этого хотелось бы. Внизу представлены CSS правила для этого хитрого дела. Разбирать не буду, что для чего, кому что-то не понятно — в комменты, пожалуйста. Я отвечу.
ul.bullit-dash li {
    padding: 0;
    margin: 0;
    list-style-type: none;
    behavior: expression( !this.before
    ? this.before = this.innerHTML = '— ' + this.innerHTML : '' );
    text-indent: -1.24em;
}

ul.bullit-dash li:before {
    content: '\2014\a0';
}