/** * @covers WPGlobus_Core::translate_term */ public function test_translate_term() { /** * Term as a string */ $term = '{:en}term EN{:}{:ru}term RU{:}'; WPGlobus_Core::translate_term($term, 'en'); self::assertEquals('term EN', $term, 'term'); $term = '{:en}term EN{:}{:ru}term RU{:}'; WPGlobus_Core::translate_term($term, 'ru'); self::assertEquals('term RU', $term, 'term'); /** * Term as an object */ $term_object = new stdClass(); $term_object->name = '{:en}term name EN{:}{:ru}term name RU{:}'; $term_object->description = '{:en}term description EN{:}{:ru}term description RU{:}'; WPGlobus_Core::translate_term($term_object, 'en'); self::assertEquals('term name EN', $term_object->name, '$term_object->name'); self::assertEquals('term description EN', $term_object->description, '$term_object->description'); $term_object->name = '{:en}term name EN{:}{:ru}term name RU{:}'; $term_object->description = '{:en}term description EN{:}{:ru}term description RU{:}'; WPGlobus_Core::translate_term($term_object, 'ru'); self::assertEquals('term name RU', $term_object->name, '$term_object->name'); self::assertEquals('term description RU', $term_object->description, '$term_object->description'); }
/** * Filter @see get_term() * * @param string|object $term * * @return string|object */ public static function filter__get_term($term) { if (WPGlobus_WP::is_http_post_action('inline-save-tax')) { /** * Don't filter ajax action 'inline-save-tax' from edit-tags.php page. * See quick_edit() in includes/js/wpglobus.admin.js * for and example of working with taxonomy name and description * wp_current_filter contains * 0=wp_ajax_inline-save-tax * 1=get_term * @see wp_ajax_inline_save_tax() */ // do nothing } else { WPGlobus_Core::translate_term($term, WPGlobus::Config()->language); } return $term; }