Добавьте пользовательскую ссылку на общий доступ Facebook с количеством общих ресурсов и изменяемым текстом
Я пытаюсь сделать это на главной странице новостного сайта.
Часть, с которой я борюсь, - это текст ссылки на Facebook. Он должен:
- подсчитайте долю/ссылку конкретного сообщения
- скрыть число - это 0
- напишите "поделиться!", если у него 0 акций
- напишите "общий доступ 1 раз", если у него есть 1 общий доступ
- напишите "n акций", если у него более 1 акций.
Текст произвольный, я хотел бы иметь возможность чтобы контролировать его.
Я нашел этот код, чтобы подсчитать количество лайков:
function get_likes($url) {
$json_string = file_get_contents('http://graph.facebook.com/?ids=' . $url);
$json = json_decode($json_string, true);
return intval( $json[$url]['shares'] );
}
И мне удалось использовать его, чтобы получить фактическое количество акций:
<a href="http://www.facebook.com/sharer.php?u=<?php the_permalink();?>&t=<?php the_title(); ?>">
<?php $url = get_permalink( $post_id ); echo get_likes("$url"); ?> shares</a>
Теперь трудной частью будет то, как управлять текстом так же, как он управляется в "comments_number":
comments_number( 'no responses', 'one response', '% responses' );
Есть какой-нибудь намек?
1
1 answers
Благодаря этому ответу я нашел простое решение: Как изменить единственное/множественное число в "комментарии" на "комментарии" в количестве комментариев Facebook?
Вот как я решил без тега, используя код, над которым я уже работал, это входит в function.php
function get_likes($url) {
$json_string = file_get_contents('http://graph.facebook.com/?ids=' . $url);
$json = json_decode($json_string, true);
$count = intval( $json[$url]['shares'] );
if ($count == 0) {
echo "share!";
} elseif ($count == 1) {
echo "shared 1 time";
} else {
echo "$count shares";
}
}
И это в шаблоне
<?php $url = get_permalink( $post_id ); echo get_likes($url); ?>
1
Author: molokom, 2017-05-23 12:40:08