我想知道为什么,在我的wordpress主题的侧边栏中,这段代码没有引入我的最新推文?
<?php
/*
PHP Twitter Feed Importer
@mradamdavies
www.elevatelocal.co.uk
==-----------------------------*/
class pull_tweets { // Create a basic class
var $twitter_handle; // Twitter username
var $tweet_limit; // Max tweets to return
var $tweet_links; // Show @profile links
var $tweet_tags; // Show #tag links
var $tweet_avatar; // Show twitter avatar
var $tweet_profile; // Show twitter profile link
var $hard_max; // Real max tweets (Used to filter out @replies)
var $i; // Tweet counter
function show_tweet_links($tweet_links_output, $tweet_links) { // Find and replace @replies with links
if($tweet_links == true) {
$find = '/\@([a-zA-Z]+)/';
$replace = '<a class="hash_link" href="http://twitter.com/'.strtolower('\1').'" rel="nofollow">@\1</a>';
$tweet_links_text = preg_replace($find,$replace,$tweet_links_output);
return $tweet_links_text;
}
else { return $tweet_links_output; }
}
function show_hash_tags($tweet_hashtags_output, $tweet_tags) { // Find and replace #tags with links
if($tweet_tags == true) {
$find_hash_tag = '/\#([a-zA-Z]+)/';
$replace_hash_tag = '<a class="hash_link" href="http://twitter.com/search?q=%23'.strtolower('\1').'" rel="nofollow">#\1</a>';
return
preg_replace($find_hash_tag,$replace_hash_tag,$tweet_hashtags_output);
}
else { return $tweet_hashtags_output; }
}
function show_twitter_avatar($tweet_avatar_output, $tweet_avatar) { // Show avatar
if($tweet_avatar == true) {
return '<img src="'.$tweet_avatar_output.'" alt="" />';
}
else { return false; }
}
function show_twitter_profile_link($tweet_profile_output, $tweet_profile) { // Insert profile link
if($tweet_profile == true) {
return '<a class="profile_link" href="http://twitter.com/'.$tweet_profile_output.'">@'.$tweet_profile_output.'</a>';
}
else { return false; }
}
// Create a basic function to pull latest tweets
function tweets($twitter_handle, $tweet_limit, $tweet_links, $tweet_tags, $tweet_avatar, $tweet_profile) {
/* Store Tweets in a JSON object */
$tweet_feed = json_decode(file_get_contents('http://api.twitter.com/1/statuses/user_timeline.json?screen_name='.
$twitter_handle.'&exclude_replies=false&count='.$hard_max));
$i = 0; // Start the tweet limit counter
foreach ($tweet_feed as $tweet) { // Loop through the tweets
if ($tweet->in_reply_to_user_id == '' && $i != $tweet_limit) { // Don't show direct @replies
++$i; // Increase tweet counter
// Check true/false flags and return output accoringly
$tweet_text = $tweet->text;
$tweet_text = pull_tweets::show_tweet_links($tweet_text,$tweet_links); // Show @reply links?
$tweet_text = pull_tweets::show_hash_tags($tweet_text,$tweet_tags); // Show #tag links?
$twitter_avatar =
pull_tweets::show_twitter_avatar($tweet->user->profile_image_url,$tweet_avatar); // Show avatar?
$twitter_profile =
pull_tweets::show_twitter_profile_link($twitter_handle,$tweet_profile); // Show main profile link?
// Echo our tweet contents
echo '
<div class="tweet_bg">',$twitter_avatar,'
<p>'.$tweet_text.'<br />'.$twitter_profile.'</p>
</div>';
}
} // end of foreach
} // end of tweets function
} // end of pull_tweets class
?>
<script language="javascript">
$my_tweets = new pull_tweets();
echo $my_tweets->tweets('mradamdavies', 5, true, true, true, true);
</script>
本教程引用: * HTTP://www.elevatelocal.co.uk/blog/php-twitter-feed-importer-05094504*
我想用PHP或最小的JavaScript来做这件事。目前Twitter Widgets因某些原因无法在我的网站上运行。
答案 0 :(得分:1)
您的<script>
中的PHP未被解析为PHP。你可能想要
<?php
$my_tweets = new pull_tweets();
$my_tweets->tweets('mradamdavies', 5, true, true, true, true);
?>
Jamie指出,tweets()
生成的HTML不是JavaScript,因此您根本不需要<script>
标记。