+38 (067) 901-63-22

Корзина

0 товара(ов) на сумму
0 грн.

Июнь 2015 — К2®, Рудюк Сергей Анатольевич

Мета тэги в WordPress

Description и Keywords

Одним из наиболее частых вопросов, с которыми сталкиваются web-мастера и SEO-оптимизаторы, работающие с Wordcodess, - это добавление в данную CMS META тэгов Description и Keywords. Как правило, большинство новичков, не желая особо разбираться в возможностях движка, а также тратить время на то, чтобы изучать его код, ограничиваются установкой одного из расширений, тем более что количество seo плагинов для Wordcodess исчисляется десятками. Наиболее известным среди них является All in One Seo Pack.

Однако к преимуществам использования плагинов относится лишь легкость их установки, которая обычно понятна любому человеку, даже совсем недавно ознакомившемуся с данной CMS.

Недостатков у данного способа SEO-оптимизации Wordcodess намного больше. Во-первых, любой плагин оставляет немало мусора в коде и, соответственно, отодвигает важный контент с расположенными в нем ключевыми словами вниз HTML-кода, что сказывается на ранжировании страниц и всего сайта не лучшим образом.

Во-вторых, практически все плагины создают дополнительные подключения к SQL-базе, что приводит к дополнительной нагрузке. На малопосещаемых сателлитах это будет незаметно, однако, если вы планируете создать известный проект с большим количеством трафика, об оптимизации работы CMS следует задуматься заранее.

В-третьих, создание МЕТА тэгов так, как делает All in One Seo Pack и другие ему подобные плагины, гораздо рациональнее осуществить при помощи возможностей самого Wordcodess, на основе которых все подобные расширения и работают.

И наконец, в-четвертых, все существующие в настоящее время плагины для создания META тэгов Description и Keywords не позволяют автоматизировать работу по их заполнению. Таким образом, каждый раз при создании очередной статьи вам придется обдумывать и текст, который вы вставите в Description, и ключевые слова. Зачем тратить на это время, если гораздо удобнее и проще предоставить эту задачу CMS?

Создание мета тэгов Description и Keywords в Wordcodess без использования плагинов

Способ № 1. Заполнение мета тэгов каждый раз при создании новой статьи.

Переходим на вкладку Добавить страницу или Добавить запись – кому как удобнее. В правой верхней части дисплея находится кнопка Настройка экрана, предназначенная для управления внешним видом панели управления. Щелкнув по ней, откроем меню, в котором необходимо поставить галочку возле надписи Произвольные поля.

После этого под областью для ввода основного текста появятся настройки для произвольных полей.

Для создания нового поля нажмите на кнопку Добавить произвольное поле. Далее в графе Имя впишите слово description, а в графе Значение - описание статьи, которое вы хотите включить в соответствующий мета тэг. Сохраните получившуюся запись или страницу.

После того, как вы выполните данные действия, на каждой странице у вас появятся соответствующее поле для ввода Meta Description.

Вновь кликнув на Добавить произвольное поле, создайте еще одно поле с названием keywords, в соответствующей графе Значение перечислите ключевые слова через запятую.

Теперь осталось только вывести содержание дополнительных полей в соответствующем месте HTML-страницы. Для этого в используемом шаблоне открываем файл header.php и вставляем после код

<meta name="description" content="<?php echo get_post_meta($post->ID, 'description', true); ?>" /> <meta name="keywords" content="<?php echo get_post_meta($post->ID, 'keywords', true); ?>" />

Способ № 2. Автоматизация создания мета тэга Description

Данный способ также не вызовет у вас никаких затруднений: вам надо будет только скопировать приведенный ниже код в соответствующее место PHP-файла.

Открываем header.php и в самый верх файла перед всем его содержимым вставляем следующий код:

//Для работы с записями, а не страницами замените is_page на is_single <?php if (is_page()) {//если это страница… if (have_posts()) : while (have_posts()) : the_post(); //Начинаем цикл WordPress $strDescr = wp_trim_words(get_the_content(), 100 ); //Получаем часть поста в размере ста слов // Количество можно варьировать по своему желанию $strDescr = preg_split("/[.?!] /", $strDescr); //Разделяем на предложения, чтобы Description не оказался оборванным на полуфразе. //При этом, каждое предложение записывается в отдельный элемент массива. endwhile; endif; } else { $strDescr="Альтернативное описание сайта"; //если это не страница, выводим иной текст }

Для вывода Description в HTML-коде страницы вставляем в header.php:

