Плъгините за многоезичност и последните коментари в 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











English
Bulgarian 

Все още няма коментари.