dcramer / wp-lifestream Goto Github PK
View Code? Open in Web Editor NEWLifestreaming plugin for Wordpress
Home Page: http://forums.lifestrm.com/index.php
Lifestreaming plugin for Wordpress
Home Page: http://forums.lifestrm.com/index.php
=== Lifestream === Contributors: zeeg, llygoden Tags: lifestream, rss, social, miniblogging, twitter, flickr, friendfeed, delicious, last.fm, facebook, digg, atom, instapaper, Google Plus, youtube Requires at least: 2.8 Tested up to: 3.1.3 Stable tag: trunk Streams your activity from over 50 different sources to your blog. == Description == Lifestream displays your social feeds and photos much like you would see it on many of the social networking sites. This version is taken from the Github Source after changes have been made Homepage: http://www.enthropia.com/labs/wp-lifestream/ Source: https://github.com/dcramer/wp-lifestream Support: https://github.com/dcramer/wp-lifestream/issues Follow us on Twitter: http://www.twitter.com/wplifestream Requirements: * PHP 5.x * WordPress 2.8+ * MySQL 5.x == Installation == Upload the plugin (unzipped) into `/wp-content/plugins/`. You should end up with `/wp-content/plugins/lifestream/lifestream.php`. Activate the plugin under the "Plugins" menu. Visit "Lifestream" -> "Settings" to configure the basic options, and add feeds. There are severals methods in which you can use Lifestream in a WordPress page. The easiest way is to use the normal context handler (works in pages and posts): `[lifestream]` Another method requires a [custom WordPress page](http://codex.wordpress.org/Pages#Page_Templates), or the use of a template, and is a simple function call: `<?php lifestream(); ?>` You may also specify several parameters in the `lifestream` method (useful for sidebar display). These should be in the standard key=>value format for PHP calls. * `(int) offset`: defaults to 0 * `(int) limit`: defaults to '50' * `(string) date_interval`: defaults to '1 month' * `(boolean) break_events`: defaults to false - forces grouped events to be single * `(array) user_ids`: defaults to all users -- specify the ids of users to show * `(array) feed_types`: defaults to all feeds -- specify the feed keys (e.g. twitter) to show * `(array) feed_ids`: defaults to all feeds -- specify the ids of feeds to show, also overrides `feed_types` setting For example: `[lifestream limit="10"]` For more advanced uses, you may directly use `get_events()` which will return an array of `Event` instances. This is the same syntax as the `lifestream()` method. Example: `<ul> <?php $options = array('limit' => 50); $events = $lifestream->get_events($options); foreach ($events as $event) { echo '<li>'.$event->render($options).'</li>'; } ?> </ul>` Another popular example, would to be show your current Twitter, or Facebook status somewhere in your templates: `$events = $lifestream->get_events(array('feed_types'=>array('twitter'), 'number_of_results'=>1, 'break_groups'=>true); $event = $events[0]; // to render it with links echo $event->feed->render_item($event, $event->data); // or render just the text echo $event->data['title'];` Or, use our handy shortcuts: `<?php lifestream_twitter_status(); ?>` And `<?php lifestream_facebook_status(); ?>` == Requirements == * PHP 5 * WordPress 2.8 or newer == Features == * Personalizable CSS classes. * Detailed configuration options. * Supports nearly every major social networking website * Unlimited number of feeds in your Lifestream. * Supports grouping of events. * Localization ready! * Digest available to summarize your activities. * WordPress MU is supported. == Built-in Feeds == The plugin includes most of the major social networking feeds available. You may add your own, as well as send me ideas for new feeds at the GitHub Forum. If you wish to add custom extensions, please see extensions/README. * Facebook * Digg * Blog * Twitter * Reddit * De.licio.us * GetGlue * Instapaper * Jaiku * Last.fm (Revamped plugin in 0.38) * Flickr (Improved display in 0.39) * Photobucket * Pownce * YouTube * Google Reader * Google Plus * Yelp * MySpace Blog * Skitch * Identi.ca * Pandora * Hulu * TwitPic * Vimeo * StumbleUpon * Tumblr * Amazon Wishlist * Ma.gnolia * Zooomr * Blip.fm * Brightkite * Picasa (Web) * Kongregate * Viddler * coComment * FoodFeed * MyEpisodes * Mixx * SlideShare * Blip.tv * Steam * Xbox Live * iTunes * Github * Readernaut * ScrnShots * Mobypicture * SmugMug * DeviantArt * BackType * LibraryThing * Netflix * Wikipedia * Upcoming.org * WordPress Codex * Raptr * Gowalla * Kiva * Codaset * Foursquare * Ustream * World of Warcraft Armory Want to add your own? See extensions/README for more information. == Localization == Currently the plugin is localized in the default language of English, as well as the following languages. If you wish to submit a localization please send it to [email protected]. * Chinese (Simplified) * Japanese * Polish * Danish * Italian * Bulgarian * French * German * Danish * Spanish * Swedish * Belorussian * Catalan == Changelog == = 0.99.9.8-BETA = * The last release by David Cramer = 1.0 = * This updated version containing a whole load of fixes and more plugins. This is the version available on GitHub as at 27/07/2011 == Screenshots == 1. Unavailable == Credits == An [Enthropia Labs](http://www.enthropia.com/labs/) project. Created by David Cramer ([mail](mailto:[email protected]), [website](http://www.davidcramer.net)). Maintained by Robert McGhee ([mail](mailto:[email protected]), [website](http://wwww.robertmcghee.co.uk)). Core concept inspired by [RSS Stream](http://rick.jinlabs.com/code/rss-stream).
Hello.
Lifestream plug in is great! I have it working well with all themes except the one I want to use (and paid a fair amount for.)
In any case, I believe issue is that Thesis doesn't have the header.php file in the place where other themes have it... and also uses a hook system (no idea what this is but) and so the contents of php look really different. When clicking on the Lifestream page with Thesis activated I get:
Warning: require_once(C:\wamp\www/wp-content/themes/default/header.php) [function.require-once]: failed to open stream: No such file or directory in C:\wamp\www\wp-includes\theme.php on line 996
And when I move the file to where lifestream expects it to be then the page is just blank.
Thanks for any help you can provide.
I have encountered this as I am in a different timezone to my server. (Server UTC, me UTC -6)
WP 3+ defaults the PHP timezone to UTC (in wp-settings.php) meaning that time() always returns a UTC, non-offset time.
My feeds would always have UTC timestamps, regardless of the WP timezone setting.
To fix this I amended wp-settings.php to default the timezone to 'America/Edmonton" and the feed timestamps showed correctly.
Then looking at the lifestream-maintenance.php screen the cron jobs were appearing as past times.
For some reason this form applies the LIFESTREAM_OFFSET to the time giving PHP timezone (now, UTC-6) plus the offset (-6)!
If I remove the offset (change the WP timezone to UTC) my feed "last update" in lifestream.php shows +6 hours!
On investigation, I see that WP is dictating that the PHP timezone be set to UTC and the WP timezone be stored as gmt_offset. time() will give a UTC value and current_time() will give an offset value.
timestamps should be stored in UTC and displayed with gmt_offset applied to ensure compatibility across timezones.
By ammending the PHP timezone i'm in danger of getting errors from newer WP plugins based on the WP time standards.
Lifestream seems to have a number of different approached to time display, the feed timestamps have no offset applied, but other time fields within the admin screens do.
You need to add OAUTH
My weekly digest is posted on a Wednesday. Ideally it would be posted on a Sunday night/Monday morning. Ideally an option to choose when the digest is published would be the conclusion.
WordPress: 2.7.1 and 3.0
New Install (or Upgrade): Both
Lifestream Version: 0.99.9.8-BETA (and previous versions)
MySQL: 5.1.39-log
PHP: 5.2.14
Don't believe this to be related to the timezone/date offset issue as 3-4 days surely is outside that.
after using lifestream for about half a year, livestream_event and livestream_event_group are approx 2Mb each in size. database size has an important impact on my low-RAM virtual server's performance, so it would be great if there were a setting to automatically purge events/ event_groups that are older then x months.
I cloned this repo into my plugin folder, fixed the permissions, and tried activating the plugin. Upon doing so, I get the following error returned to all of my Wordpress pages:
Fatal error: Call to a member function add_rewrite_tag() on a non-object in /path/to/blog/wp-includes/post.php on line 845
Wordpress: 3.0alpha (I know, it's bleeding)
New Install
Lifestream Git checksum: dbeed36
MySQL: 5.0.84-r1
PHP: 5.2.12
It'd be great to have support for this in the plugin. I'm guessing it's incredibly similar to the Delicious functionality that's already included.
Twitter feed can't be retrieved starting September 1, 2010. I think it's because they changed to OAUTH instead of the basic one.
WP: Version 3.0.1
Lifestream: Version 0.99.9.8-BETA
It would be great to be able to selectively include certain feeds in the digest. For example I probably don't want to include my Twitter stream, but I would like to include links and shared items.
Would it be possible to add support for the Youtube Like feature, as use-wise, it seems to be working as basically a replacement for the Favorites heart button (even though Favorites still exist)?
Fatal error: Call to a member function get_link() on a non-object in /home/xxx/public_html/wp-content/plugins/lifestream/extensions/youtube/extension.inc.php on line 65
I this a abandoned project (again)?
While browsing around some of the pages in the Lifestream admin section (e.g. Events, Errors), I noticed that the pagination was wonky: every time I went a page deeper, the number of items on the page grew.
I think I traced the problem back to Lifestream::options_page(). Several of the SQL queries here are using the "SELECT ... LIMIT $start, $end" syntax, e.g. "1,50" for the first page, "50,100" for the next page, and so on. In other words, the first parameter is the lower-bound and the second parameter is the upper-bound. According to the MySQL docs (http://dev.mysql.com/doc/refman/5.0/en/select.html), the syntax for the LIMIT clause in the SELECT statement is "[offset], [row_count]", in other words "$start, NUM_THINGS_PER_PAGE". I tweaked the code on my install and sure enough it fixed the problem.
Was this maybe just a simple oversight? Or is this maybe a portability thing, e.g. that the "SELECT ... LIMIT ..." syntax is different across different RDBMS platforms (wince)?
I can whip together a patch quick, if you'd like.
Thanks!
before the update to the latest version the headlines (today, yesterday ...) have been formatted as tags. this seem to be broken with the actual update.
It looks like youtube changed it's urls... It's now:
http://gdata.youtube.com/feeds/base/users/[user]/favorites
http://gdata.youtube.com/feeds/base/users/[user]/uploads
Also line 65 in extension.inc.php I had to comment out
$data['player_url'] = $enclosure->get_link();
The apache error was
PHP Fatal error: Call to a member function get_link() on a non-object
Hi there,
I'm using Lifestream and I am pretty happy with that plugin. While testing the plugin on my localhost, everything worked fine.
Recently, I uploaded my blog to my server and now it appears that my Lifestream doesnt update by itself. Importing and refreshing feeds works. But no automatic updates :(
I had a look at the Cron Tasks in Maintenance and the date for the next attemps never changes.
Is my server configuration wrong? Has anybody a clue how to solve this problem?
Thanks in advance!
I installed your lifestream plugin which is configured to be displayed on the frontpage of www.open3.at (Wordpress 3.0.1)
Unfortunately, if displayed on frontpage, I get the error "The feed being requested cannot be found." when trying to subscribe to its rss-feed at http://www.open3.at/feed/lifestream-feed
If I set another page to be the frontpage, the lifestream rss-feed is working.
It would really be great if this bug could be resolved, as the rss feed is an essential feature of my website.
the URL's in the events seem to be (raw)urlencoded since a couple of weeks, which means e.g. that clicking a link in a youtube-event results in an error.
I think this is related to the simplepie-upgrade that got introduced with lifestream 0.99.9.6. (raw)urldecoding before echoing the html should solve this?
It would be nice if I could show a list of my top 5 artists every week.
All the options in 2.0: http://www.last.fm/api
For some reason I'm am reciving this error on whatever is at the top of my tumblr feed. It dosen't matter what article it is i'll get this error.
tumblr (feed #7)
Warning: Missing argument 2 for Lifestream::get_anchor_html(), called in plugins/lifestream/extensions/tumblr/extension.inc.php on line 66 and defined in content/plugins/lifestream/inc/core.php on line 752
This just started happening recently I'm unsure if anyone else is having the same problem. I've reset the feed a few times and still have this issue. I may dig into the tumblr extention and see if i can figure this out.
Thanks,
Brooke
see: http://www.enthropia.com/labs/forums/index.php?topic=792.0
Basically, without mod_rewrite turned on, these two functions will not keep the page_id that is currently set
Full error here:
exception 'Lifestream_FeedFetchError' with message 'Error fetching feed from http://rss.netflix.com/QueueRSS?id=P7047040984322014615102605798808455queue (This XML document is invalid, likely due to invalid characters. XML error: XML_ERR_NAME_REQUIRED a
Happens on every item in the feed.
Lifestream is excellent. However:
I use google reader, but don't use 'shared items'. 'starred items' suits my needs, and also has an rss feed. I have up to now been using a work around, but would prefer a bespoke method.
thank you
I'm trying to get a new extension added and I have this weird problem. When I forked wp-lifestream on GH and cloned it to my hard drive, it comes with uncommitted changes to two files: extensions/codaset/extension.inc.php and icons/refined/license.txt. What's even weirder is that the diffs look exactly the same! I thought a fresh fork would fix it, but it hasn't.
Has anyone else run into this? Is my copy of Git misconfigured or something?
How would you go about creating separate feeds for youtube and netflix? So one feed is just youtube and the other is just netfilx.
On the Feeds page, you get a nice ordered list of Feeds to add, but it can be difficult to compare that list with the list of feeds you have added, since its not alphabetic like the feeds you can add list.
Make Lifestream Feeds alphabetic Like the list below it
Hi i'm getting the following error:
Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/when2010/public_html/wp-content/plugins/lifestream/inc/core.php on line 2947
this can be seen over at 2010tillwhen.com
Any ideas?
Many thanks
G
Hi Robert,
When you check the feed at http://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Fwww.ihrwebprofi.at%2Ffeed%2Flifestream-feed you get the following errors:
This feed does not validate.
Problem with this invalid rss feed is, that also the very common facebook application "networkedblogs" is not syncing the feeds to the facebook wall.
I cannot get wp-lifestream to display an excerpt for my blog feed using any version of WP-Lifestream, up to and including build 0.99.9.6. Everything else seems to work correctly and has for over 1 year. The feed (http://feedproxy.google.com/Kevindonahuecomclean) is set to show full descriptions. Within settings I have tried every variable for exerpt from 128 to 150 to 500 to 1000 even -1. I can see the post excerpts within the WP-Lifestream db table, so it is capturing the data, but it does not appear to be called at any point during the display. Any tips???
Feedvalidator now states that my rss-feed http://www.ihrwebprofi.at/feed/lifestream-feed is valid, thanks! Nevertheless there are still two problems for me:
Thanks for your help!
When using the twitter feed, it needs a password, which it passes in cleartext. This is a security concern and is not even necessary. Twitter provides an RSS feed. The format is:
http://twitter.com/statuses/user_timeline/USERID.rss
The module should function without needing a password or providing it in cleartext.
Fatal error: Call to a member function get_option() on a non-object in E:\Inetpub\htdocs\clintandrobin\wordpress\wp-content\plugins\lifestream\inc\widget.php on line 187
WordPress 3.0
Lifestream 0.99.9.8 (Github)
Following problems exist with the default TwentyTen theme:
This can be seen here:
Tested with Chrome/Firefox/Safari on Mac. Did not experience this with 0.99.9.6.
I'd like to see full BuddyPress support, that means LifeStream-activity is fed into BPs activity-stream
http://github.com/dcramer/wp-lifestream/blob/master/inc/core.php#L2826
2826 thru 2846
Are those supposed to be double =='s? Could this be some of the problems we've been having lately?
Lifestream works fine in WPMU, but the problem is that it shows ALL options to every user - which just isn't practical in a multi-user environment (especially if you're exposing data and features that only certain user types should see).
Please add an option to only load lifestream.js and lifestream.css on specific pages due to performance reasons
I've just upgraded to the latest version of Lifestream. I'm seeing multiple problems:
Date on Lifestream page wrong: The latest entries, coming from updates done today, show tomorrow's date, not today's date, although when I have a look at the Events, the dates are correct there.
New Lifestream pages keep on being created. I already had a Lifestream page before, and it seems that every time there's a change to the Lifestream settings a new Lifestream page is added.
No pictures showing up in the Lifestream. There are no thumbnails from any of the pictures appearing in the Lifestream (e.g. from Flickr), just showing the picture title.
Is there a way I can fix these or are these Lifestream bugs?
I had to re-create the database because it seems that the upgrade didn't happen completely. so no updates have been appearing. I've been experimenting with this for hours now, trying to get it to work properly.
The previous version worked as expected, so I'm a bit surprised that the newer version has so many problems. If it can't be fixed soon I'll have to disable it because I can't have pages being created again and again!
All help in fixing the problems would be gratefully received.
Thanks!
P.S. I have the latest version of WP and the Lifestream plugin.
The Pandora stuff is not being updated
Need to display the time the article was shared by the user instead of when the article was published by the author.
extensions\googlereader\extension.inc.php
Before line 56:
$data['date'] = $row->data['attribs']['http://www.google.com/schemas/reader/atom/']['crawl-timestamp-msec']/1000;
This will take the crawl-timestamp-msec (which is the time the article was shared, [in milliseconds]) and divide by 1000 to get it's unix timestamp. For some reason my php kept the decimals, but when I tried to (int) it, it was a bogus response.
When watching my lifestream on my iphone (www.ihrwebprofi.at), the lifestream_icons are displayed in the middle instead of top left due to the small with of the screen.
I would prefer if you´d change this in themes/main.inc.php on line 35 to respectively change the lifestream_icon class in the css-file.
1 - Flickr feed shows photos that are not mine, and does not show any of my own photos. Would appear to be from some public stream. I have currently paused this feed.
Feed address is: http://api.flickr.com/services/feeds/photos_public.gne?id=11374616@N00&format=rss_200
I validated this as my feed.
2 - I can't add my Facebook feed. This is the error message:
There were errors with your request:
* Error fetching feed from http://www.facebook.com/feeds/notifications.php?id=767691078&viewer=767691078&key=a1f3040a21&format=rss20 (This XML document is invalid, likely due to invalid characters. XML error: Not well-formed (invalid token) at line 2, column 1)....
This feed URL is no longer valid. Visit this page to find the new URL, if you have access, <a href="http://www.facebook.com/notifications.php">http:/
Lifestream v0.99.9.6
Wordpress v2.9.1
Windows 7
Firefox 3.5.7
Is wipe events working? I click it and nothing happens. Also, can we get a refresh feed button next to it so we can refresh the feed from inside the settings page?
When I change any of the settings in Lifestream, my cron timers get reset. I wouldn't care, but it causes Lifestream to publish a new Digest when it shouldn't.
WordPress: 2.8.2 (Upgrade)
Lifestream Version: 0.99.9.5 DE-Edition
MySQL: 5.0.51a
PHP: 5.2.8
I use my Google Reader shared items (http://www.google.at/reader/shared/harm.robert) for my lifestream - till the mid of November 09 it worked fine, since then (I dont know what changed), I get the following error and feed is not synchronized to my lifestream anymore:
exception 'Lifestream_FeedFetchError' with message 'Error fetching feed from http://www.google.com/reader/public/atom/user%2Fharm%2Fstate%2Fcom.google%2Fbroadcast (XML error: Empty document at line 1, column 1).... Invalid stream name.' in [...]
From this message I found that as username only harm is saved in options and not harm.robert (although entered correctly in admin-interface):
a:7:{s:3:"url";s:46:"http://www.google.at/reader/shared/harm.robert";s:7:"user_id";s:4:"harm";s:7:"grouped";N;s:7:"excerpt";s:1:"0";s:10:"feed_label";s:13:"Google Reader";s:8:"icon_url";s:0:"";s:9:"auto_icon";s:1:"1";}
I tried to change this via phpmyadmin directly to harm.robert but it didnt work, it was overwritten by harm.
Please help
thanks
I have the current version of the Plugin MB Ping Optimizer (http://www.maxblogpress.com/plugins/mpo/) installed together with WP Lifestream. I noticed that my webspace was filling up and I didnt know why. I then found out by chance, that the table wp_mbp_ping_optimizer was morre than a Gigabyte in size. I dont know what exactly caused this, but as I run the plugin MB Ping Optimizer on other blogs without wp-lifestream, I assume, that there must be a connection to your plugin.
I assume that everytime wp-lifestream checks for new entries, all sites which shouldnt be pinged are entered into the table. As this happens every few minutes, I assume that the table is getting big soon.
My solution was to disable the plugin MB Ping Optimizer.
I pulled in a bunch of information and its only showing a couple of them. Am I missing something?
I'd love a JSON API for reading feeds, for consumption via Ajax.
Barring that, query parameters to the RSS URL would be nice.
Hi David,
one thing I miss in wp-lifestream: the option within admin-panel to hide the time of entries. With every update I have to do this manually:
themes/defaul/main.inc.php:
Hope, this feature could make it into the next release.
Regards,
Robert
Hey there.. this is kinda unproblematic, but I just wanted to notice a typo:
In Settings at URL handler, change "You may manually specify the method which Lifestream requests files form the internet." to "You may manually specify the method which Lifestream requests files from the internet."
I added a feed for Identi.ca and when I had @user replies, I would get the following error:
Warning: htmlspecialchars() expects parameter 1 to be string, array given in /path/to/blog/wp-content/plugins/lifestream/extensions/identica/extension.inc.php on line 25
I looked into the matter and it looks like preg_replace_callback on line 30 of extensions/identi.ca/extension.inc.php is not used correctly. On line 25, the only parameter, $user, is being treated as a scalar, when it is actually an array as per the documentation:
http://php.net/manual/en/function.preg-replace-callback.php
I was able to fix it by changing line 25 to be the following:
return $this->lifestream->get_anchor_html('@'.htmlspecialchars($user[2]), $this->get_user_url($user[2]), array('class'=>'user'));
I used $user[2] because according to the documentation of preg_replace_callback, the first index is the complete match and rest are the captures, so this is the second capture (though I'm not sure what the first capture would be).
Wordpress: 3.0alpha (I know, it's bleeding)
New Install
Lifestream Git checksum: dbeed36 (also for 0.99.9.6)
MySQL: 5.0.84-r1
PHP: 5.2.1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.