Плъгините за многоезичност и последните коментари в WordPress
В моята WordPress инсталация имам Multilingual WordPress by WPML плъгина и GetRecentComments плъгина, които за мое съжаление не работят правилно заедно. Плъгина за коментари показва записи и на двата езика. За да преодолея този проблем, тъй като искам и двата плъгина в блога си, трябваше леко да модифицирам плъгина за коментарите. Ще ви покажа как да го направите и вие, но все пак можете да използвате и своя логика за да го направите – аз имам само два езика, така че го направих по най-простия за мене начин. Ето и модификацията.
След ред 1133 в get-recent-comments.php променете кода, както следва:
$lang = 'en'; if(strstr($_SERVER['REQUEST_URI'], '/bg/')) { $lang = 'bg'; } while ($comments_number < $requested_number_of_comments) { $query = "SELECT * from $wpdb->comments JOIN {$wpdb->prefix}icl_translations t ON ({$wpdb->comments}.comment_ID = t.element_id AND t.element_type='comment' AND t.language_code = '$lang') WHERE comment_approved= '1' AND " . $sql_comment_type . $sql_exclude_owner . $sql_ignore_ip . "ORDER BY comment_date DESC LIMIT " . ($batch_number*$batch_size) . ",$batch_size"; // echo "$query<br><br>"; $comments = $wpdb->get_results($query); ...
Първо трябва да опредилите, на какъв език ви трябват коментарите, аз лично използвам структурата с папки, и след това да промените заявката и да отсеете само тези, които ви трябват.
Прочети статията на: English
Все още няма коментари.