Как вставить php-код в WordPress на страницу или запись

Всем привет!
Сегодня я поделюсь кодом, с помощью которого можно будет вставлять любой код, написанный на php, в страницу или в запись.
Если у вас стоял плагин, с помощью которого вы решали все эти проблемы, можете его удалить (к примеру, плагин Inline PHP), если не ставили, то не устанавливайте, так как код имеет всего пару строчек.
Зачем выводить внутри статьи или записи работающий код php?
Бывают разные причины, вот например, вы хотите вывести кнопку «купить» в самой статье, где после нажатия, товар попадет в корзину, или хотите вывести форму в статье, где будет вестись подсчет символов и балов. Идей, как применить данную функцию, я думаю, вы найдете намного больше. Итак, добавьте в файл «functions.php» вашей темы вот такую функцию:

[cc lang=»php»]
/* чтобы вставить код php в статьях/страницах WordPress,
* поставьте шоркод: [exec]код[/exec]
*/
function exec_php($matches){
eval(‘ob_start();’.$matches[1].’$inline_execute_output = ob_get_contents();ob_end_clean();’);
return $inline_execute_output;
}
function inline_php($content){
$content = preg_replace_callback(‘/\[exec\]((.|\n)*?)\[\/exec\]/’, ‘exec_php’, $content);
$content = preg_replace(‘/\[exec off\]((.|\n)*?)\[\/exec\]/’, ‘$1’, $content);
return $content;
}
add_filter(‘the_content’, ‘inline_php’, 0);[/cc]

Теперь вставляйте шорткод прямо в статью или запись:
[cc lang=»php»][exec]здесь php код [/exec][/cc]

Внимание: при вставке php кода в шорткод, не используйте «»
То есть будет вот так:
[cc lang=»php»][exec]echo date(‘Y’);[/exec][/cc]

Если вы хотите вывести код, как обычный текст, выведите php код вот таким шорткодом:
[cc lang=»php»][exec off]php код[/exec][/cc]
Это все! Удачи!

Источник: https://bloggood.ru/wordpress/kak-vstavit-php-kod-v-wordpress-na-stranicu-ili-zapis.html/

 

Перевод темы WordPress на русский язык

Примечание: и снова рекомендую начать с инструкции первоисточника(англ.): https://codex.wordpress.org/User:Lorelle/Installing

или читать первую часть. Более подробо о формате gettext см. в Части 2

Часть 1 «для чайников»

Перевод темы WordPress на русский язык

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

Как локализировать шаблон на русский язык.

Эта статья поможет разобраться, как локализировать шаблон на русский язык, используя программу Poedit, и как выполнить перевод тем WordPress при помощи одного плагина под названием CodeStyling Localization.

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

Для локализации в WordPress используется GNU gettext технология, которая говорит о том, что исходный программный код должен быть прописан на английском языке. Почему так?

Это позволит, например, переводить на русский темы WordPress, не внося изменений в исходный код шаблона. Главное, при выходе обновлений к шаблонам, перевод никуда не исчезнет.

Русификация темы WordPress

Иногда, к сожалению, не каждую тему для WordPress возможно перевести «правильным» способом. Все зависит от того, провел ли разработчик подготовку своей темы к переводу.

Где найти шаблон, готовый к переводу? На самом деле, это несложно. Например, на сайте WordPress.org имеется специальная пометка translation-ready, указывающая на тот факт, что тема подготовлена разработчиком к переводу, и вы сможете перевести ее на русский язык, не изменяя исходный программный код.

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

Совет! Шаблоны для WordPress нужно скачивать с официального ресурса. Использовать темы с «левых» сайтов, особенно, если они бесплатные, очень рискованно.

Файлы .po и .mo

После скачивания темы переходим к этапу «Как перевести тему WordPress на русский язык?». Ищем в теме директорию languages. Именно в ней находятся нужные файлы для перевода темы шаблона на разные языки. Имя файла должно указывать на локаль. К примеру, ru_RU – это русский. Все эти файлы идут с расширением .po и .mo.

.po файлы хранят в текстовом формате переведенные строки. К этим данным обращается переводчик темы.

.mo файлы — те же строки, но в скомпонованном варианте. Данные файлы использует WordPress ядро для отображения выполненного перевода.

Отредактировав перевод в файле .po, его следует скомпилировать в .mo, чтоб подтвердить и применить исправления. Используя редактор Poedit, это можно делать автоматически.

Как русифицировать Вордпресс при помощи Poedit

Poedit — это редактор .po файлов (gettext каталогов), отвечающий за перевод программного обеспечения. Большая часть разработчиков отдает предпочтение gettext, чтоб локализовать программы Unix. Так, решив перевести любимые программы Linux, можно смело использовать Poedit.