<meta name="description" content="<?php echo $strDescr[0].$strDescr[1].$strDescr[2].$strDescr[3]; ?>" />

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

Какой из способов работы с Description в Wordcodess выбрать, зависит только от вас. Кому-то кажется необходимым написание уникального авторского описания к каждой статье, другие же web-мастера могут предпочесть сэкономить свое время и полностью автоматизировать создание мета тэгов.

Источник: http://seo-praktika.com/cms-wordpress-meta-tags-description-plagin.html

SEO оптимизация WordPress

Несмотря на огромную популярность WordPress, этот движок, не оптимизированный под современные требования поисковых систем, вполне способен загнать под фильтр новый сайт, даже несмотря на размещаемый там качественный контент. Стандартная настройка CMS приводит к появлению множества дублей на сайте: один и тот же текст может повторяться самой статье, в «архиве», на странице категории и т.д. Добавьте к этому HTML-код, полный «мусора», комментарии, где каждый желающий может оставить ссылку на любой сайт или дорвей, и вы поймете, почему все большее число новых сайтов на WordPress попадает под фильтр.

SEO-оптимизация и внесение изменений в WordPress могут быть организованы двумя способами: 1) вносить все необходимые изменения непосредственно в PHP-файлы движка, 2) использовать для этого плагины.

Недостаток правки PHP-кода заключается в том, что практически каждое обновление CMS «сносит» все внесенные изменения, и их приходится заново прописывать «ручками», что может потребовать немалое количество времени. Однако чрезмерное количество плагинов отрицательно сказывается на работе CMS, так как каждый из них подключается через так называемые «хуки» (ловушки), что со временем приведет к значительным «тормозам».

Самый простой способ внести необходимые изменения в WordPress – это правка PHP-файлов, входящих в состав шаблона. Все файлы одной темы находятся в одноименной директории, которую можно легко перенести с одного ресурса на другой или же сохранить на свой компьютер.

В данной статье мы рассмотрим простейшие способы оптимизации WordPress под поисковые системы.

Как создать главную страницу на WordPress

Создание главной страницы WordPress позволяет избежать дублирования имеющихся на сайте статей, представленных в виде анонсов записей. Расположенный на главной странице статичный, не меняющийся текст – это возможность заточить «морду» ресурса под основные ключевики, необходимые для продвижения.

Чтобы создать статичную главную страницу на WordPress, проделайте следующее:

1. В админ-панели перейдите заходим на вкладку Страницы и создайте или отредактируйте имеющуюся там страницу.

2. Перейдите по адресу Параметры -> Чтение. В списке под названием «На главной странице отображать» выберете «Статическую страницу», и в выпадающем меню «Главная страница» укажите, какую именно статью вы хотите сделать главной. Сохраните изменения.

Настройка ЧПУ в WordPress

Настроить человеко-понятные адреса страниц в WordPress можно средствами самого движка: никаких дополнительных плагинов устанавливать не требуется. Для этого переходим на вкладку Постоянные ссылки и в Общих настройках выбираем пункт Произвольно, после чего прописываем туда следующий шаблон: /%postname%-%post_id%.html.

Для автоматического перевода названий статей на транслит, следует установить плагин RUS-to-LAT.

Есть мнение о том, что каждая страница web-ресурса должна оканчиваться расширением .htm или .html, иначе поисковые системы будут воспринимать ее как директорию. Для того чтобы добавить к страницам расширение .html, используем небольшой плагин Page_Htm со стандартной установкой и без дополнительных настроек.

Теперь закомментируем в файле /wp-includes/post.php несколько строк, чтоб обеспечить переносимость страниц между разделами.

// $path = '/' . $curpage->post_name . $path; // $uri = $page->post_name . "/" . $uri;

Установка кода Sape на WordPress

Для того чтобы подключить блог на WordPress к бирже продажи ссылок Sape, необходимо использовать плагин iMoney, который позволяет осуществить все необходимые настройки быстро и просто.

Прежде всего, следует скачать плагин с сайта разработчика или официального блога WordPress. Полученный zip-архив следует закачать в специальную папку. Затем в панели администрирования блога следует перейти на вкладку управления плагинами и выбрать там команду «Добавить новый». В появившейся вкладке выберете команду «Загрузить» и, кликнув по кнопке «Обзор», выберете сохраненный zip-архив с плагином iMoney (распаковывать архив не нужно) и нажмите на кнопку «Установить».

