Buskopan 56 09/10/11 17:35 Пришла в голову идея добавить к частным обявлениям на форуме систему комментариев из социальной сети Facebook. Что это такое описано тут. Проуесс не сложный, просто необходимо добавить предоставляемый код в правильное место на страничку шаблона той или иной страницы. Код выглядит так. <html> <head> <meta property="fb:app_id" content="{YOUR_APPLICATION_ID}"> </head> <script src="http://connect.facebook.net/en_US/all.js#xfbml=1"> </script> <body> <div id="fb-root"></div> <fb:comments href="YOUR_CANONICAL_URL"></fb:comments> </body> </html> YOUR_APPLICATION_ID - иденфикационный номер приложения на FBYOUR_CANONICAL_URL - то что собственно комментируется. с тем что комментируется не могу разобратся. если туда тупо поставить ссылку на сайт, то в результате на фесбуке светится что я прокомментировал форум и дается мета описание моей главной страницы. Я полагаю что в графе YOUR_CANONICAL_URL должен стоять некий php код для отображения в ссылке текущей страницы. Например этой http://www.mydisput.com/forums/index.php?/classifieds/item/82-panasonic-lumix-dmc-zs7/ вопрос. как сделать чтобы сслки были динамическими? Видел что-то подобное типа <?php echo rand(); ?> Но как с этим играть мозга и терпения понять не хватило. Спасибо за любые ответы по данному поводу. Поделиться сообщением Ссылка на сообщение
siv1987 2628 09/10/11 20:39 вопрос. как сделать чтобы ссылки были динамическими?Ссылка здесь и так динамична /forums/index.php?/. Наверное имелось ввиду текущий адрес страницы. В ипб есть какая-то переменная которая выводит meta identifier-url, или можно использовать $_SERVER['REQUEST_URI'] Кстати это не правильно </div> <!-- End Right Column --> <html> <head> <meta property="fb:app_id" content="11111111"> Все что в хеад'е надо вставлять в head форума, и body тоже в body форума. Там лишь пример html странички. Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 02:05 Спасибо. В php я все еще Hello world Как я понял мне нужно function get_my_url() { global $HTTP_HOST; global $REQUEST_URI; if (!empty($_SERVER['HTTPS'])) $protocol = 'https'; else $protocol = 'http'; return "${protocol}://${HTTP_HOST}${REQUEST_URI}"; } $xid = urlencode(get_my_url()); ?> <fb:comments xid="<?= $xid; ?>"></fb:comments> Осталось понять как это поставить правильно. Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 15:26 Там все на много глубже чем я думал. Засел на это дело. Создал новый парсер с переменными $url, $locale, $posts='', $width='', $theme='', $send='', $layout='', $faces='', $font='' <div id="fb-root"></div> <script>(function(d){ var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} js = d.createElement('script'); js.id = id; js.async = true; js.src = "//connect.facebook.net/{$locale}/all.js#appId=МОЙ АЙДИ ПРИЛОЖЕНИЯ&xfbml=1"; d.getElementsByTagName('head')[0].appendChild(js); }(document));</script> <div class="fb-comments" data-href="{$url}" data-num-posts="{$posts}" data-returnurl="{$url}" data-callbackurl="{$url}" origin="{$url}" data-admins="559570439" data-xid="{$url}" data-width="{$width}" data-colorscheme="{$theme}" data-send="{$send}" data-layout="{$layout}" data-show-faces="{$faces}" data-font="{$font}"></div> Потом его в темплейт статьи. Вроде работает. http://www.mydisput.com/_/medicine/%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D0%B1%D0%BE%D1%80%D0%BE%D1%82%D1%8C-%D1%81%D0%BE%D0%BD%D0%BB%D0%B8%D0%B2%D0%BE%D1%81%D1%82%D1%8C-r966 Теперь тоже самое делаю для страницы обьявлений. Но уже не получается. Почему то комментится мета описание моей главной страницы. Хеллоу ворлд Поделиться сообщением Ссылка на сообщение
siv1987 2628 09/11/11 15:38 Но уже не получается. Почему то комментится мета описание моей главной страницы. Хеллоу ворлдВозможно иза урл'овв браузере: /forums/index.php?/classifieds/item/в коде: /forums/classifieds/item/ Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 15:51 Возможно иза урл'овв браузере: /forums/index.php?/classifieds/item/в коде: /forums/classifieds/item/да тоже думал об этом, но ведь должно было исправится таким решением. {parse template="facebook_comments" group="global_other" params="$this->settings['board_url'].'/classifieds/item/'.$item['item_id'].'-'.urlencode($item['name']).'/', 'ru_RU', '', '450', '', 'true', 'button_count', 'false', 'trebuchet ms'"} что не так? Поделиться сообщением Ссылка на сообщение
siv1987 2628 09/11/11 15:59 ['board_url'] адрес форума без слэша. С index.php будет ['base_url']. Но тогда не будут работать чпу ссылки без index.php. Я же дал выше переменную с адресом, чем она не нравиться? Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 16:03 ['board_url'] адрес форума без слэша. С index.php будет ['base_url']. Но тогда не будут работать чпу ссылки без index.php. Я же дал выше переменную с адресом, чем она не нравиться?Уже нравится но не выводит картинки обьявления. Спасибо! За место картинки выводит маленькую иконку со страницы. Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 16:15 С IP.Content картинки проходят. А вот с обьявлениями что-то не так. Поделиться сообщением Ссылка на сообщение
siv1987 2628 09/11/11 16:27 Там снова какие-то траблы с урл. В одном шаблоне прописали нормально а в другом нет. вот это все$this->settings['board_url'].'/classifieds/item/'.$item['item_id'].'-'.urlencode($item['name']).'/' заменить одним этим$this->settings['this_url'] Насчет картинки не знаю, может она и не должна там быть. Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 16:37 Там снова какие-то траблы с урл. В одном шаблоне прописали нормально а в другом нет.поправил. изменений нет. Насчет картинки не знаю, может она и не должна там быть.Странно со статей читает картинки этот же код, а тут нет. Насчет картинки не знаю, может она и не должна там быть. должна быть. Если просто даешь ссылку ручками на ФБ он ее видит. Поделиться сообщением Ссылка на сообщение
siv1987 2628 09/11/11 16:48 Ну мало что ему там не нравиться. Вы ведь нигде не указывали чтоб он брал именно эту картинку, значит там свой какой-то алгоритм. Сравнивайте код и смотрите при каких обстоятельствах тянется картинка, может в одном блоке находиться, может расположение. А иконка кстати отсюда http://www.mydisput.com/forums/public/style_images/master/classifieds/merchant.png 1 Поделиться сообщением Ссылка на сообщение
Buskopan 56 09/11/11 17:26 Сравнивайте код и смотрите при каких обстоятельствах тянется картинка, может в одном блоке <div> находиться, может расположение. Спасибо за направление. Кажется портит все index.php внутри ссылки. В IP.Conten я его убрал, и все заработало. Страницы с новостями без него, поэтому отображаются правильно. Это непонятная политика фесбука. Теперь надо думать как убрать index.php из ссылки classifieds А со встраиванием оказалось все проще простого.http://developers.facebook.com/blog/post/472 кстати видел такой же плагин для Vkontakte Поделиться сообщением Ссылка на сообщение