I have a life. I know, it’s a shame, but I do. I’m a self-employed graphic and web designer who has to spend some of her time learning and keeping up with the latest in the design and development world. Over the years, I’ve built up a nice Twitter account full of 275+ accounts that I follow to help me keep up with everything that is new. Twitter is the #1 way I stay on top of things.
Problem: When I’m away from my computer doing things like spending time with my fiancé, friends, and family, or taking care of anything else. Often that means being away from my computer and Twitter for hours and hours on end. Whenever I get back, I have to spend time catching up on Twitter.
Twitter’s API limits how many tweets you can scroll back in your home timeline. When you scroll back using any Twitter app or the Twitter webpage, it limits you to 800 tweets (or calls to its API). For me, this means only being able to see about 6 hours worth of tweets during a weekday. Boo hiss.
It has always annoyed me that I can’t go back as far as I want. It isn’t like Twitter deletes the tweets – they are still there in the Twitterverse. So why Twitter won’t let me go back as far as I want to read tweets is beyond me.
This problem doesn’t only affect me. My fiancé is a college football editor for a large sports magazine, and he gets all of his breaking news, insider information, and other crucial bits of information through the 650+ accounts he follows (who tweet way more than my 275+ accounts). He needs to stay on top of these things for his job. On an average weekday, he can only load about 2-3 hours worth of tweets. As you can imagine, this causes issues when he wants to stay on top of things but wants to do other things like sleep. He could miss really crucial information when he is away from his computer.
Theory: For over a year now, I’ve been trying to find a way to help both my fiancé and myself out so we don’t have to stay on top of Twitter as much as we have in the past. We don’t want to miss our tweets, but we want to have a life too.
My idea was to find a way to read the Twitter home_timeline and have it stored permanently elsewhere for us to read later.
I’ve normally been opening a Chrome tab with Twitter in it, scrolling all the way to the bottom, then saving the web page to read later. This has worked some, but it isn’t ideal and sometimes I still don’t get a chance to do that and I miss tweets.
Using my knowledge of web development, my idea was to find a way to pull Twitter’s home_timeline into WordPress and post it as a WordPress post. WordPress posts are permanent and WordPress doesn’t limit you on how far back you can scroll. It took a year to figure it out, but I’ve finally got a working solution.
Note: I’m no expert at WordPress, and I know nothing of the Twitter API. This is my best attempt to try to do something to help my fiancé and I save time, so it isn’t pretty, and there are a lot of things missing that others may feel are important.
On that note, at the end of this post is a plea to help me make this better, and I’ve made available my WordPress theme in Github for those who want to make with it what they want, or to provide help in achieving the list of things I want to do.
Solution: Using a fresh WordPress install, Twitter, Twools Plugin, IFTTT, a custom WordPress theme, and a handful of other plugins I was able to have WordPress act like the Twitter home_timeline.
I’ve put in several features to help my fiancé and myself with how this WordPress Twitter App can benefit us. The feature list includes:
- A simple design that mimics the layout of Tweets on twitter.com.
- Password protected site so that outsiders can’t see the site without a password.
- A bookmark post option to help save your spot should you need to leave your site for any reason.
- Mass delete plugin to help delete large posts as they become unwanted.
- Sidebar full of those you follow, so you can click their name and pull up all of the tweets they’ve tweeted and that are stored in your WordPress Twitter Timeline admin.
- Links to the actual tweet on Twitter should you want to reply, retweet, follow, interact, etc.
- Link to the actual Twitter user at the top of every tweet, should you want to go directly to their Twitter page for any reason.
Step One: Fresh Install of WordPress.
I don’t want to get into the specifics on how to install WordPress on a server, but having the Twitter App works best when you have it on a fresh install on its own subdomain. For example, I did mine on twitter.amberturner.com (don’t try going there, it is password-protected – more on that later).
Depending on your hosting environment, you can either do a one-click WordPress install or install WordPress using their 5 step installation found here: http://codex.wordpress.org/Installing_WordPress. Either way, this tutorial isn’t meant to go in-depth on installing WordPress, so hopefully the previous link will help you do so if you don’t know how.
Step Two: Download, Install, and Activate Custom Twitter Timeline WordPress Theme.
I’ve publically released my WordPress Twitter Timeline Theme that I’ve been using with my two sites. It isn’t pretty, but I’ve designed it to be quick loading and easier to navigate. I created this on the fly from a starter WordPress theme I use for all of my sites, so there are obvious files that are in use that will not be used (i.e. comments.php).
Download and install the custom WordPress Twitter Timeline Theme here: January Creative on GitHub - WP Tweet App. Also, feel free to submit pull requests if you have added/fixed/changed something that will be a benefit to others using this as a Twitter Timeline.
Step Three: Install the Following WordPress Plugins.
- Password Protected: https://wordpress.org/plugins/password-protected/ It allows you to password protect your entire WordPress install so outsiders can’t see your website (ideal to keep the tweets you see safe).
- Twools for WordPress: http://iag.me/twools/ Allows you to create a RSS feed from your Twitter home_timeline. You must download this and manually install it using WordPress’s upload install in the plugins menu.
- WP Mass Delete: https://wordpress.org/plugins/wp-mass-delete/ Allows you to mass delete large numbers of posts. Not the best working plugin, but only one I can find that works simply (open to better suggestions). You will want to delete old tweets from time to time.
Step Four: Configure WordPress.
In order to do a few things with WordPress to get your Twitter Timeline working, you need to set the following options:
- Go to Settings > General and configure the correct Date and Time settings to correct settings for you.
- Go to Settings > Reading and change “Blog posts show at most” to a really high number, i.e. 100,000 (this eliminates pagination).
- Go to Settings > Permalinks and select the “Post Name” option.
- Go to Settings > Password Protected and select “Enabled,” and “Allow Administrators.” Also set your password. This will be the required password to access your site so make sure to remember it.
Step Five: Create a Twitter App.
In order for your WordPress install to work with your Twitter account, Twitter makes you create an app through them to allow communication back and forth. Thanks, Twitter, for making our lives difficult in the post-RSS feed world.
Go to apps.twitter.com and sign in with the Twitter account you wish to use with your WordPress Twitter App. In the top left there is a button labeled “Create New App.”
Name the app anything you want as long as it doesn’t use the word Twitter or Tweet. Also you can put in a description. These two items really don’t matter as you will be the only ones to see these descriptions. Your website should be the new WordPress install URL, i.e. twitter.amberturner.com. Finally, click “Yes, I agree” (after reading the Developer Rules of the Road) and click “Create your Twitter Application.”
Step Six: Activate Twools with Your Twitter Account.
Twools is the main plugin that will run this whole shindig (yes, I said shindig). Under Settings > Twools is where all the magic happens but it can be confusing.
Go to Settings > Twools. You will notice that you need to enter in your Twitter screen name, OAuth access token, OAuth access token secret, Consumer key, and Consumer secret. These are all from the Twitter App that you created above.
Flip back and forth between the Twitter app tab and your Twools/WordPress site tab and fill in the Consumer key and secret in Twools where it says “consumer key” and “consumer secret.” Then for the OAuth access token and secret, enter in the access token and secret in those spots.
For the Twools Secret String, simply click “Generate Random String.” This allows for privacy and hard-to-guess RSS feeds that Twools will produce.
Change cache time to 1 second. Also DO NOT allow Twools access to your Direct Messages.
Click “Update Settings” and insure that Twools can connect to your Twitter Account.
Step Seven: Create Your Twools RSS Feed from Twitter.
Once everything is good to go with Twools and it can connect to your Twitter account, at the top of the Settings > Twools page, click “Launch Twools.” The page will refresh to look like a whole different website, but you will notice you are still in your WordPress site by looking at the URL.
From the Twools Dashboard, click “Go To Feeds” (orange button on the right). This is where Twools will create your Twitter RSS feed that you will use in the next step.
For the Input Field, select “Home Timeline” and below it, select “200” for how many results should they work with. Leave all other settings alone and scroll to the bottom and click “Generate Feed.”
The page will refresh with the RAW RSS feed. You will need to keep this tab open and use it for the next step below.
Step Eight: Register and Activate IFTTT for Feed to WordPress Post Recipe.
Register and login to your IFTTT account here: IFTTT. If you already have IFTTT and don’t already have the WordPress channel activated, then simply login. If you have an IFTTT and have the WordPress channel activated, IFTTT will not let you add a second WordPress site, so you will need to create a new IFTTT account to use for your WordPress Twitter Timeline site.
Once you are logged in, activate the WordPress channel by providing the appropriate WordPress login information and accepting all access questions it asks you.
Create a new recipe by going here: Create new IFTTT recipe. Click “This” and then select “Feed”. Then select “New Feed Item” as the trigger. It will then ask you for your feed URL (step 3 of 7). Go back to your Twools tab where the RAW RSS feed is and copy the URL in the address bar of the browser. Go back to the IFTTT tab and paste the URL into the “Feed URL” box, then click “Create Trigger.”
The page will then scroll a bit and will have “that” highlighted in blue. Click “that” and then select the WordPress channel you activated earlier. For the action (step 5 of 7), click “Create a Post.”
Your “Title” box should read “EntryTitle” and the “Body” box should read the same as the image above. Your “Categories” should be “EntryAuthor” and anything else you would like; your tags should be “IFTTT” or whatever tags you want to use, and your post status should be “Publish Immediately.” Once these boxes are filled in, click “Create Action.” Finally, review everything and if everything looks good, give the recipe a title and then click “Create Recipe.”
Step Nine: Check IFTTT and see if everything is running.
At this point you are pretty eager to see this thing in action. Since IFTTT only runs every 15 minutes, you can force it to run sooner for testing purposes by clicking the circle arrow button to “Check Now” on your newly created recipe. If everything is running well, IFTTT will pop up a green bar that says “recipe checked” and you should start seeing your first WordPress posts pop up in your WordPress install by going to the home page of your WordPress site.
Optional Feature: Implementing the Bookmark Feature
I’ve added a unique feature to help me keep track of where I am in my feed should I need to leave my computer. Adding a Bookmark will add a special type of post that is very noticeable so that if you want to come back to where you left off, you can easily find it in the crowd of other tweets on the page.
If you want to create a bookmark so you can easily come back to where you left off in your Twitter Timeline, implementing the feature is simple and outlined below.
- Go to Posts > Categories and create a “Bookmark” category (if you want to use this feature).
- Go to Settings > Writing and select “Bookmark” as the default posting category (if you want to use this feature).
To create a bookmark, simply create a new WordPress post and select “Bookmark” for the category. Title the post however you want (you may want to leave a little note for yourself here) and a description in the larger content box below. Finally, change the publish date to the date and time you want to put your bookmark on. For instance, if you stopped reading your timeline on October 15, 2014 at 4:15pm, make sure your bookmark is for this time. As you see in the image above, your title will become the “Note:” you see there.
Please note: the placement of the bookmark by WordPress is extremely close to where you actually want it. It may be a tweet or two off so it is recommended to read a few tweets below the bookmark to make sure you don’t miss any tweets.
Note: I’ve caught myself not using this feature as much as I thought I would, as I tend to catch up with Twitter all at once. However, I have used it when I was several days behind AND needed to restart my computer (causing me to lose my place in the browser). Since I leave my computer on all the time, I often just leave the tab open and it keeps my spot for me.
I don’t claim to know everything or have all the answers. That is why I wrote this tutorial, mainly to help others who want to do the same thing, but also for help and ways to make this better, since it is becoming a crucial part of my workflow. After using this setup for two months now, here are the known issues I’ve had:
- WP Mass Delete plugin doesn’t always work well. It will often bring up a “no data received” page in which you often have to reload the page. After reloading the page, it will still work on deleting posts that you selected to delete in the background while you are using the WordPress dashboard. This is a very slow process and…..
- WP Mass Delete plugin also don’t always delete all the posts in the range you select. Often if you are trying to delete a lot of them, you will have to run this process several times.
- Depending on how many tweets you receive, your WordPress setup, and how many tweets you have stored, your WordPress site could become slow and unresponsive, and even pop up cache memory PHP errors. If this happens, then you need to work on deleting older tweets that you don’t need anymore. I have found doing this on two sites that the breaking point is often around 10,000-12,000 posts.
- IFTTT often stops working when it finds a glitch of some sort. It’s very hard to pinpoint where a glitch happens that causes IFTTT to pop up with a “Feed Trigger Error” message.
I need help.
Obviously this isn’t a perfect setup, but I would like to get it to be closer to perfect and especially more reliable. This is the areas I know I need help in, so please offer advice if you are more knowledgeable than me.
- How to display Twitter Avatars for each user, much like the current twitter.com home page is when you are logged in.
- How to display pictures in the tweet much like Twitter does on the current twitter.com home page when you are logged in.
- How to display their Twitter name beside their Twitter handle, i.e. “Amber Leigh Turner (@amberlturner).”
- Possible reply and retweet buttons and have those function appropriately without first going to the tweet on Twitter.
- A better, more effective plugin to mass delete posts than the current WP Mass Delete plugin I’m using. I’ve looked, and nothing seems to work well.
- How to stop getting memory PHP errors (is there a WordPress setting to change to make this less evident?).
- How to keep IFTTT from crapping out from time to time saying “Feed Trigger Error” (I have a feeling this is tied to memory issues outlined above).
- Making the WordPress theme responsive. I just simply don’t have a lot of time (or current need) to make this responsive for myself, but others may feel like they need to check this from their phone, so if someone wants to contribute and submit a responsive update to the theme, it will be greatly appreciated.
- Any other ways to speed up, streamline, and otherwise improve on this method of posting Tweets to WordPress to read later is greatly appreciated. I have no idea what I’m doing here, which is why it took me a year to come up with this solution.
Feel free to leave any comments below about this article or if you have any questions. You can also chat/ask me questions on Twitter too at @amberlturner.
It is highly likely I will be updating this post often as I add more information and things get fixed as I use this app in my everyday life and/or people help contribute help to it.
Last time this post was updated was on: October 16, 2014 and it was the initial post.