На странице появится ссылка «Активировать плагин», нажимаем на нее, чтобы начать работу с iMoney. После этого плагин начнет свою работу.

Переходим в раздел «Параметры» и выбираем там раздел iMoney, чтобы перейти к настройкам плагина. Перед нами появится список настроек дополнения, среди которых будет необходимый нам раздел Sape, где следует указать уникальный VID, полученный нами на бирже ссылок.

Чтобы узнать свой VID, следует скачать на бирже папку с PHP-кодом для установки на сайт. Название, представляющее собой длинный код из букв и цифр, - это и есть искомый VID. Вставляем его в соответствующее поле плагина iMoney.

После этого iMoney предложит вам создать на хостинге специальную папку, необходимую для работы кода Sape. Для этого жмем на кнопку «Create».

Для выбора размещения продаваемых ссылок, активируйте соответствующие разделы в настройках: Before Content Links (перед статьей), After Content Links (после статьи), Sidebar Links (в колонке возле статьи). Также вы можете активировать раздел Sape context для продажи ссылок непосредственно из статьи. Все остальные настройки следует выполнить в панели Sape.

Карта сайта на WordPress

Одним из преимуществ движка, привлекающих к WordPress множество пользователей, является огромное число плагинов, позволяющих выполнить самые разнообразные задачи. К подобным задачам относится создание карты сайта, которое необходимо для того, чтобы находящиеся на сайте записи и статьи были, во-первых, легко доступны поисковым роботам, а во-вторых, не вызывали путаницы у посетителей, которым необходимо найти ту или иную информацию.

Все плагины для создания карты сайта на WordPress подразделяются на два типа: для создания XML-файла, облегчающего индексацию сайта поисковым роботам, и для создания HTML-карты, которая позволяет разместить все материалы на расстоянии двух-трех кликов от главной страницы, а также создает удобную и понятную структуру сайта.

Для создания XML файла обычно используется наиболее известный плагин Dagon Design Sitemap Generator, который имеет множество настраиваемых параметров, а также удобен и понятен в использовании.
Инсталляция плагина Dagon Design Sitemap Generator является полностью стандартной. Необходимо ввести его название в соответствующее поле в админ-панели и подтвердить его установку.

После активации плагина в списке Параметры появится дополнительный пункт DDSitemapGen, где расположены настройки плагина. Чаще всего ничего, кроме используемого языка, менять там не нужно. Однако при желании вы можете настроить количество ссылок на странице, параметры отображения количества комментариев, даты и других данных, относящихся к записи или странице.

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

Чтобы поисковый робот мог найти XML-карту, расположенную в корне сайта, следует указать адрес ее расположения в файле robots.txt. Однако обычно поисковые роботы и сами находят этот файл, если поместить его в корне сайта и назвать sitemap.xml.

Вы можете указать в настройках плагина, ссылки на какие именно элементы web-ресурса необходимо разместить в карте. Многие владельцы сайтов не размещают в sitemap.xml ссылки на категории и другие служебные страницы наподобие архивов, календаря и ряда других, указывая там только адреса страниц и записей.

Подобные настройки зависят исключительно от структуры сайта.

Источник: http://seo-praktika.com/seo-optimizaciya-wordpress.html

Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux

Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.

Общая информация

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

Сервер 1С Предприятия. Часть 1 - Общие вопросы.

В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:

index

В нашем распоряжении имеются два сервера под управлением Ubuntu 12.04 x64, на одном из них установлен сервер 1С:Предприятие версии 8.3, на другом PostgreSQL 9.04 от Ethersoft, а также клиент под управлением Windows. Напоминаем, что клиент работает только с сервером 1С, который, в свою очередь, формирует необходимые запросы к серверу СУБД. Никаких запросов от клиента к серверу управления базами данных не происходит.

Сервер баз данных не обнаружен
ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (Ident)

index2

Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:

<code><span class="hljs-keyword">host</span> <span class="hljs-literal">all</span> <span class="hljs-literal">all</span> 192.168.31.0/24 ident</code>

и приведите ее к виду:

<code><span class="hljs-keyword">host</span> <span class="hljs-literal">all</span> <span class="hljs-literal">all</span> 192.168.31.0/24 md5</code>

где 192.168.31.0/24 - диапазон вашей локальной сети. Если такой строки нет, ее следует создать в секции IPv4 local connections.

Сервер баз данных не обнаружен
could not translate host name "NAME" to address: Temporary failure in name resolution

index3

На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата...

