Доброго времени суток уважаемый читатель, сегодня мне бы хотелось поделится своим опытом русификации достаточного интересного на мой взгляд плагины для WordPress WP Customer Reviews 3 версии, этот плагин предназначен для создания страницы отзывов с оценками. В интернете я нашел кучу ссылок на русификацию этого плагины, но к огромному сожалению этот метод работает для версии плагина 2.х…
Ну что же приступим, при беглом просмотре директории плагина (wp-content/plugins/wp-customer-reviews/include/templates) сразу же натыкаешься на шаблоны
И казалось бы что может быть проще, достаточно изменить эти шаблоны как тебе угодно и все – плагин русифицирован... да это проходило в версии 2, но в версии 3.х разработчики решили хранить шаблоны в базе данных в табличке wp_option с ключом option_name = wpcr3_options
Менять в шаблоны в базе данных я не стал, ка-то не привычно это мне. Поковырявшись в файле wp-customer-reviews-3.php я наткнулся на шаблонизатор который подставляет все переменные в HTML. $main_data['reviews'] .= wpcr_Goatee::fill($this->options['templates']['frontend_review_item'], $data); (В функцию попадает шаблон из базы данных и данные из массива $data), Далее я решил изменить алгоритм функции чтобы шаблон дергался не из базы данных а брался из директории wp-content/plugins/wp-customer-reviews/include/templates, для этого изменяем fill($this->options['templates'] ['Имя_Шаблона'] на fill(file_get_contents($this->getplugindir() .‘include/templates/'Имя шаблона.html’). Нам нужно будет заменить 9 строчек кода в файле wp-customer-reviews-3.php
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_form'], $data); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir() .'include/templates/frontend_review_form.html'), $data); |
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_form_rating_field'], $data); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir() .'include/templates/frontend_review_form_rating_field.html'), $data); |
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_form_review_field'], $data); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir() .'include/templates/frontend_review_form_review_field.html'), $data); |
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_form_text_field'], $data); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir().'include/templates/frontend_review_form_text_field.html'), $data); |
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_holder'], $main_data); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir().'include/templates/frontend_review_holder.html'), $main_data); |
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_item'], $data); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir().'include/templates/frontend_review_item.html'), $data); |
1 2 3 4 5 |
'template' => $this->options['templates']['frontend_review_item_aggregate'], Меняем на 'template' => file_get_contents($this->getplugindir() . 'include/templates/frontend_review_item_aggregate.html'), |
1 2 3 4 5 |
'template' => $this->options['templates']['frontend_review_item_reviews'], Меняем на 'template' => file_get_contents($this->getplugindir() .'include/templates/frontend_review_item_reviews.html'), |
1 2 3 4 5 |
wpcr_Goatee::fill($this->options['templates']['frontend_review_pagination'], $pagination); Меняем на wpcr_Goatee::fill(file_get_contents($this->getplugindir().'include/templates/frontend_review_pagination.html'), $pagination); |
Далее приводим сами шаблоны к тому виду который бы Вас устроил. Да кстати не забываем в шаблонах удалить
%---
NOTICE: Changes m
ade to this file do nothing.
Additionally, this file will be overwritten with each plugin update and/or activation.
If you have the Pro version, you can edit this file via plugin settings without it being overwritten.
---%
Внимание, при обновлении плагин будет постоянно переписывать wp-customer-reviews-3.php и шаблоны, поэтому решайте сами устанавливать ли вам обновления, да кстати шаблоны можно вынести из директории плагина, например создать в активной теме папку и скопировать в нее отредактированные шаблоны но тогда нужно будет исправить пути к шаблонам.
Что было до
И вот что стало после
Ссылка на переделанный плагин(плагин переделан так как просил заказчик):

There are no comments