Disclaimer added 2014-10-03: I have not updated Tweet This since 2011-07-05 and lost interest in maintaining it. It has outstanding bugs and probably doesn’t even work work properly anymore due to changes to the Twitter API.
Download Tweet This 1.8.3 [0.8MB .zip]
Popular Twitter plugin inserts “Tweet This” links so your readers can share posts with one click. Can automatically tweet new posts via OAuth. Allows you to publish and schedule tweets from a new “Write Tweet” page. Supports 10 URL shorteners including Bit.ly, Su.pr, and TinyURL. Includes options for 20 social networks including Facebook, Bebo, and MySpace. Includes the Wickett Twitter Widget for your sidebar and many other options.
1.8.3: 2011-07-05: Small update to fix compatibility with WordPress 3.2.
Upgrading from 1.8.2 to 1.8.3
1. Upload the new /tweet-this/ folder over the old folder in your plugins folder.
2. Tweet This 1.8.3 is installed.
General Information
Tweeting a post on Twitter takes up a lot of space, because URLs quickly eat up your 140 characters. While your readers might copy the permalink, go to Bit.ly or TinyURL, shorten and copy the new URL, go to Twitter, and paste it into the status box, this plugin merges all that into one step.
This plugin makes short URLs like http:/example.com/?p=1234, then displays a link to Twitter for each post, with an optional icon (20 choices). This is done automatically for each post as needed. You can choose a URL shortener including Adjix.com, B2l.me, Bit.ly, Is.gd, Metamark.net, SnipURL.com, Su.pr, TinyURL.com, and Tweetburner.com. Each shortened URL is cached as a custom field in the postmeta table to keep load times fast. The cached records are updated or deleted as needed when you edit a post’s permalink, delete a post, change your site’s permalink structure, or change URL services. In WP 3.0 or later, Tweet This hooks the short URLs into the get_shortlink filter.
This plugin can also tweet new blog posts automatically, if you provide your Twitter credentials in the options. Then a “Send to Twitter” checkbox appears when writing a new post, along with a text box so you can change the tweet text for that specific blog post. As of 1.7, OAuth is used.
Unlike Tweetmeme, ShareThis, and other Twitter plugins, Tweet This inserts links without JavaScript, iFrames, or third-party dependencies. An example: http://twitter.com/home/?status=Example+Post+http://example.com/?p=1234
Copyright 2008 – 2011 Richard X. Thripp (email: richardxthripp@thripp.com)
Released under Version 2 of the GNU General Public License as published by
the Free Software Foundation, or, at your option, any later version.
Tweet This Version History
Tweet This Blogs
Tweet This Icons
Tweet This Wiki on Thripp.org
Tweet This on WordPress.org
Tweet This Installation
Before you begin, please make sure your server has PHP 5 and Curl enabled. While you can use Tweet This on PHP 4, all OAuth functions require PHP 5. Tweet This requires WordPress 1.5 minimum, with the following exceptions:
1. Importing exported options requires WP 2.0.
2. Automatic tweeting requires WP 2.7.
3. The Twitter Updates widget requires WP 2.8.
4. Adding short URLs to the get_shortlink filter requires WP 3.0.
5. Moving the Tweet This box around the Write Post page requires WP 3.0.
If you are installing Tweet This for the first time, follow these steps:
1. Upload the `tweet-this` folder to `/wp-content/plugins/`.
2. If you’re using WordPress MU and want this plugin active for all blogs, move `tweet-this.php` to `/wp-content/mu-plugins/` at this point.
3. Else, activate the plugin through the ‘Plugins’ menu in WordPress.
4. Tweet This icons should automatically appear on every post and page! Go to Settings > Tweet This to change settings and set up auto-tweets.
5. Optionally, delete readme.txt and the screenshots folder to save space.
Tweet This Donations
If you like Tweet This, consider donating $5.00, $10.00, or a larger amount via PayPal. As of Feb. 22, 2010, I have received $94 in donations since the initial release of Tweet This in Sept. 2008.
2011-02-22: $25.00 from Canopus Research Inc.
2011-02-17: $10.00 from Berend de Meyer.
2011-01-20: $5.00 from Nigel Boulton.
2010-10-27: $2.00 from JJ Soule.
2010-10-24: $10.00 from Linda C.
2010-10-20: $10.00 from Gareth Davies
2010-10-08: $1.00 from Tache Madalin
2010-10-01: $5.00 from Marcos Ramos
2010-09-20: $10.00 from Linda Worthington
2010-09-18: $1.00 from James Magary
2010-09-15: $10.00 from Miter Saw Reviews
2010-09-15: $5.00 from Kinoshita Communications LLC
Tweet This Screenshots

1. Tweet This options page: all sections closed.

2. Tweet This options page: all sections opened.

3. The Write Tweet page, having just published a tweet.

4. A post with Tweet This links; Twitter Web API and Share API.

5. Publishing a tweet alongside a new post.