А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:\Windows\System32\drivers\etc\hosts на платформе Windows.

index4

Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.

Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.

index5

Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:\Windows\System32\drivers\etc\hosts на платформе Windows запись вида:

<code>192.168.31.83 SRV-1C-1204</code>

где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.

Ошибка СУБД: DATABASE не пригоден для использования

index6

Гораздо более серьезная ошибка, которая говорит о том, что вы установили несовместимую с 1С:Предприятие версию PostgreSQL или допустили грубые ошибки при установке, например не установили все необходимые зависимости, в частности библиотеку libICU.

Если вы имеете достаточный опыт администрирования Linux систем, то можете попробовать доустановить необходимые библиотеки и заново инициализировать кластер СУБД. В противном случае PostgreSQL лучше переустановить, не забыв удалить содержимое папки /var/lib/pgsql.

Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x Postgre@Etersoft, подробности смотрите ниже.

Ошибка СУБД:
ERROR: could not load library "/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so"

index7

Довольно специфичная ошибка, характерная для сборок 9.1.x и 9.2.x Postgre@Etersoft, также может приводить предыдущей ошибке. Причина кроется в неисправленной ошибке в библиотеке fasttrun.so. Решение - откатиться на сборку 9.0.x Postgre@Etersoft.

Ошибка СУБД
ERROR: type "mvarchar" does not exist at character 31

index8Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль Администрирование серверов 1С Предприятия

index9или через средство запуска 1С.

index10

Сервер баз данных не обнаружен
ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (по паролю)

index11

Очень простая ошибка. Неправильно указан пароль суперпользователя СУБД postgres. Вариантов решения два: вспомнить пароль или изменить его. Во втором случае вам нужно будет изменить пароль в свойствах всех существующих информационных баз через оснастку Администрирование серверов 1С Предприятия.

Сервер баз данных не обнаружен
FATAL: database "NAME" does not exist

index12Еще одна очень простая ошибка. Смысл ее сводится к тому, что указанная БД не существует. Чаще всего возникает из-за ошибки в указании имени базы. Следует помнить, что информационная база 1С в кластере и база данных СУБД - две разные сущности и могут иметь различные имена. Также следует помнить, что Linux системы чувствительны к регистру и для них unf83 и UNF83 два разных имени.


Ошибка запуска 1С в Linux после переименования сервера

Переименовали сервер на котором служба агента 1С

После переименования сервера Windows Server 2008 с установленным 1С:Предприятие 8.2, перестала работать служба «Агент сервера 1С:Предприятие 8.2». Она запускается, работает несколько секунд и останавливается. Если подключаться к серверу 1С:Предприятие 8.2 через консоль серверов, то возникает ошибка:

Ошибка соединения с сервером 1С:Предприятие 8.2 server_addr=tcp://SERVER:1540 descr=Ошибка сетевого доступа к серверу (Windows Sockets - 10061(0x0000274D). Подключение не установлено, т.к. конечный компьютер отверг запрос на соединение.) line=590 file=.\Src\DataExchangeTcpClientItmpl.cpp

При подключении к базе на этом сервере имеем следующую ошибку:

Не запущен ни один рабочий процесс. Соединение с базой невозможно.

Данная проблема связана с тем, что настройки кластера серверов 1С:Предприятие хранятся в файлах в каталоге srvinfo (путь к нему указывает параметр -d в свойствах службы «Агент сервера 1С:Предприятие»). Поэтому после изменения имени компьютера надо выполнить дополнительно следующие действия:

Для Windows зайдите в каталог c:\program files\1c\1cv82\srvinfo, если Linux - то файлы лежат в домашнем каталоге пользователя от имени которого запускается сервис: usr1cv8/home/.1cv8/1C/1cv8 ...

Отредактируйте в любом текстовом редакторе два файла: srvinfo\srvribrg.lst и srvinfo\reg_1541\1CV8Reg.lst. Замените в этих файлах старое имя сервера на новое.

Запустите службу «Агент сервера 1С:Предприятие».

После этого, все будет запускаться нормально.


Вывод отладочной информации запуска 1С8.3 в Linux

По умолчанию, серверный процесс 1С8.3 нигде не выводит иформацию о запуске, как результат, при возникновении проблемы запуска вам может оказаться сложным определить причину аварийной ситуации.

Вы можете включить вывод логов создав такой файл:

cat /opt/1C/v8.3/i386/conf/logcfg.xml

В него запишите:

