shoorick: (Рыжий)
Как и ожидалось, Open Conference Systems, якобы не имеющая русской локализации, при должном применении напильника вполне способна использовать великий и могучий. В каталоге lib/pkp даже можно найти русские локализационные XML-файлы. Вообще весь этот каталог lib/pkp — общий и для OCS, и для OJS, что видно по гитхабу. Правда, в свежей версии Open Journal Systems переводов всё-таки побольше. Похоже, OCS, как не особо активно развиваемый продукт, содержит в себе копию lib/php трёхлетней давности, во всяком случае файлы lib/php/locale/ru_RU/*.xml — как раз 2012 года. Надо провести эксперимент — подсунуть в древнюю OCS 2.3 переводы из свежей OJS 2.4.7-1 — скорее всего, хуже не будет. Я пока заметил только один недостаток, мешающий тупо скопировать локализационные файлы: “User Home” переведено как «Мои журналы» — как-то неправильно показывать такое на сайте конференции.

Кстати, коллеги, кто-нибудь пробовал использовать Open Conference Systems для создания сайтов конференций? WordPress и mojowka для этого плохо подходят (хотя можно и с ними — я так делал) — хочется всё-таки использовать специализированное решение, избежав при этом танцев по граблям.

http://shoorick.ru/2015/12/09/ocs-translation/
shoorick: (Рыжий)
Для вставки использующих библиотеку Leaflet подвижных карт на сайт, работающий под управлением вордпресса, есть разные пути: можно, например, вставить нужный HTML-код прямо в текст страницы — оно будет работать (вот пример), но ковыряться в коде каждый раз, когда нужна карта — неудобно. Такой метод подойдёт лишь тогда, когда надо вставить одну карту и забыть о ней.

Если же карт много, можно воспользоваться монстрообразным плагином Leaflet Maps Marker — он многое умеет, но страшен. Меня пугает обилие кнопочек, ссылочек и призывов перейти на платную версию.

Нужен способ, позволяющий в удобном виде описывать карту и куда-нибудь эту карту вставлять. Питерский осмер Илья Зверев несколько дней назад написал библиотеку MapBBCode для встраивания карт на форумы. На форумах для форматирования текста часто используют команды разметки вида [tag]text[/tag], действующие аналогично тэгам языка HTML, основное их отличие, бросающееся в глаза — квадратные скобки вместо угловых. Подобный код используется и для описания карты в MapBBCode.

Такие же коды применяются и в вордпрессе — с их помощью можно, например, вставлять на страницы аудиозаписи, видеоролики, фотогалереи — подобная функциональность есть в могучем плагине Jetpack. Можно и карты вставлять — так сделано в уже упоминавшемся Leaflet Maps Marker.

Я попробовал минувшей ночью написать свой плагин — получилось. Теперь для того, чтоб вставить карту, достаточно написать
[map]55.16473,61.32601[/map]

вместо этого кода отобразится карта.

Исходный код — https://github.com/shoorick/mapbb-wordpress, ZIP-архив — https://github.com/shoorick/mapbb-wordpress/archive/master.zip.
shoorick: (Default)
В 2013 году в CMS WordPress появилась новая тема — Twenty Thirteen, которая достаточно хороша: написана с использованием HTML5, корректно ведёт себя на разных размерах экрана и не страдает обилием ненужных финтифлюшек. Но не обошлось и без ложки дёгтя: в теме используются взятые с Google Fonts шрифты Bitter и Source Sans Pro — они весьма хороши, но в них нет кириллицы. Понятно, что можно, создав дочернюю тему, поправить используемые в ней стилевые правила, указав нужные шрифты, однако хочется сделать всё правильно: и загрузить нужный шрифт, и избежать загрузки ненужного.

Поиск не дал готового решения (что, вообще-то, странно) — пришлось изобретать самому, руководствуясь тем, что нашлось. Итак, для замены шрифтов надо:

  1. Создать дочернюю тему;

  2. В стилевом файле style.css дочерней темы указать нужные шрифты;

  3. Отключить загрузку ненужных и добавить загрузку нужных шрифтов, добавив в файл functions.php дочерней темы такой код:


if ( ! function_exists('child_fonts_url')) {
    function child_fonts_url() {

        $fonts_url = '';

        $open_sans = _x( 'on', 'Open Sans font: on or off', 'child' );
        $open_sans_condensed
           = _x( 'on', 'Open Sans Condensed font: on or off', 'child' );

        if ( 'off' !== $open_sans || 'off' !== $open_sans_condensed ) {
            $font_families = array();

            if ( 'off' !== $open_sans )
                $font_families[] = 'Open Sans:400italic,400,700';

            if ( 'off' !== $open_sans_condensed )
                $font_families[] = 'Open Sans Condensed:300';

            $query_args = array(
                'family' => urlencode( implode( '|', $font_families ) ),
                'subset' => urlencode( 'latin,cyrillic' ),
            );
            $fonts_url = add_query_arg(
                $query_args,
                '//fonts.googleapis.com/css'
            );
        }

        return $fonts_url;
    } // function child_fonts_url
}

function disable_twentythirteen_fonts() {
    wp_deregister_style('twentythirteen-fonts');
}

add_action( 'wp_enqueue_scripts', 'disable_twentythirteen_fonts', 11 );
wp_enqueue_style( 'child-fonts', child_fonts_url() );

Здесь child — имя дочерней темы. Функция child_fonts_url списана с twentythirteen_fonts_url из темы Twenty Thirteen — изменены лишь используемые шрифты (имена шрифтов и переменных, список начертаний и наборов символов) да название функции.
shoorick: (Рыжий)
Голый WordPress работает. Jetpack — почти что нет: не взлетает при попытке привязки его к wordpress.com. Первым делом заподозрил, что не хватает каких-нибудь модулей PHP, но документация вордпресса говорит, что ничего не надо — достаточно веб-сервера (рекомендуются Apache или nginx), PHP ≥ 5.2.4 и MySQL ≥ 5.0, а на jetpack.me тоже ничего нужного нет.

За бубном тянуться лень, поэтому пойдём правильным путём: будем читать логи. Однако, там нифига нет. Оказывается, надо включить режим отладки — написать в wp.config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
Такие настройки включат запись сообщений об ошибках, но не позволят сыпаться им на страницу.

Чтение логов с последующими экспериментами показало, что для работы вордпресса с джетпаком нужны хотя бы модули xml и ctype — без них джетпак не хочет общаться с wordpress.com. По умолчанию эти модули в PHP включены, однако некоторые экономные хостинг-провайдеры их отключают.

Profile

shoorick: (Default)
shoorick

December 2016

S M T W T F S
    1 23
45678910
11121314151617
18 19 2021222324
25262728293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 14th, 2025 01:23 pm
Powered by Dreamwidth Studios