wordpress – с комментариями inline ajax, как в stackoverflow

У меня есть блог wordpress и вы хотите дать людям одинаковый пользовательский интерфейс для добавления комментариев, которые находятся в stackoverflow. Есть несколько комментариев плагинов ajax, но я не могу найти рабочий, который позволяет вам встроить на главную страницу, входить и добавлять комментарии без предварительного сверления на отдельную страницу с одним сообщением.

Может ли кто-нибудь помочь здесь с плагином WordPress или PHP-кодом для этого.

Solutions Collecting From Web of "wordpress – с комментариями inline ajax, как в stackoverflow"

Я никогда не мог заставить AJAXed WordPress делать то, что я (и, по-видимому, вопросник) хочу сделать.

Я использую настраиваемое решение, которое использует плагин под названием Inline Ajax Comments . У меня было чертовски время найти ссылку для скачивания, но вот то, что все еще работает: http://kashou.net/files/inline-ajax-comments.zip

В редакторе темы WordPress я редактирую index.html. После следующего:

<?php the_content(''); ?> 

Я добавляю (после включения плагина, конечно):

 <?php ajax_comments_link(); ?> <?php ajax_comments_div(); ?> 

Затем я отредактировал сам файл PHP плагина. Я прокомментировал блоки кода следующим образом:

 if ($comment_count == '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comment &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comment</a>'); */ echo('</span>'); } else if ($comment_count > '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comments &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comments</a>'); */ echo('</span>'); } - if ($comment_count == '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comment &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comment</a>'); */ echo('</span>'); } else if ($comment_count > '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comments &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comments</a>'); */ echo('</span>'); } - if ($comment_count == '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comment &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comment</a>'); */ echo('</span>'); } else if ($comment_count > '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comments &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comments</a>'); */ echo('</span>'); } - if ($comment_count == '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comment &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comment</a>'); */ echo('</span>'); } else if ($comment_count > '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comments &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comments</a>'); */ echo('</span>'); } - if ($comment_count == '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comment &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comment</a>'); */ echo('</span>'); } else if ($comment_count > '1') { echo('<span id="show-inline-comments-'. $id .'"> '); /* echo('<a href="javascript:;" id="show-inline-comments-link-'. $id .'" onmouseup="ajaxShowComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return false;">show comments &raquo;</a>'); */ echo('</span>'); echo('<span id="hide-inline-comments-'. $id .'" style="display: none;"> '); /* echo('<a href="#comments-'. $id .'" onmouseup="ajaxHideComments('. $id .', \''. $throbberURL .'\', \''. $commentpageURL .'\'); return true;">&laquo; hide comments</a>'); */ echo('</span>'); } 

IIRC, вот и все, что я должен был сделать, но дайте мне знать, если это не сработает для вас. Я пытаюсь перестроить собственное решение, поскольку, похоже, это именно то, что вы хотите сделать.

Я думаю, что AJAXed WordPress делает то, что вы ищете, среди прочего:

AJAXed WordPress

AJAXed WordPress (AWP) использует возможности AJAX и WordPress для улучшения пользовательского опыта, возможностей администрирования и потенциала дизайна любого блога на WordPress. Он работает со всеми версиями WordPress от 2.1 до 2.6.

Некоторые из возможностей AWP включают загрузку сообщений inline, встроенных комментариев , комментариев с потоком, комментариев к комментариям AJAX, навигации по AJAX, предварительного просмотра комментариев в прямом эфире и многое другое. AWP бесконечно настраивается и расширяется. Несмотря на то, что AWP предоставляет множество функций, вы никогда не будете вынуждены использовать функции, которые вам не нужны. Все аспекты плагина легко настраиваются с помощью единой панели администрирования.

Демо доступно здесь http://wordpress.mu/, и вы можете увидеть встроенные комментарии в действии. Похоже, что вы просили.

Вы можете попробовать Ajax Comment Posting . Меня устраивает.

В плагине WordPress есть много связанных с комментариями плагинов. Однако, если вы хотите найти простой плагин Ajax для публикации комментариев, вы его не найдете. Вот почему я разработал простой и маленький (5kB), но функциональный плагин Ajax Comment Posting (ACP). Он не только разместит ваш комментарий, не обновляя страницу, но также будет убедиться, что вы заполнили все поля формы правильно.

Вы можете перепрограммировать код из темы P2 . Это довольно хорошо написанная тема, поэтому это должно в значительной степени работать без проблем. Скопируйте весь код из их functions.php в конец functions.php вашей темы. Скопируйте каталог inc и entry.php в каталог тем.

Замените в index.php

  <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <?php /* your themes code must be here */ ?> <?php endwhile; ?> 

с

  <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <?php require dirname(__FILE__) . '/entry.php'; ?> <?php endwhile; ?> 

а затем изменить CSS и другие вещи в entry.php по вкусу.

Я рекомендую этот http://wordpress.org/extend/plugins/ajax-comment-posting/ . Я надеюсь, что это помогает.

Вы можете использовать плагины комментариев 1. AJAX ( поиск «комментариев Ajax» на wordpress ) 2. Напишите свой собственный код. 3. Используйте disqus.

Независимо от выбранного вами варианта, вам по-прежнему необходимо выставлять комментарии на главной странице. Это можно сделать (на основе выбранного вами варианта), изменив index.php вашего шаблона, чтобы отображать комментарии после отображения текста каждого сообщения. однако это увеличит время загрузки страницы, а также повлияет на дизайн вашей главной страницы (плюс ссылка на конкретную страницу больше не будет иметь большого значения).

Есть много плагинов, которые делают это. Ajax Comment Posting довольно проста в установке и использовании. Как они сказали:

  1. Загрузите каталог плагинов ajax-comment-posting в каталог wp-content / plugins.
  2. Активируйте плагин через меню «Плагины» в WordPress.
  3. Это оно!

http://wordpress.org/extend/plugins/ajax-comment-posting/