<config xmlns="http://v8.1c.ru/v8/tech-log">; <dump create="true" location="/var/log/1c/dumps" prntscrn="true" type="2"/> <log history="72" location="/var/log/1c"> <event> <eq property="name" value="EXCP"/> </event> <event> <eq property="name" value="EXCPCNTX"/> </event> <event> <eq property="name" value="PROC"/> </event> <event> <eq property="name" value="ADMIN"/> </event> <event> <eq property="name" value="MEM"/> </event> <event> <eq property="name" value="LEAKS"/> </event> <property name="all"/> </log> </config>

Укажите права достаточные для того, чтоб увидел данный файл процесс 1С для каталога conf и для самого файла logcfg.xml.

Информация о процессе запуска будет выводиться в /var/log/1c/dump.

Убираем ограничение на количество ключевых слов в Wordpress

Автор: Рудюк С.А.

http://corp2.net

При задании ключевых слов я столкнулся с ограничением в 200 символов на поле Keywords. Это создавало большое количество неудобств, т.к. не давало должным образом определить ключевые слова для статей.

Начал изучать данный вопрос. Смотрю структуру базы данных, как оказалось, это поле - не ограниченной длины:

СтруктураТогда, стало понятно, что проблема в исходном коде. После анализа программного кода и плагинов, я обнаружил, что за вывод ключевых слов в моем случае отвечает плагин Custom Metas. И в настройках его можно указать тот размер, какой нам необходим:

Размер ключевых слов в Wordpress

Конвертирование .xls в .csv в Linux

Для того, чтобы сконвертировать .xls в .csv, прибегнем к помощи утилиты xls2csv, установить которую в CentOS Linux можно, выполнив в командной строке следующую команду:

$ sudo yum -y install xls2csv

После успешной установки xls2csv, попробуем конвертировать наш файл .xls в .csv, для дальнейшего разбора данных. Для конвертации выполним команду:

$ xls2csv file.xls > file.csv

Как вы уже наверное догадались, file.xls - это исходный файл в формате Excel, а file.csv - это полученный файл в результате конвертации.

После выполнения последней команды, вы сможете получить все данные, присутствующие в файле file.xls, в файле .csv, согласно формату csv (данные разделенные запятой).

Источник: http://www.ithowto.ru/329-konvertirovanie-xls-v-csv-v-linux.html

Оптимизация изображений средствами командной строки Linux

Иногда возникает такая необходимость — сделать что-то с целой кучей изображений, чаще всего — сжать, чтобы не занимали много места.

Есть много разных редакторов — Photoshop, Lightroom и им подобных. Кроме того, появилось уже очень много всяких онлайн сервисов, которые позволяют сжимать и оптимизировать картинки.

Если этих картинок с десяток, то можно обойтись каким-нибудь сервисом. А вот если их больше, на помощь приходят консольные утилиты. Одни из таких ImageMagick, jpegoptim, optipng

ImageMagick представляет из себя кроссплатформенный набор утилит, который содержит очень много функций для работы с изображениями — конвертирование из одного формата в другой, различные трансформации (ресайз, обрезка, вращение, зеркальное отражение), применение разных эффектов, вроде размытия… и очень много других.

Jpegoptim и optipng позволяют сжать изображение без потери качества, а для jpegoptim также возможно сжатие с потерями.

Примеры с ImageMagick

Поиск и ресайз всех изображений до 500px

Для одного файла:

<code>convert -resize ‘500>’ input.jpg output.jpg</code>

Для нескольких изображений можно использовать такую магию:

<code>find -regex “.*[jpg|png]” -exec convert {} -resize ‘500>’ {} \;</code>

Разместить маленькое изображение внутри белого квадрата, заданного размера

<code>convert input.jpg -gravity center -background white -extent 500x500 output.jpg</code>

Создание пиктограмм 80×80

<code><span class="keyword">for</span> file <span class="keyword">in</span> *.jpg; <span class="keyword">do</span> convert <span class="variable">$file</span> -resize 80x80 -background white -gravity center -extent 80x80 80x80-<span class="variable">$file</span>; <span class="keyword">done</span></code>

Примеры с jpegoptim и optipng.

<code>jpegoptim input.jpg</code>

В этом режиме удаляется вся мета-информация, кроме Exif и комментариев. По-умолчанию используется алгоритм сжатия без потери качества

Сжатие с потерями, удаление всей мета-информации:

<code>jpegoptim input.jpg -m50 --strip-all</code>

Для оптимизирования всех png изображений можно использовать следующую команду

