Jump to content

Recommended Posts

  • 10 months later...

"тогда не будет нормальной индексации комментариев поисковиком" - а она так нужна? чтоб потом при поиске в яндексе говнокомент выводился. А ведь по иронии судьбы так и получиться.

http://disqus.com/ - кто пробовал? хорош?

Link to post
Share on other sites
  • 6 months later...

кто смог установить себе код disqus в статьи для комментариев?

у меня при добавлении их "универсального кода" страница уходит в белый даун

код:

<div id="disqus_thread"></div>
<script type="text/javascript">
var disqus_shortname = 'pupkin';
var disqus_identifier = 'unique_dynamic_id_1234';
var disqus_url = 'articles/{$article->article_id}';

(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://'pupkin.disqus.com/embed.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>

<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com" class="dsq-brlink">blog comments powered by <span class="logo-disqus">Disqus</span></a>


в чём кроется засада? растолкуйте

Link to post
Share on other sites

кто имел дело с привязыванием коментариев disqus'а к симпле?
в этой части кода

var disqus_shortname = 'pupkin';
var disqus_identifier = '?????';
var disqus_url = '?????';

что нужно вписать, чтобы ветки коментариев были к каждому товару и статье свои уникальные?

в товарах я попробовал:

var disqus_identifier = 'http://pupkin.ru/products/{$product->product_id}';
var disqus_url = 'products/{$product->url}';

не фурычит, коментарии отображаются для всех товаров сразу((( а нужно чтобы были уникальные к каждому товару
подскажите а

Link to post
Share on other sites

собственно та же байда
коментарии отображаются для всех товаров одинаковые, а нужно чтобы у каждого товара были свои коментарии

Link to post
Share on other sites

Я себе сделал комментарии к статьям так:

1. Добавил в базу таблицу articles_comments c такими же полями, как и products_comments, только поле product_id переименовал в article_id

2. Добавил в Articles.class.php в функцию fetch_item($url):

if(isset($this->user->name))
{
$this->smarty->assign('name', $this->user->name);
}
### Принимает отзыв
if (isset($_POST['comment']))
{
$name = trim(strip_tags($_POST['name']));
$comment = trim(strip_tags($_POST['comment']));
if ($this->gd_loaded && ($_SESSION['captcha_code'] != $_POST['captcha_code'] || empty($_POST['captcha_code'])))
{
$this->error = 'Неверно введено число с картинки';
}
elseif (empty($name))
{
$this->error = 'Введите имя';
}
elseif (empty($comment))
{
$this->error = 'Пустой комментарий';
}
else
{
$query = sql_placeholder("INSERT INTO articles_comments (date, article_id, ip, name, comment) VALUES(NOW(), ?, ?, ?, ?)", $item->article_id, $_SERVER['REMOTE_ADDR'], $name, $comment);
$this->db->query($query);
}
// Приберем сохраненную капчу, иначе можно отключить загрузку рисунков и постить старую
unset($_SESSION['captcha_code']);

if($this->error)
{
$this->smarty->assign('name', $name);
$this->smarty->assign('comment', $comment);
}
}


// Устанавливаем метатеги для страницы с этой новостью
$this->title = $item->meta_title;
$this->keywords = $item->meta_keywords;
$this->description = $item->meta_description;

// Комментарии
$query = sql_placeholder("SELECT *, DATE_FORMAT(date, '%d.%m.%Y') as date FROM articles_comments WHERE article_id=? ORDER BY comment_id DESC", $item->article_id);
$this->db->query($query);
$comments = $this->db->results();

// Передаем в шаблон
$this->smarty->assign('article', $item);
$this->smarty->assign('comments', $comments);
$this->body = $this->smarty->fetch('article.tpl');
return $this->body;
}
}


3. Добавил в article.tpl

<div id="comments">
<a name=comments></a>

<!-- Список каментов /-->
<h2>Комментарии к статье</h2>
{if $comments}
{foreach from=$comments item=c}

<!-- Отдельный камент /-->
<div class="comment_pack">
<p><span class="comment_name">{$c->name|escape}</span> <span class="comment_date">{$c->date|escape}</span></p>
<p class="comment_text" tooltip=comment comment_id={$c->comment_id}>{$c->comment|escape|nl2br}</p>
</div>
<!-- Отдельный камент #End /-->

{/foreach}
{else}
Пока нет ни одного комментария
{/if}
<!-- Список каментов #End /-->

<h2>Прокомментировать</h2>

{if $error}
<div id="error_block"><p>{$error}</p></div>
{/if}


<!-- Форма отзыва /-->
<form action='{$smarty.server.REQUEST_URI}#comments' method=post>

<!-- Текст камента /-->
<p><textarea class="comment_textarea" format='.+' notice='Введите комментарий' name=comment>{$comment|escape}</textarea></p>
<!-- Имя комментатора /-->
<p class="comment_username">Ваше имя
<input type="text" class="comment_username" name=name value="{$name|escape}" format='.+' notice='Введите имя' />
</p>

<!-- Капча /-->
{if $gd_loaded}
<div class="captcha">
<img src="captcha/image.php?t={math equation='rand(10,10000)'}" alt=""/>
<p>Число:</p>
<p><input type="text" name=captcha_code format='.+' notice='Введите число с картинки' /></p>
</div>
{/if}

<p><input type="submit" value="Отправить" class="comment_submit"/></p>
</form>
<!-- Форма отзыва #End /-->

</div>


4. Все работает

Link to post
Share on other sites
  • 2 weeks later...

???
есть кто живой?
проблема с disqus'ом ещё актуальна

в этой части кода

var disqus_shortname = 'pupkin';
var disqus_identifier = 'http://pupkin.ru/products/{$product->url}';
var disqus_url = '?????';

что нужно вписать, чтобы ветки коментариев были к каждому товару и статье свои уникальные?

в товарах я попробовал:

var disqus_identifier = 'http://pupkin.ru/products/{$product->product_id}';
var disqus_url = 'products/{$product->url}';

не фурычит, коментарии отображаются для всех товаров сразу((( а нужно чтобы были уникальные к каждому товару

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...