• Решено joliat

    (@joliat)


    Добрый день.
    На старой версии WP делал правку кода движка, чтобы при написании комментария пользователем несколько раз подряд к одной теме (в течении последних 5ти часов), комментарии объединялись с пометкой, через сколько была добавлена последняя часть текста.
    После обновления WP, естественно, эта функция пропала.
    Есть ли существующие плагины с таким функционалом или придется опять править код WP?

Просмотр 15 ответов — с 1 по 15 (всего 17)
  • Есть ли существующие плагины с таким функционалом или придется опять править код WP?

    Код ВП вообще править не нужно. См https://codex.wordpress.org/%D0%A7%D0%90%D0%92%D0%9E/%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D1%8B%D1%85_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9

    Код ВП вообще править не нужно.

    Я это понимаю. Танцы с бубном были 10 лет назад, когда правил код. Сейчас же, хочу сделать цивилизовано. Вот спросил за плагин. Найти самостоятельно не получается, спрашиваю совета знатоков.

    Я это понимаю. Танцы с бубном были 10 лет назад, когда правил код. Сейчас же, хочу сделать цивилизовано. Вот спросил за плагин. Найти самостоятельно не получается

    За 10 лет можно было бы научиться пользоваться поиском. Впрочем учиться никогда не поздно.
    Вот смотрите как это делается:
    1. Плагины тут: https://ru.wordpress.org/plugins/
    2. Онлайн переводчик (один из многих) тут https://translate.yandex.ru
    3. Комментарии это «comment»
    4. Редактировать это «editing»
    А теперь пробуем все это выстроить в единую логическую цепочку и получаем вот что:
    https://ru.wordpress.org/plugins/search/editing++comment/
    И там, после недолгих поисков, находим искомое. Например это: https://ru.wordpress.org/plugins/simple-comment-editing/
    или это https://ru.wordpress.org/plugins/wp-ajax-edit-comments/

    • Ответ изменён 6 лет, 1 месяц назад пользователем O.

    Spectrum, вот видите, и Вам не удалось такой найти. Но спасибо за попытку помощи. Какой функционал у меня был: Если пользователь в течении 5ти часов оставляет 2 сообщения подряд, и на предыдущее не было ответа, то комментарии склеиваются в один, с пометкой, в которой указано время дописания комментария.
    Такой функционал можно встретить еще на форумах.
    Видимо, придется делать обработчик добавления комментариев в function.php по старой схеме.
    Всем спасибо за помощь.

    в течении 5ти часов оставляет 2 сообщения подряд, и на предыдущее не было ответа, то комментарии склеиваются в один, с пометкой, в которой указано время дописания комментария.

    Слишком специфично чтобы было готовое решение в виде плагина. Требуется «ручная работа», как и 10 лет назад.

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, denisco.pro

    Видимо, придется делать обработчик добавления комментариев в function.php по старой схеме.

    Буду рад, если выложите куда-нибудь код и пинганёте меня как закончите. Было бы интересно посмотреть. Возможно, дойдут руки сделать этот функционал в виде плагина 🤗.

    Подскажите, какой фильтр срабатывает после отправки или публикации сообщения? pre_comment_on_post, как я понял, уже не работает?

    В общем, плагина не нашел, написал кусок кода в function.php. Работает, как и задумывалось.

    	// Дописание комментариев
    	add_filter('preprocess_comment', 'rewrite_comment');
    	function rewrite_comment($commentdata) {
    		global $wpdb;
    		$comm_post_ID = $commentdata['comment_post_ID'];
    		$db_comm_info = $wpdb->get_results("SELECT <code>comment_author</code>, <code>comment_content</code>, <code>comment_ID</code> FROM $wpdb->comments WHERE comment_post_ID = '$comm_post_ID' AND comment_approved = 1 ORDER BY comment_date DESC LIMIT 1");
    		if ($db_comm_info[0]->comment_author==$commentdata['comment_author']) { //Сравнение авторa последнего комментария из БД с именем пользователя, который оставляет комментарий
    			$time_msg=$time_hours. date("H:i d.m.20y");
    			$new_msg=$db_comm_info[0]->comment_content.'<div class="add"><center>Добавленно позже <small>(в '.$time_msg.')</small>:<br/></center></div>'.$commentdata['comment_content'];
    			$comm_ID = $db_comm_info[0]->comment_ID;
    			$wpdb->query("UPDATE $wpdb->comments SET comment_content = '$new_msg' WHERE comment_ID = '$comm_ID'"); 	
    			header("Location:".get_comment_link($comm_ID));
    			die;
    			} else {
    			return $commentdata;
    		}
    	}

    Denis Yanchevskiy, стоит ли писать плагин? Тут кода на 10 строк.

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, denisco.pro

    Спасибо!

    стоит ли писать плагин? Тут кода на 10 строк.

    Это Вы просто ещё не видели плагинов в одну строку)
    Например, Disable Responsive Images (3000+ установок)

    ))) Ну то уже полное извращение.
    Если будете писать плагин, не забудьте упомянуть меня))

    стоит ли писать плагин? Тут кода на 10 строк.

    какая разница сколько строк в плагине?

    @denisco, простите, что пишу здесь — не знаю как ещё связаться, Вы редактор русской локализации у темы «Frontier» https://translate.wordpress.org/locale/ru/default/wp-themes/frontier

    Не могли бы проверить и утвердить перевод.

    Заранее спасибо.

    Модератор Yui

    (@fierevere)

    永子

    @overnight
    на будущее —
    https://ru.wordpress.org/support/forum/translations/

    посмотрела переводы, спасибо

    не знаю как ещё связаться,

    Не могли бы проверить и утвердить перевод.

    https://ru.wordpress.org/support/forum/translations/

    Такое ощущение, что кроме «Проблемы и решения» на форуме других разделов нет.
    Или их видит только тот, кто зарегистрировался более 3х лет назад….

    Модератор Yui

    (@fierevere)

    永子

    Такое ощущение, что кроме «Проблемы и решения» на форуме других разделов нет.
    Или их видит только тот, кто зарегистрировался более 3х лет назад….

    с таким дизайном главной страницы форумов… там ничего не найти.
    Но ничего, может скоро будет лучше https://meta.trac.wordpress.org/ticket/4007

Просмотр 15 ответов — с 1 по 15 (всего 17)
  • Тема «Плагин «дописания комментария»» закрыта для новых ответов.