Какие особенности имеет редактор Poedit:

  1. Имеется проверка орфографии.
  2. .mo файлы компилируются автоматически.
  3. Присутствует поддержка множественных форм.
  4. Есть возможность редактировать комментарии.
  5. В наличии удобный строчный поиск.

Скачать Poedit редактор можно по ссылке https://poedit.net/download.

Запустив программу для создания нового перевода, нужно (через раздел меню Файл) создать из POT-файла каталог.

Выбираем .pot файл (или .po) в директории languages вашей темы. Далее редактор предложит заполнить форму перевода и сохранить новый созданный каталог. Сохраняем его в той же languages директории под именем локали, к примеру, ru_RU.po.

Если нужно, то для внесения поправок в существующий перевод, нужно открыть соответствующий .po файл.

Poedit — это редактор .po файлов (gettext каталогов), отвечающий за перевод программного обеспечения.

Работа с редактором Poedit не вызывает дополнительных вопросов. Все просто и понятно. Исходный вариант текста расположен слева, а текст перевода — справа. Чтоб внести коррективы в перевод, нужно щелкнуть на нужную строчку и ввести правильный перевод. Нажав сохранить, редактор сам скомпилирует новый перевод и создаст соответствующий .mo файл.

Установка перевода в Вордпресс

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

Если на сайте тема уже установлена, то достаточно загрузить файлы ru_RU.po и ru_RU.mo в ее директорию languages.

Примечание: файлы конкретной темы находятся в …./wp-content/languages/themes/.., для изменить исходный(английский) текст не получилось в Poedit, максимум можно взять чужой перевод и изменить русские названия. Пробую редактировать исходный текст в обычном редакторе сначала.

 

Это можно сделать, к примеру, через FTP.

Если шаблон установлен на русском языке, то изменения будут видны сразу. Если он на английском языке, следует поменять локаль в wp-config.php. Нужно найти в файле строчку WPLANG и изменить ее:

Загрузка темы с русским переводом на сайт и его активация.

Примечание: это работало для WordPress v3.9.2 и ниже. Для WordPress v4.0 и выше:

  • изменяй язык в настройках административной Консоли. Settings > General > Site Language.

 

В результате, тема на сайте будет отображена на русском языке. Однако это не единственный способ!

Как русифицировать WordPress, используя плагин?

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

    1. Чтоб воспользоваться плагином, первый шаг — это скачать его и установить. В консоли находим Плагины-Добавить новый.
    2. В окне поиска вводим CodeStyling Localization и жмем Поиск.
    3. Когда поисковик его найдет, нажимаем Установить, а далее Активировать.
    4. В меню консоли сбоку выбираем Инструменты-Локализация.

Плагин CodeStyling Localization, в данном случае, будет очень полезен.

    1. Появится список, состоящий из локализаций WordPress, установленных тем и плагинов. Внизу будет размещено название нужной темы.  Если ее нет, то русифицировать тему придется способом, указанным выше.

Список, состоящий из локализаций WordPress, установленных тем и плагинов.

При отсутствии в перечне русского языка, нажимаем Добавить новый язык и отмечаем русский. В появившейся строчке русского языка жмем Сканировать и Завершить. Далее в строчке русского языка выбираем Редактировать. Откроется перечень фраз и перевод для них.

При отсутствии в перечне русского языка, нажимаем Добавить новый язык и отмечаем русский.

Можно редактировать отдельно каждую фразу, выбрав соответствующее действие справа.

Многие фразы отображаются с %s в конце. От этих внешних ссылок в отдельных случаях можно избавиться. Например, перевод «Powered by %1$s and %2$s theme by %3$s» можно заменить «Сайт на WordPress» без ссылок.

Переводить все имеющиеся фразы не обязательно, только самые важные. Проверив и отредактировав перевод, нажимаем над списком фраз Генерировать mo-файл.

Выполнив все этапы и поняв как русифицировать шаблон wordpress, плагин CodeStyling Localization можно смело удалить, так как даже после этого все .po и .mo файлы сохранятся.

Итог

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

Читать далее «Перевод темы WordPress на русский язык»

Трём диски

Дано: Жесткие диски, которые нужно отдать/продать. Если можно выбросить, тогда быстрее и надежнее разобрать и магниты бонусом получить(например, для фиксации калитки здорово подходят).
Задача: Cтереть данные на них, чтобы затруднить восстановление информации третьими лицами.
Решение:
смотрим диски(разделы) в системе
sudo lsblk
затираем нулями диск sdb, блоками(bs) по 8Мб
sudo dd if=/dev/zero of=/dev/sdb bs=8M
посмотреть текущее состояние процесса:
killall -USR1 dd