6. The Twitter Updates widget included with Tweet This.
Hey Richard, for some reason, the tweetthis button works, but not the facebook share, delicious, stumbleupon, or any of the other options I have enabled in extended services. Any idea why?
I don’t know, did you make sure to check the boxes in the Extended Services section that say “Insert Facebook,” “Insert Delicious,” etc.?
I am using newest version – with a few minor hacks that you know about.
But I am finding that posts that are preset with a publish date in the future are not tweeting – am getting a 403 error?
Make sure you are not posting the same tweets twice, Twitter doesn’t like duplicate tweets and will return 403 in that case.
nope not duplicate
this is brand new posts
so on monday set up one for tues, one for wed, one for thur etc… all different
the posts publish, but tweet-this is not pubishing my tweet – which is set to publish an excerpt
Did you use the edits I sent you? I don’t know what the problem is. I’m going to work on Tweet This sometime next week and I’ll try to work this out. I think you’re the only one using [EXCERPT] as the tweet text, so there could be bugs there.
Pingback: …rodando pelo mundo… » Blog Archive » Turbine teu blog com os melhores plugins!
Pingback: Top 10 Twitter Tools for WordPress Blogs - AllTwitter
I recently updated and setup the tweet plugin and I get this on my posts on the right hand side of the page in the backend of the website where the posts are.
Tweet failed. Twitter returned HTTP 401. Check your OAuth settings and re-save this post to try again.
In the settings everything is a GO, all green and ready when I test the settings.
Try again now, Twitter was down a few minutes ago.
If twitter is down AND ITS NOT, how come in the settings its saying when I test…Authentication succeeded, please save.
Still not working.
Make sure the Consumer Key is entered correctly. I think Twitter will return success for the authentication test regardless of what the consumer key is, but it may be needed to actually publish the tweets.
Also, make sure the Twitter application is set to “Read & Write” access. Try creating a new Twitter application if it still does not work. Then, try a different plugin such as WP to Twitter or Twitter Tools. I don’t think there are any problems with you server — it’s either a Twitter or Tweet This issue.
Installed WP to Twitter and this message now comes up
One or more of your last posts has failed to send it’s status update to Twitter. Your Tweet has been saved in your post custom fields, and you can re-Tweet it at your leisure.
500 Internal Server Error: Something is broken at Twitter.
Sorry! I couldn’t get in touch with the Twitter servers to post your new blog post. Your tweet has been stored in a custom field attached to the post, so you can Tweet it manually if you wish!
I think its safe to say TWITTER has changed something that you DEVS do not know about.
It’s working fine for me, so I guess I was wrong. It’s something on your end. Can you ask your web host about it? Did you copy the application keys into the right fields? You have to click “My Access Token” on the right side of the Twitter application detail page to get the Access Token and Access Token Secret.
I copied the correct keys.
I really can’t help you because I can’t think of anything else for you to try. If no plugins will work on your blog, there’s always Twitterfeed.
Ahh not so fast. Apparantly WP to Twitter does work and Tweet This doesnt.
WP to Twitter did in fact post a test tweet, see it here
http://twitter.com/#!/dachshundjack
I just need to get me an key to use bit.ly
YES WP to Twitter is now fully functional on my site.
Alright, just stick with that plugin then.
Authentication failed, make sure your keys are entered correctly.
That message is displayed if Twitter returns any HTTP code besides 200. Twitter could be down, or one of your four keys could be incorrect. Try creating a new application if it still doesn’t work.
PHP Version 5.3.1
cURL support enabled
cURL Information 7.20.0
Make sure both libcurl and php5-libcurl are enabled… Make sure the application is set to “Read & Write” access on Twitter’s end, and that you’ve not mixed up any of the four password keys. For two of them, you have to click “My Access Token” on the right side of the Twitter application detail page.
how to see the status of libcurl and php5-libcurl ?
I think you can create a PHP file that says <?php phpinfo(); ?> and then load it in your browser to see all the modules that are installed… just use Ctrl + F to make sure libcurl and php5-libcurl are there.
on my phpinfo it only mention this.
———————-
curl
—-
cURL support enabled
cURL Information 7.20.0
Age 3
Features
AsynchDNS No
Debug No
GSS-Negotiate No
IDN Yes
IPv6 Yes
Largefile Yes
NTLM No
SPNEGO No
SSL No
SSPI No
krb4 No
libz Yes
CharConv No
Protocols dict, file, ftp, http, imap, pop3, rtsp, smtp, telnet, tftp
Host i686-pc-linux-gnu
ZLib Version 1.2.3
———————-
not enough ?
Well, I’m not really sure, but I think that’s enough. The issue is probably something else.
Try installing WP to Twitter and see if it works.
and… it comes with this…
OAuth Authentication Failed. Check your credentials and verify that Twitter is running.
There is another plugin you could try called Twitter Tools, but I think there’s an issue with your server or Twitter application. Try creating a new Twitter application with a different title, maybe “Hina Magazine Tweets”.
actually, i had create 2 application and install 5 wp plugins and it still comes with the same issue.
what kind of issue that come from my server may block the plugin to work ?
i had check the server time and cURL, any thing else ?
It could be your web host. They may have an incompatible version of the OAuth library installed which overrides all versions included in WordPress plugins. Try contacting them, and also register a new Twitter account with a new application to make absolutely sure it’s not a Twitter issue.
is there a way to find out the exact error ?
I don’t know, I’m not sure what is causing the problem really. I would have to have access to your wp-admin / FTP / MySQL and do a lot of Google searches to figure it out, most likely.
Pingback: Playing around with new plugins
Pingback: Twitter und Facebook bei Wordpress | repats blog
Pingback: Must have Twitter Plug-ins, Part 1 | Tweetandmore.com - Twitter Marketing Tips
Pingback: Най-добрите плъгини за Twitter | Изработка на сайтове
Upgraded from 1.6.x, and the OAuth is failing completely.
Checking the apache error log, there’s a tonne of messages generated every time I hit the “test twitteer oauth” message.
I’ve triple-checked that I copy/pasted the Twitter new-application details correctly, so I don’t *think* that’s the problem.
Error messages:
Cannot adopt OID in NET-SNMP-EXTEND-MIB: nsExtendOutput1Line ::= { nsExtendOutput1Entry 1 }
Cannot adopt OID in NET-SNMP-EXTEND-MIB: nsExtendOutLine ::= { nsExtendOutput2Entry 2 }
Cannot adopt OID in NET-SNMP-EXTEND-MIB: nsExtendLineIndex ::= { nsExtendOutput2Entry 1 }
Cannot adopt OID in NET-SNMP-AGENT-MIB: nsNotifyStart ::= { netSnmpNotifications 1 }
Cannot adopt OID in NET-SNMP-AGENT-MIB: nsNotifyShutdown ::= { netSnmpNotifications 2 }
Cannot adopt OID in NET-SNMP-AGENT-MIB: nsNotifyRestart ::= { netSnmpNotifications 3 }
Cannot adopt OID in UCD-SNMP-MIB: laErrMessage ::= { laEntry 101 }
Cannot adopt OID in UCD-SNMP-MIB: laErrorFlag ::= { laEntry 100 }
Cannot adopt OID in UCD-SNMP-MIB: laLoadFloat ::= { laEntry 6 }
Cannot adopt OID in UCD-SNMP-MIB: laLoadInt ::= { laEntry 5 }
Cannot adopt OID in UCD-SNMP-MIB: laConfig ::= { laEntry 4 }
Cannot adopt OID in UCD-SNMP-MIB: laLoad ::= { laEntry 3 }
Cannot adopt OID in UCD-SNMP-MIB: laNames ::= { laEntry 2 }
Cannot adopt OID in UCD-SNMP-MIB: laIndex ::= { laEntry 1 }
Make sure you are using PHP 5.0.0 or newer. Is your blog public, and if so, what is the URL?
PHP: 5.3.3
Blog URL: http://apprejections.com
That looks good. What happens when you click “Test Twitter OAuth”? Normally, it will say “Testing…” for a few seconds and then “Authentication succeeded, please save” or “Authentication failed, make sure your keys are entered correctly.” Does it say anything?
Nope, it just hangs at that point, and puts those lines in the logfile.
I’ve left it for > 10 minutes, and it’s still saying “Testing…”
Make sure your Twitter application is set to “Read & Write” access on Twitter, though I think the problem is elsewhere. It might be something with the OAuth libraries. Try disabling any other Twitter plugins if you have them enabled, and check your server to make sure it is not defining its own PHP class TwitterOAuth (I’m not sure how you check this).
If this doesn’t work, please install WP to Twitter and Twitter Tools and let me know if either of those plugins work.
Thanks, but at this point, I’m giving up.
Manually checking the WordPress source code to see if they’re defining a class is far too much effort.
I’ve deactivated, and I’m going back to manually tweeting.
A real pity that Twitter killed the old auth scheme, which worked fine :(.
I know, it actually brought me out of plugin development retirement. I use Tweet This on my blog for every blog post, so I had to make it OAuth compatible.
It’s not a WordPress source issue; it would be something with your Apache or PHP extensions. But I can’t be of much help because Tweet This is working for me and I no one else has reported your problem yet.
Ah! Found it!
I mentioned this to a friend, and he pointed out that some wordpress plugins don’t check properly for the presence of PHP plugins, so I went back to check this again, although I’d checked the server had libcurl already.
Your instructions say “make sure the server has curl” – and it does, both as libcurl and as the command-line util curl. But what it didn’t have was “php5-libcurl”, the php module … which I guess is what you meant?
I suggest you add a check in your “test” routine that throws an error message if the curl plugin is missing.
I also suggest you change the install instructions to say you need the php5 curl module, not curl itself (some php apps invoke curl from the commandline, so it’s not entirely clear which you mean)
I didn’t know there were two versions of Curl, but it looks like the OAuth library I use requires php5-libcurl. Tweet This requires libcurl of the allow_url_fopen setting to get external short URLs (not necessary if you use local URLs), so you actually need both. I’m glad you figured this out and I will do something about it in the next version.
After Upgrading .. it is not working for me. When I try to Tweet, it gives me following error Tweet failed. Twitter returned HTTP 403. Check your OAuth settings and re-save this post to try again.
I have checked OAuth Settings, everything is fine and I have also re-saved it but still getting following error which is irritating.
That usually means the tweet was over 140 characters or you published an identical tweet to Twitter in the past 25 hours. Also, make sure the Twitter application is set to “Read & Write” access.
No it wasn’t more than 140 characters, and it wasn’t an identical tweet. Also, I know about the Read & Write setting .. it is perfectly good. I have opened my Twitter Account few minutes ago and saw that the posts were there that I was trying to submit, that means they were publishing on Twitter but I am not getting confirmation from your plugin it is still showing error and publishing my tweers as well. LOL
Thanks guys,
This is great, I’ve been getting this error for ever always thinking the tweet never made it to Twitter.
So, I just tweeted from a post, got this error and checked Twitter and found that the tweet actually appears even with the error.
That is great! So, this plugin really does work!
What I want to do now is put some HTML here to see if I can link to this page and get it to stop here to let everyone know the solution!
Here it goes:
For Solution to error 404, 401(?), etc. read “atif” remarks above here and Richard X. Thripp’s response! It works!!!
I hope this works xxx.
John
OH, I just need to link to the comment number, OH well, I’ll do that so at least people reading my inquiry at Twitter forums can find their way here for the solution!
Pingback: A Great Tip and Advice to Create Your Blog or Website (Part II) |
Pingback: A Great Tip and Advice to Create Your Blog or Website |
Pingback: WordPress Plugins You Need to Know About
hi, can i use some of your content in my school assignment?
Of course.
I love this plugin – it does exactly what I want it to do – but I would love it if you could add a link to share with Tumblr, as well, as an Extended Service. Thanks!
Okay, I’ll look into this, Tumblr is getting popular.
This is an awesome plug in. Thank You.
Since the last update, though, there is a footer that says….. Twitter links powered by Tweet This v1.8, a WordPress plugin for Twitter.
Is there a way to delete that from my footer? I understand the need for the advertisement but is there another way for the advertisement? Like a clickable word under the icon “tweet this’?
I’d like to keep my pages clean and do not like having a footer of any kind.
Thanks.
Uncheck “Insert Tweet This message in footer” in the options under the Advanced Options section, then save. This is off by default, but if you used an old version of Tweet This (before 1.4) at some point in the past, it could be enabled automatically.
Thank YOU! Now I’m gonna have to donate because you are so quick and so nice!
On my related comment……can’t you add a little word underneath “Tweet This” for people to click and get to your plug in page?…like feedburner or linkwithin do? I think that would be discreet and effective. Just sayin’…
Thanks again.
Thanks Karen! Well, I think the footer link is less intrusive than having a link below the actual icon, so that’s the only option. If someone wants to find the plugin, it’s the first result in Google for tweet this and tweet this post.
Pingback: Blog Informatizado » Blog Archive » WORDPRESS: 14 plugins para interagir com seu Twitter | Compartilhando conhecimento na web - O blog do daniel nunes
Hi Richard,
Great plugin!
I have only one issue which is sure to be down to my theme but hopefully you have a work around that I could use.
Basically if you view my blog you will see that the icons are appearing next to my images instead of below at the end of the post. The most recent post has them formatted correctly because I put after my image to force the tweet this icons to not wrap next to the image.
I don’t want to do this for every post – is there anything I can do to force the tweet this icons not to wrap next to my images?
Thanks in advance.
…The most recent post has them formatted correctly because I put…
BR CLEAR=”left”
…after my image
The Tweet This links are inserted in a paragraph tag inside a div titled “tweetthis”… The div is set with the inline CSS style=”text-align:left;”. On most themes, this should automatically appear on a new line.
You could try renaming tt-config-sample.php to tt-config.php and changing the constant defined in that file, TT_PREFIX, to start with <br />.
Pingback: 6 Tools to Nurture and Engage Your Twitter Followers | Streamlined Life
I’m pretty new to all this but I think I got Tweet This installed and running correctly. However, on my blog http://www.fstoppers.com we post excerpts and right now the retweet icons are only showing up on the full posts. Is there a way to add retweet to excerpts automatically? Maybe I’ve just missed it or it’s an extra piece of code I have to type in.
Tweet This just hooks into the WordPress filter the_content, so the links won’t be displayed on excerpts. You could try adding this line to your theme’s functions.php file or just add it near the end of tweet-this.php:
add_filter(‘the_excerpt’, ‘insert_tweet_this’);
Thanks, I just added it to both those files. Is there anything I need to do to refresh the site or have the code work? Maybe it will show up in the next day or so
Well, I guess I gave you bad code then. I’ve never had a need for Tweet This to appear on excerpts. On this blog, I use a plugin called The Excerpt Reloaded to generate my excerpts using the the_content filter, so Tweet This shows up on truncated posts on archive pages. I just wrote a large post about it: Making WordPress Tag Balancing Work with Exec-PHP.
Thanks, I’ll have to look into it. I just got TweetMeme to show up on the excerpts and your program is awesome as well.
I didn’t know you were a photographer. What sort of thing do you do mostly?
Art and nature, I have about 300 photos on this site. What do you take pictures of?
I’m a wedding and commercial photographer. This Fstoppers.com website is quickly becoming my full time job though. You can check out http://www.patrickhallphotography.com
Fstoppers is nice, but your personal sites are awful. Why do I need Flash 8 and why do I need to disable my pop-up blocker? Why are you using 3 separate domains for different types of photos? A subdomain on your main domain would be much better. How come I cannot select text on your pages? Again, don’t use Flash. How come patrickhallphotography.com has no about information, contact info, or pricing? It does not even have your location. How come you’ve hidden the dates on your blog? I could go on and on. The most important thing is to never use Flash.
What don’t you like about the personal sites besides it being flash? I don’t mind Flash except the iphone/ipad doesn’t display them.
The reason I have multiple domains is because it’s better business to not have a photography site with all genres of photography. If your commercial clients see you shoot weddings they will not want to book you. If your wedding clients see your sexier stuff, they will be turned off. It’s best to market each type of photography with it’s own website so you appear more of a true professional within that field rather than a jack of all trades. People don’t like booking someone good at everything; they want to think they are hiring someone who is the best in that particular field. That’s why patrickhallphotography.com is setup more as a hub rather than a website.
As for hiding the dates on my blog, I hate running a blog and I don’t update it very often. So I don’t want my clients to see that the last post was 4 months ago. I’m gotten most of my websites to the top of Google with their most popular keywords so I don’t see a problem with the way I’ve setup my sites. Business is booming and most clients don’t browse for photographers on iphones/ipads anyways so the flash sites haven’t seemed to hurt me.
Flash isn’t like HTML. Google can’t index it, you can’t select text, and it’s basically a closed and locked up format. It also loads slower. Sometimes it’s required, but you don’t want to do most of your site in it.
As for attracting clients, I wouldn’t know anything about that because I don’t take clients. However, I think you would get more clients with a regular HTML site. You could use subdomains like weddings.patrickhall.com and commercial.patrickhall.com. That way you would rank higher in Google because you would not be splitting yourself across multiple domains. Of course, you need a shorter domain name.
Pingback: 6 Tools to Nurture and Engage Your Twitter Followers | Dangerous Info
Does your modification re-publish identical tweets on a rotating basis? I thought the Twitter API would not let you publish the same tweet twice.
There is a time frame; if they’re republished within a certain amount of time (an hour, maybe?) Twitter generates a 403 error, but otherwise, it works. But I haven’t implemented this in the main version of Tweet This yet.
You cannot repost in the same 25 hour period – right now. But seems twitter is getting better at watching for serial posters/spammers – my guess is they will get more sophisticated at stopping those who post the same thing over and over.
I doubt it, and we could always get around it by changing the post.
LOve love love your plugin – thanks so much!!! Sent you a paypal
I am using your plugin for about 40 blogs on a wpmu. I only post [EXCERPT] to twitter, this was working great till today – every post gets a 403 error. then I hit publish again and the tweet goes through… this is troubling as I preset many posts. Is this just a glitch today do you think… or is something off on my tables?
Also – I repost the posts 30 days later using another plugin. but they wont post to twitter unless I manually go into each post and delete tt_tweeted field. I would like to just comment out the lines that writes to that field – which lines would they be?
thanks again
Did Twitter ban your Twitter applications? Check the email inboxes for those Twitter accounts and try creating new applications if Tweet This continues to receive HTTP 403 errors.
You may be sending too many tweets at once. Even if you are using different Twitter accounts, applications, and domains, all the tweets are sent from the IP address of your server so try staggering your scheduled posts, i.e. one at 6:00am, one at 6:05am, one at 6:10am, etc.
What plugin are you using for retweets? Tweet Old Post? Or something else? I doubt it uses the same custom fields as Tweet This, but if you want to remove the tt_tweeted field from Tweet This 1.8, delete “update_post_meta($post_id, ‘tt_tweeted’, ‘false’);” from line 1290 and “update_post_meta($post_id, ‘tt_tweeted’, ‘http://twitter.com/’ . $data->user->screen_name . ‘/status/’ . $data->id);” from lines 1285-1288 in tweet-this.php. Note that Tweet This will no longer record if a post should be tweeted, should not be tweeted, or has been tweeted, so you should leave “‘Send to Twitter’ defaults to checked on unpublished posts” and “‘Send to Twitter’ defaults to checked on unpublished pages” unchecked in the options.
Since nothing has changed in Tweet This, this is probably a Twitter issue, or something with their new “Snowflake” status IDs which are 20 numbers instead of 11. Tweet This should be set up to handle that already, though. Let me know if the 403 errors persist.
Finally, thank you very much for your donation! I looked at your blogs and saw hot naked chicks.
I should have included – in trying to isolate the issue I shut off all auto tweeting on blogs on my server (well its shared so I only know about me) and created a new twitter account just for testing and a new blog just for testing. and only sent a tweet every 20 minutes – still the first tweet got a 403 and then when I manually reposted it tweeted right away. There were lots of twitter whales earlier in the day so am hoping this was just an odd twitter issue. and no twitter did not give me any emails re: 403s.
I am using a custom plugin that is something like oldest to newest. basically I create two blogs – one for the public that has regular blog posts and tracks tweets in the sidebar etc- so each time there is a blog post I send a tweet. But then second blog is only for status updates.
Each post short about 100 words characters or less. (I use a character counter plugin), once I create the post I copy and paste the 140 characters from post to excerpt. The title is relevant and usually 20-30 words. Some posts recylce every 35 days and some post once and not more. Then each post tweets either once or once every 35 days. So one time tweets like “happy halloween – no tricks, I am just a treat” will just post on the right days, but general posts like “call me in the mornings” will tweet a bit over once a month. This blog also creates an RSS feed for other uses
so my other plugin uses custom fields to make a post as recycle or not.. but I am not sure it will retweet in 35 days if the tt_tweeted field is filled.
everything worked a week ago in small test and then today 403s and other issues
If could do one plugin that does both it all would be great. Really would be better if could tweet a custom field not excerpt and check recycle in XX days – but I think that is too much to wish for.
glad you like the eye candy
Does Tweet This work if you disable the other plugin? Did you change anything in the other plugin recently? I’m thinking a conflict with the OAuth libraries (OAuth.php by Andy Smith and twitteroauth.php by Abraham Williams), but I would have to see the other plugin.
Creating an extra blog just for Twitter seems a waste, but I can see why you reached that compromise. I can’t think of a plugin that does exactly what you want to do. Tweet This does allow tweet scheduling independent of posts from the Posts -> Write Tweet page, but I have not yet added support for recurring tweets. You would have to schedule each single tweet manually.
Am I correct in assuming you are using both Tweet This and your custom plugin on your secondary blogs? Also, could you send me a copy of your custom plugin? I won’t post it publicly; I will just use it to investigate the 403s and maybe steal ideas.
What kind of hosting are you running on? Twitter may have banned your server’s IP because of someone else abusing the API… there could be dozens of websites on the same IP. Personally, I have a WiredTree Hybrid Server with the dedicated IP 96.30.0.212, but it’s quite expensive at $94 a month. I only take in $400 per month, but I think it’s worth it because my sites pretty much never go down and I haven’t had any problems with Twitter integration (though admittedly, I only have one account and post only a few tweets per day).
We will work this out!
I tried it with all plugins in off except tweet this. and I dont think server is banned because the tweets goes through a minute later when I click again.
I do use a trick when I set up Oath – it links to my primary blog not secondary. The secondary blog is really just tweets and a promo stream.
I tried again and a simple post click publish get 403, click update and tweets. I have it very narrowed down to this.
going to try creating a new blog on another site and testing there ?
I use Phatservers and have no down time. I have emailed tech support there to look at the logs and see if anyone else is seeing extensive 403 errors on scripts
oh, I did hack your code and changed the # of characters tweeted from excerpt to 140 from a lower number… but everything worked since I did that.
… YOU DID WHAT? I have not tested tt_get_the_excerpt($post_id, $chars) at any value except 70 $chars. It may not work right at 140 characters.
Your 403 is definitely being caused by Tweet This attempting to publish tweets which are over 140 characters. I can’t believe I forgot this is the primary cause of HTTP 403 errors. Evidently, Tweet This is creating a tweet exceeding 140 characters on initial publication but under 140 characters on the 2nd attempt. I will get back to you later; for now, change it back to 70 and see if it works. Then, try 137. I will try to find out why full-length excerpts are not being truncated right.
hmm
ok did a brand new wp install on a separate domain. only plugin installed is tweet this.
tweet got a 403 on clicking publish, then update and it went through
happy to share the blog logins and twitter account – and let you mess around… email me
thanks
Well I am going to bed but I will do more research tomorrow. It’s a shot in the dark, but do you have “Use full permalinks unless Tweet/Plurk Text exceeds 140 characters” checked in the Advanced section? That function is definitely bugged, but only during automatic tweets. Turn it off until I fix it in the next version, if you have it enabled.
Are you are tweeting to the same accounts from multiple domains? You have to specify each additional domain in the Twitter application settings yourself, and you are limited to 5 additional domains per application. They may have just begun enforcing this.
How are you accessing OAuth on the primary blog from the plugin on the secondary blog? Through Tweet This or with your own copies of the OAuth libraries?
I will look up Phatservers later.
working on a new blog/fresh install
only plugin is tweet-this – made a fresh install with new download
(so that removes my 140 character hack)
new twitter account so one domain, one twitter account
oath return URL is for another blog but that has no tweets, nothing on it really
not sure what you mean about how accessing – I went into dev.twitter.com/app (somehing like that) and created a new app copied the keys over. and it works for testing Oath and for when click second time to update post – so know that connection is working
but still initial post hanging up with 403 error…
oh and tweet (text in [excerpt] is only 5 works
We will continue this by email, looks like a problem with your server rather than Tweet This, though I’m not positive.
You have to edit the application and click where it says “You can authorize additional domains if your app has more than one.” Then, enter the additional domain, including the www if you are using it, but excluding http : //. But now that I think about it, this probably has no impact at all.
Hi, I canno get my automatic tweet to works, keeps coming back OAuth fail 401. I’ve deleted and re installed, checked all my info but keeps failing? The Oauth check comes back fine, what am I doing wrong? Thank you
Try creating a new Twitter application with a different name. Let me know if it still does not work.
Thanks for the info, can’t really do that as it’s linked to my blog.
Keeps coming back my OAuth isn’t right yet it says it correct when I check it.
Thanks anyway
Is there a way you can keep updates of where the link was retweeted??
Not specifically, but you could add @username to the tweet text so you can check your replies for tweets. Also, if you leave the URLs as Local URLs, you can just search Twitter for your domain name.
I installed this few weeks ago.I didn’t notice it straight away but my blog was loading very slowly. Today I decided to fix this problem and disabled some plugins. And it was Tweet This which was responsible… Any ideas why?
If you are using a URL shortener, the first pageload of each post on your blog will be 1-2 seconds slower as your server gets the shortened URL. For index pages displaying 10 posts it may be 4-5 seconds slower. But subsequent pageloads should not be more than 0.1 seconds slower as the URL will then be cached.
Tweet This uses about 1MB of RAM for each instance of WordPress. If you use a memory stats plugin, you will probably see RAM usage of 14.52MB increase to 15.52MB when Tweet This is enabled, for example. This is significantly larger than other Twitter plugins, but Tweet This is more complex and has a larger code base than them. It is also monolithic, instead of using child plugins like Simple Twitter Connect. While this shouldn’t slow your blog down per se, in practice Tweet This appears to add about 1 second to the generation of every page. I strongly suggest you use a caching plugin such as WP Super Cache or W3 Total Cache, which I use on this blog. Although it doesn’t attack the source of the problem, any slowness will go away.
I’m already using WP Cache. For sure for a single post page it’s not that much slower, but for my front page I could wait up to 10 seconds to get everything… There was really a big difference before and after.
Try using Local URLs. WP-Cache doesn’t create static HTML pages which is why the newer plugins are better.
Hi Richard
Huge thanks for the effort that you’ve put into Tweet This – it’s an excellent plugin.
I am getting a weird response code that I can’t figure though. Auto-tweet and Write Tweet both respond with “Tweet failed: Twitter returned HTTP 0”.
I have checked and re-insert all of the OAuth tokens and codes, and when doing a “Test Twitter OAuth” from the setup screen I get the “Authentication succeeded, please save.” message with no problems.
There’s no mention in the Twitter API Wiki about a HTTP 0 error so I’m at a bit of a loss.
Any thoughts?
Oh, and one other question while I’m thinking about…
I’ve set the URL Service to use to Bit.ly in the Options screen and am using the “Share Links” option. However whenever a user clicks on the Tweet This button at the end of the post, the tweet automatically inserts the short code using Twitters’ URL shortener (t.co)
Is this the expected behaviour or am I missing something somewhere?
Yes, this is the expected behavior. Tweet This ignores whatever URL shortener you have specified if you are using Share links. Instead, it just sends the full URL, because Twitter shortens it via T.co no matter what you do. However, the Bit.ly or other short URL is still retrieved, cached, and used in two places: as a rel=”shortlink” tag in the HTML head, and in Plurk URLs (a Twitter clone) if you have enabled Plurk links in the Extended Services section of the options.
While I could have added an option to override this, doing so would create a chain of two redirects which is undesirable for end users. The T.co URL would redirect to the Bit.ly URL, which would then redirect to the final URL. If you want to use Bit.ly, you will have to use Web links, which function differently and let you use whatever URL shortener you want.
Okay that approach makes sense. Thanks for clarifying it, and I agree having the option to override this wouldn’t be very user-friendly or effective.
HTTP 0 means Tweet This did not receive any HTTP response code from Twitter. This probably means Curl, allow_url_fopen, or something else is disabled on your server, preventing external connection, but I am not sure. Make sure that your Twitter application is set to “Read & Write” access and if it is not, change it, revoke access at http://twitter.com/settings/connections, restore access, and check all four OAuth keys because two of them might change (the access token/secret I think). Make sure Curl is enabled, and try another Twitter plugin such as Twitter Tools or WP to Twitter. Both these plugins use the same method of connection, so if they fail the problem is on your end, and if they work the problem is with Tweet This.
Settled for the “begin again strategy” and created a new application entirely. Codes and keys all entered and my un-Tweeted post from earlier accessed, updated and resaved. And Tweet This does its’ thing perfectly.
I need to check that Auto-tweeting for a new post works, and also when we get new posts via offline client submissions. But I have a strong suspicion that neither of these is going to be a problem at all.
Sorry to have wasted your time.
I haven’t done any testing with offline submissions, or anything except the Write Post and Write Page forms for that matter, so let me know if you encounter problems. Glad you got it to work!
Hi Richard,
Not your problem, but I thought I would let you know of a failure to play nice between Tweet This and TDO Mini Forms. I’m using a form on the front end of a site for anonymous submissions. While the basic auto tweet functionality works when the form is submitted, I’ve run across two things that don’t.
Item 1: When the option “Use full permalinks unless Tweet/Plurk Text exceeds 140 characters.” is selected, and using local short urls, when the post is published by TDOMF Tweet This always uses the short url even if the even if the total tweet does not exceed 140 characters, and it does not append the post id. The result would look like “http://www.example.com/?p=” Unselecting “Use full permalinks unless Tweet/Plurk Text exceeds 140 characters.” causes Tweet This to correctly append the post id.
Item 2: I am using an auto tweet that looks like this: [TITLE] #[CATEGORY] [URL] The title and url are successfully tweeted, but Tweet This is not able to successfully read the categories when the post is submitted by TDOMF. The space in the tweet where the category should be is blank. TDOMF uses wp_insert_post($post) to add the post to the database as a draft, and wp_update_post to transition it to published. Looking at how Tweet This reads the post categories with my limited skill set, I don’t see any obvious problem. I haven’t tried any of the other shortcodes, but I will.
Neither of these problems occurs when submitting a post from the backend of WordPress, only from the front end form.
Like I said, it’s not your problem to make your plugin work with every other plugin out there, but if this intrigues you I’d be interested in knowing what you find out.
#1 is a known issue and affects automatic tweets too, so the solution for now is no not check that box. I will fix that in the next version.
#2 is probably a plugin issue. That plugin may not be setting the post category. Another possibility is that it is creating a page, which does not have a category. If possible, rewrite your auto-tweet so it does not look weird if [CATEGORY] returns blank, as it will always return blank for WordPress pages unless you are using a plugin like Page Category Plus. The solution for this will be to allow the user to set separate auto-tweet templates for posts and pages.
Hi Richard,
Thanks for the response.
I’ve tried the Author shortcode and it doesn’t work either. When submitting a post from the TDO Mini Forms front end form, the result ends up actually being a post and the category and author show up in the normal “Posted in” and “Posted by” spots. TDO Mini Forms adds the post_author and post_category elements into the array it builds to insert into the $post variable, and it uses wp_insert_post($post) to add the post to the database. That’s why it baffles me that the post author and post category seem to be unavailable for Tweet This to read.
Could it be a timing issue? As in the author or category haven’t been written when Tweet This goes looking for them? Or maybe a cache issue? get_the_category uses get_object_term_cache and I have read some things about the cache update being unreliable. It appears that WordPress doesn’t go back to the database unless get_object_term_cache returns false, so I guess old data wouldn’t trigger that.
These things bug me, and are a real time sink to figure out, but at the end of the day I can still use Tweet This with out the author or category functionality. It would be nice, though.
Hi Richard,
Not that you should change anything in Tweet This, but in researching my problem I found that a different auto tweet plugin, Tweet On Post, works successfully with my front end form. It only offers categories and tags for hashtags, but it does tweet the category of my post.
I have no idea what the difference in methods could be, since Tweet On Post also uses get_the_category($post_id), but for whatever reason it works. Just F.Y.I.
It could definitely be a timing issue, but it is probably my custom functions tt_get_the_author and tt_get_the_category. I wrote these for backward compatibility to WordPress 1.5 (automatic tweeting will eventually work there) and to do some error checking, but they could be requesting the post author / category too soon using the WP get_post function.
I will put this on my to-do list, but it won’t be high priority since it requires research and probably doesn’t affect many people. If you find what section of code is causing the missing author and categories, or that they are missing in other cases, let me know.
Pingback: 18 Useful WordPress plugins
Hello Richard,
Quick question, I can’t figure out the php code snippet to put in meta column, I’d like to use the text option ie. “Tweet” and place it manually on the meta column but again, I’m lost, what’s the code, I tried to read the wiki but got confused.
If you can oblige I would be very happy.
Richard, another question: Do you code on a Mac. thanks
Are you talking about the meta box on the Write Post and Write Page pages? You should be able to just drag and drop it wherever you want.
If you want to manually place the Tweet This social bookmarking links in your theme, use <?php tweet_this_manual(); ?> wherever you want. If Tweet This displays twice, add <?php remove_filter(‘the_content’, ‘insert_tweet_this’); ?> to the top of that file.
Hello Richard,
I gave up on this, its way out of my coding scope but now what I’d like to now is just manipulate via CSS the location of the icon, check out http://bit.ly/dALMLl, well its not an icon its the text, I chose Retweet but my goal is to push it down inline with the rest of the meta category and permalink section on the same right side, it would be nice to also manipulate the size of the font so its separate from a. { as well in my humble opinion.
I just tried this but it didn’t work
tweethis {
margin-top: 50px;
}
I don’t think you can do it with CSS. Read this WordPress.org support topic for some more information on Tweet This functions.
Hi Richard
I m trying to personalize the Widget title in my website but is not working and have a way to put the widget in other place in sidebar?
Thanks for this usefull plugin
Go to Appearance > Widgets and add the “Twitter Updates” widget to one of your sidebars, then click the down arrow and set the title, your Twitter username, and other options. You can use multiple copies of the widget.
Thanks Richard but its not this. I have some content in my theme sidebar and the Widgets are placed bellow this content. I need something like a PHP code to put the widget at the top in the sidebar.
Your theme may be inserting content above dynamic_sidebar(‘primary-widget-area’). You will have to edit your theme’s sidebar.php file to remove this content or move it below the primary-widget-area. I didn’t write the widget, so I don’t know about inserting it manually.
If you place a colon (:) in the title of a blog post entry, Tweet This gets the 403 error.
It works fine for me: http://twitter.com/richardxthripp/status/27483987690. An HTTP 403 error means you are publishing the same tweet twice, the tweet exceeds 140 characters, or Twitter is down. Since Tweet This has contingencies to truncate tweets with “…” so they don’t exceed 140 characters, it is probably one of the other two problems.
Try saving the post again and see if it works.
Thanks for the quick support! I discovered that the error was “publishing the same tweet twice.”
You’re welcome!
Great Plugin, I like it. Is it possible to add a RSS-Icon? (like the plugin “Simple Social – Sharing Widgets & Icons”)
Do you want an RSS link for the blog RSS feed or the comments RSS feed for the current post? Or both?
Thank you for your quick answer. For me an RSS link for the blog RSS feed is enough.
Okay, it will be about two weeks until the next version but I will definitely add this.
Pingback: Trabajando en mejorar el blog | El dragón en la luna
Hello Richard, I was wondering where is the php code to insert the plugin on single.php only, I’d like to keep the plugin away from the home page and only display on the single post permalink since the tweet generated will land the readers on that page. I look around the options but saw no such option ie. manual or something like that.
thanks, loving your plugin functionality,
JL
oops nevermind, my apologies.
Check “Only show Tweet This when viewing single posts or pages” in the Advanced Options and the Tweet This links will only be displayed if the WordPress function is_singular() returns true. I am glad you have figured this out!
Hi Richard,
I switched on the Tweets widget in Sidebar function, which seems to work fine, but how do I customise the look of it, as it seems to not display as per your example, instead appearing squashed by the WordPress templates CSS? If I could colour the title orange, like the other titles in the sidebar, that’d be a good start, but getting it laid out better would be ideal.
Any help appreciated.
Thanks
Chris
You should be able to style it using CSS. I looked at your site and the class is “widget tweet_this_widget”. However, your tweets are not displaying so try re-saving the widget settings.
As for making the text orange, the class is “widgettitle” so something like in your CSS file should work:
The reason the title is not orange now is because it is a link to your Twitter account.
Hi Richard,
Thanks for the quick response. I’ve got the title to appear Orange, as per your code and the tweets are appearing, but the text is still squashed up and I don’t know how in WordPress to edit the ‘widget tweet_this_widget’ css to make it look like your example widget? Is there some code that will stop the WordPress template over-riding the widget layout?
Chris
Twitter is up and down like a Yo-yo today here, but the plug-in is working, it must be an issue with WordPress template, as I tries another tweet app and it appeared in the same was. Basically I’m not getting a bullet point or nice different coloured links etc.
I don’t know about your specific theme, but the screenshots are of the widget in the Twentyten theme. The widget is very similar to the Wickett Twitter Widget plugin. Try installing that and tell me if it is styled properly by default.
Hi Richard, I tried that and it displays the same way. It also seems quite often to not work, I get an ‘error’ message. I know Twitter seems unstable at best when i try and use it myself, but as this for someone else it’d be good to have it work properly. Thanks Chris
Weird… Try Twitter Tools, it works much differently.
Pingback: 18 Useful WordPress plugins — Jim Raffel
REQUEST: Bookmarking / Tell a friend for German VZ Network (MeinVZ, StudiVZ)
API Developer Portal: http://developer.studivz.net/wiki/index.php/Bookmarking
Okay, I will consider this.
I added the option “Enable tweeting of previously tweeted content”, hoping I can create a category of tweets, then re-publish them on a rotating basis (like with the “Post Shift” plugin), so I’ve got a whole category of stuff that gets auto-tweeted every so often.
Where can I send you the updated tt-options.php and tweet-this.php?
Great plugin, by the way!
Cool, email it to richardxthripp@thripp.com. Tweet This almost does this already—you can schedule tweets from the Write Tweet page and tweet old posts by saving them with the “Send to Twitter” box checked. But I think the plugin you are really looking for is Tweet Old Post. I would like to incorporate that functionality into Tweet This eventually so whatever you send me will help.
Does your modification re-publish identical tweets on a rotating basis? I thought the Twitter API would not let you publish the same tweet twice.
Pingback: 10 Useful WordPress Twitter Plugins and Widgets | Whos Chris Hughes.com | Social Media Strategist
This has been requested a few times, but I never understood it. Why would someone want to tweet / share your post before reading it? Isn’t that an action someone would take after reading it, or in the middle of reading it? Either way, it’s on my to-do list.
Thanks. You got a point. But I don’t have a straightforward answer. I just felt that it’d have been cool to have it before the post as well. Who knows? I always scroll back to the top after reading a post
I think Sexy Bookmarks gives the option to display it above the post, below the post, or both. I’ll add this in Tweet This 1.8.1 in a couple of days. There are two obscure bugs I need to fix which I found yesterday and tweeted about.
For now, you could keep your settings as-is and edit your index.php and single.php files to insert the line <?php tweet_this_manual(); ?> before the post content. I think those are the only files you would have to edit.
This is in the new version 1.8.1 finally released today. In the Advanced Options, there are two new checkboxes: “Insert Tweet This block before content” and “Insert Tweet This block after content,” so you can display the Tweet This links before your posts, after your posts, or before and after your posts.
Hi,
First things first, thanks for your work on making a great plug-in for WordPress.
The one bug I’ve found is that I can’t leave a blank field, If I just want an icon and no ‘Post this to…’ text, I should just blank the text out and save, but if i do, it automatically fills the blank spaces in again.
Same goes for the ‘Extended Services’.
All help appreciated.
Thanks
You have to actually type “[BLANK]” in the box. This is the way it’s always been, though I’m not really sure why. I must have been concerned that someone would delete the text of the box by mistake so you must explicitly type “[BLANK]” for safety.
Also, if you change the icon without changing the link text from the default, it will be changed to [BLANK] automatically just once.
Ah ha! Ok, perfect, makes total sense and feel dumb for missing it! Great, thanks again Richard and thanks for being so prompt with your support.
You’re welcome, good luck with your blog.
Tweet This v1.7.6 dont send for twitter.suddenly stopped working.
Twitter may have blocked your website’s application for adult material.
Pingback: CAP Marketer - 99 Outils et Applications Twitter essentiels (en Anglais)
twitter will not accept your autorization
Make sure the application is set to Read & Write access.
I did. I’m a rookie at this. Maybe twitter only accepts so many blog links per account? I’m trying to hook up 4 blog links.
thank you for the reply
Make sure you copied all four keys correctly into their corresponding fields. Use the test button in the options to see if your credentials are correct.
What do you mean by blog links? If you are using the Write Tweet page, the URL shortening has nothing to do with Twitter, but instead the URL shortener you have chosen, i.e. Bit.ly, is contacted directly. You should have no problem shortening 5 URLs at once. Just make sure that your tweet is under 140 characters after shortening by clicking Preview.
thanks, I’ll try it again. I have 5 different blogs that I would like to link the blog posts into the same twitter account.
thanks
You should be able to post from the 5 different blogs to your Twitter account using the same Twitter application and OAuth keys in 5 different installations of the Tweet This plugin. You will have to add each domain to the “Authorized Domains” list on the Twitter application detail page.
Okay, one last question. My site is a community site. Just like the [TITLE] [URL] it would be great to be able to put in a [AUTHOR] so that the WP author’s name could be displayed in the tweet.
I will add this feature in about a week. There are other variables like [CATEGORY] and [DATE] I will also add. This is a frequent request.
For the life of my I can’t get the auto twitter to work. I am using the latest version. In the settings I run the Test Twitter OAuth and I get the following message: Authentication succeeded, please save..
But on pages right above the check box it says the following…
Tweet failed. Twitter returned HTTP 401. Check your OAuth settings and re-save this post to try again.
I will have to do some tests tomorrow but I think this is caused by not changing the default of “Read Access” to “Read & Write Access” when creating the application. Try changing that in the Twitter application settings, then revoke the application’s authorization and re-instate it, and get the new Token keys. Or just create a new application with a different name as that is generally easier.
Okay, I setup a new auth for my site and that seems to work now. I have more question for you but going to post under a different topic.
Thanks.
Tweet failed. Twitter returned HTTP 401. Check your OAuth settings and re-save this post to try again.
but my access level is
Access level Read and write
Ans also when i click on Test Twitter Autho following message show
Authentication succeeded, please save.
Every thing is ok but what is problem?
Hold up. Eventhough I am not using the WP default Post form it looks like the tweets are auto sending to Twitter. So I think I am good!
Thanks.
Hi Richard,
Tweet this is just the thing i was looking for.
Im not a php person but hope you can help me out. On my wordpress blog none registered users can publish post and i get them as draft for moderation. What happen is as they submit post it gets visible on twitter. So is there a way to make it visible on twitter after i publish the draft posts?
Also i want to display excerpts instead of post title.
Thanks and keep up the good work
Excerpts are coming in under two weeks. As for the first issue, Tweet This should not publish a tweet unless the publish_post WordPress hook is called. How do you have moderation set up? Are you using the built-in WP settings or some sort of plugin? Try upgrading to 1.7.7. While I didn’t address your issue specifically, there are many bugfixes and one of them might cover your issue.
Richard thanks in advance for excerpts
For the auto tweet before issue yes im using a plugin to let user submit posts on my blog but ill update to 1.7.7 let see if this would help.
Thanks again
Let me know how it is working and check if there is an option in that plugin to prevent the publish_post hook from being engaged. The plugin should just save the post as a draft. If it isn’t doing that, I think you’ll have the same problem with Twitter Tools, WP to Twitter, and similar plugins.