Вывод обратных ссылок из соц сетей

Хочу сделать собственную кнопку для расшаривания страницы в соц сетях вместе со счетчиком ссылок на эту страницу. Привожу пример с facebook:

В function.php добавил следующий код:

function get_facebook($url) {
  $request = file_get_contents('http://graph.facebook.com/'.urlencode($url));
  if ( !$request ) return 0;
  $request = json_decode($request);
  return isset($request->shares) ? (int) $request->shares : 0;
}

На страницу где размещается кнопка добавляю саму кнопку, все работает, но счетчик не считает обратные ссылки. Вот что добавляю чтобы сделать вывод счетчика:

<div id="counter"><?php echo get_facebook('<?php the_permalink(); ?>'); ?></div>

Но если указать прямую ссылку, то работает, например:

<div id="counter"><?php echo get_facebook('http://mysite.ru/'); ?></div>

Как я понимаю, проблема в том, что <?php the_permalink(); ?> не меняет ссылку на ту, которой соответствует страница со счетчиком. Но необходимо сделать так, чтобы для каждой страницы подставлялись ссылки автоматически (вроде как <?php the_permalink(); ?> за это и отвечает).

Вопрос: Как решить мою задачу?

Мне тут подсказали что по всей видимости проблема в кавычках и использовании php фрагмента в php, т.е. должно быть так:

<div id="counter"><?php echo get_facebook(the_permalink()); ?></div>

но в этом случае, место того, чтобы отображался числовой счетчик, отображается адрес страницы и на конце 0 (хотя реальный счетчик должен показывать совершенно другое число)

Вопрос остается нерешенный, подскажите, пожалуйста

Мне тут подсказали что по всей видимости проблема в кавычках и использовании php фрагмента в php, т.е. должно быть так:



<div id="counter"><?php echo get_facebook(the_permalink()); ?></div>

но в этом случае, место того, чтобы отображался числовой счетчик, отображается адрес страницы и на конце 0 (хотя реальный счетчик должен показывать совершенно другое число)

Вопрос остается нерешенный, подскажите, пожалуйста

Мне тут подсказали что по всей видимости проблема в кавычках и использовании php фрагмента в php, т.е. должно быть так:

<div id="counter"><?php echo get_facebook(the_permalink()); ?></div>

но в этом случае, место того, чтобы отображался числовой счетчик, отображается адрес страницы и на конце 0 (хотя реальный счетчик должен показывать совершенно другое число)

Вопрос остается нерешенный, подскажите, пожалуйста

Мне тут подсказали что по всей видимости проблема в кавычках и использовании php фрагмента в php, т.е. должно быть так:

<?php echo get_facebook(the_permalink()); ?>

но в этом случае, место того, чтобы отображался числовой счетчик, отображается адрес страницы и на конце 0 (хотя реальный счетчик должен показывать совершенно другое число)

Вопрос остается нерешенный, подскажите, пожалуйста

Сорри, опубликовались сразу несколько постов из-за того что форум выдавал ошибку, как самостоятельно удалить дубли не нашел

Решение задачи нашлось, надо было вместо

<?php echo get_facebook(the_permalink()); ?>

прописать

<?php echo get_facebook(get_permalink()); ?>
Anonymous
Отправить
Ответ на: