Последнее время я довольно часто занимаюсь переводами разных плагинов на русский язык. К сожалению, далеко не все из них хорошо подготовлены к переводу своими авторами. Одна из самых распространенных ошибок — отсутствие идентификатора перевода _e() и __(), т.е. в плагине прописано к примеру __(‘Surname:’) вместо __(‘Surname:’ , ‘zacepka’). В таких случаях приходится дописывать данный параметр руками в каждый файл. А чтобы сэкономить время я использую следующее регулярное выражение в Notepad++
_[_e]\(‘[^’]+’\K(?=\))
Обращаю ваше внимание на то, что вместо , ‘zacepka’ нужно указывать то, что прописано в главном файле плагина в load_plugin_textdomain
add_action('plugins_loaded', 'true_load_plugin_textdomain' );
function true_load_plugin_textdomain() {
load_plugin_textdomain('icopydoc', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/');
}
в данном примере прописано icopydoc и соответственно заменять надо на , ‘icopydoc’ , плюс файлы перевода должны иметь вид icopydoc-ru_RU.mo и icopydoc-ru_RU.po