<code>find -name *.png -exec -optipng -o3 <span class="string">'{}'</span> \</code>

где -o может быть от -o0 до -o7
Чем выше этот параметр, тем больше фильтров будет использовано для оптимизации. Размер будет меньше, но и обрабатываться каждое изображение будет дольше.

В принципе, это весь необходимый минимум чтобы оптимизировать тонну картинок для быстрой загрузки сайтов и экономии места на хостингах.

Прочее

В данном разделе будут размещаться небольшие сниппеты, которые определенным образом относятся к теме статьи.

Скачивание картинок списком, удаление белого пространства вокруг них

Чтобы скачать картинки списком, удобнее всего использовать wget.
Переходим в нужный каталог, где у нас подготовлен файл с адресами url картинок и запускаем команду:

<code>wget -i list.txt</code>

Для того, чтобы обрезать одну картинку нужно запустить команду:

<code>convert input.jpg -trim output.jpg</code>

Чтобы обрезать несколько, то можно воспользоваться find:

<code>find ./ -name <span class="string">"*.jpg"</span> -exec convert {} -trim out/{} \;</code>

где out — папка, куда будут сохраняться обработанные картинки

Источник: http://diggitize.me/imageoptimize/

Генерация штрих-кода для вставки его в 1С при работе в Linux

В Linux есть отличная команда barcode, которая генерирует штрих-коды в векторном формате ps. Но, 1С не понимает такие форматы. Более того, barcode, генерирует штрих-код на размер листа А4 или Letter. Установка пользовательского размера листа не увенчалась успехом. Но, не будем же мы вставлять изображение штрих-кода размером с лист А4...

Однако, есть способ, как решить данные проблемы.

Генерируем штрих-код в формате ps с помощью команды barcode:

barcode -p letter -g 200x100 -u mm -b 13423432320 -e 128 -o sss.ps

Теперь, нужно преобразовать его в понятный для 1С формат - это или jpg или png. За это отвечает команда ImageMagic convert. Кроме того, есть возможность указать четкость изображения с помощью параметра -density 150. А так же есть очень полезный параметр для нашего случая -trim. Этот параметр обрезает изображение. Т.е. обрезает всё белое пространство нашего листа.

Получаем такую команду для генерации jpg:

convert -density 150 -trim sss.ps sss.jpg

Для генерации png:

convert -density 150 -trim sss.ps sss.png

Сравнивая изображения png и jpg видим, что jpg имеет размер 21,2Кб, а png - 2,7Кб. Т.е. получается, что png лучше использовать, т.к. размер такого файла в 10 раз меньше. Кроме того, в png нет фона.

Для того, чтоб не нужно было вызывать несколько команд из линукс и после каждой делать тайм-аут, рекомендую заключить обе команды в "одну команду", например так:

barcode -p letter -g 200x100 -u mm -b 13423432320 -e 128 -o sss.ps | convert -density 150 -trim sss.ps sss.png

Генерация изображения штрих-кода в 1С при работе в Linux

Написали маленькую функцию, которая генерирует штрих-код в Linux и получает его в 1С.
Функция ШтрихКодПоказать(Штрихкод, Стандарт="128") Если Штрихкод="" Тогда // Если не указали штрих-код, тогда выводим в CODE 128 Предупреждение("Не указан штрих-код!",5); Иначе Файл="/tmp/"+Штрихкод; ЗапуститьПриложение("barcode -p letter -g 200x100 -u mm -b "+Штрихкод+" -e 128 -o "+Файл+".ps | convert -density 150 -trim "+Файл+".ps "+Файл+".png"); Файл=Файл+".png"; КонецЕсли; Возврат Файл; КонецФункции Процедура ОбработкаШтрихкодаНажатие(Элемент) S=ШтрихКодПоказать("58765", "ean13"); Предупреждение("На всякий случай ждем 1 секунду", 1); ЗапуститьПриложение(S); КонецПроцедуры

Параметры функции Штрих-код:

Штрих-код - буквенно-цифровое значение штрих-кода.
Стандарт - стандарт штрих-кода. Предусмотрены такие значения данного параметра, отвечающие за соответствующий стандарт:

 "ean", "ean13", "ean-13", "ean8", "ean-8" "upc", "upc-a", "upc-e" "isbn" "39", "code39" "128c", "code128c" "128b", "code128b" "128", "code128" "128raw" "i25", "interleaved 2 of 5" "cbr", "codabar" "msi" "pls", "plessey" "code93", "93"