Tag ‘profit’ » Archiv


27

CommentLuv Premium

November
23

“Awesome Features”

CommentLuv Premium Features
CommentLuv Premium allows you to unlock advanced backlink features on 10′s of thousands of blogs. It has been shown to increase comments and traffic to blogs that install it and helps to make your posts go viral by integrating with twitter, facebook and google plus.

It combines 8 plugins in to 1 which all work in harmony to reduce spam, provide stats of where your links are being clicked, deny trackbacks from spammers, allow users to use keywords in their name, leave their twitter name in the comments, showcase your top commenters and more.

The plugin has many new features :

  • [hpl_link url="http://fiddyp.co.uk/goget/gasp" tooltip="see more about how it combats spam" mouseover="yes" effect="pulsered"]Integrated anti spam measures[/hpl_link] that prevent almost 100% of botspam
  • Dofollow readers links with advanced rules so you look after your most loyal readers
  • Unique social enticements which helps your posts to go viral on Twitter, facebook and Google+
  • Integrated [hpl_link url="http://fiddyp.co.uk/goget/twitterlink" tooltip="add twitter name functionality to comment forms" effect="blink" mouseover="yes" speed="2" color="#00ffff"]twitterlink[/hpl_link] functions to allow readers to leave their twitter names on comments
  • Improved version of [hpl_link url="http://fiddyp.co.uk/goget/keywordname" tooltip="add keywords to name for trusted users" effect="blink" mouseover="yes" speed="2" color="#3366ff"]Keywordluv[/hpl_link] with much tighter control over who gets to use keywords
  • Integrates trackback validation with improved heuristics
  • Exclusive top commentators widget with advanced display control
  • Dashboard and advanced stats that show you where your links are getting clicked
  • Free updates for life using the easy one click automatic update system
  • more being added all the time!

You can find out more about CommentLuv Premium at CommentLuv.com

Blog Tools


36

Configuring Hostgator VPS for automated CPanel backups to Amazon S3

September
4

Warning! Geekiness ahead

Ok, so just had a wonderful time trying to set up a way to automatically backup my hostgator VPS to Amazon S3.

I did it with the help of some googling, head scratching and tricky bastardness so I thought I’d better document it here to remind me how to do it when I need to do it again.

I got most of the information from the post here and in the comments. Although, I had to piss about a lot to get it finally working. Mainly because of curly quotes in the original page, windoze line breaks and my monkey heritage.

(this is for VPS on Hostgator running Centos 5)

1. Create AmazonS3 bucket

Easy bit here, just create a bucket

2. Install S3 client for Linux

First need to install s3tools repo

cd /etc/yum.repos.d
wget http://s3tools.org/repo/CentOS_5/s3tools.repo

Next need to install

yum install s3cmd

Answer the questions with Y

3. Configure s3cmd

s3cmd --configure

Enter in the access key and secret key from Amazon Security Credentials

4. Enable daily backups from WHM

You can select which accounts by clicking the button marked ‘select’

If it’s already configured, find out the backup directory by typing

grep BACKUPDIR /etc/cpbackup.conf

5. Create the log directories

mkdir /var/log/backuplogs

6. Write a script to automate the backup and save it as /root/dailybackup.sh

You should change the email and bucket name to reflect your own values

#!/bin/bash

##Notification email address
_EMAIL=youremail@yourdomain.com

ERRORLOG=/var/log/backuplogs/backup.err`date +%F`
ACTIVITYLOG=/var/log/backuplogs/activity.log`date +%F`

##Directory which needs to be backed up
SOURCE=/backup/cpbackup/daily/*.gz

##Name of the backup in bucket
DESTINATION=`date +%F`

##Backup degree
DEGREE=3

#Clear the logs if the script is executed second time
:> ${ERRORLOG}
:> ${ACTIVITYLOG}

##Uploading the daily backup to Amazon s3
/usr/bin/s3cmd -r put ${SOURCE} s3://yourbucketname/${DESTINATION}/ 1>>${ACTIVITYLOG} 2>>${ERRORLOG}
ret2=$?

##Sent email alert
msg="BACKUP NOTIFICATION ALERT FROM `hostname`"

if [ $ret2 -eq 0 ];then
msg1="Amazon s3 Backup Uploaded Successfully"
else
msg1="Amazon s3 Backup Failed!!\n Check ${ERRORLOG} for more details"
fi
echo -e "$msg1"|mail -s "$msg" ${_EMAIL}

#######################
##Deleting backup’s older than DEGREE days
## Delete from both server and amazon
#######################
DELETENAME=$(date --date="${DEGREE} days ago" +%F)

/usr/bin/s3cmd -r --force del s3://yourbucketname/${DELETENAME} 1>>${ACTIVITYLOG} 2>>${ERRORLOG}

7. Grant execute privilege to the script

chmod u+x /root/dailybackup.sh

8. Set up a cpanel hook to run the script after the backup has completed

nano /scripts/postcpbackup

enter this as the contents

#!/usr/bin/perl
system("/root/dailybackup.sh");

make it executable

chmod u+x /scripts/postcpbackup

That’s it!

In case of disaster, copy the file from Amazon s3 with

mkdir restore
s3cmd -r get s3://yourbucketname/2011-02-32/filename.gz restore

Notes
I changed the bash script so it only copies *.gz files
I wanted to change the time at which the cpbackup occurs so I went to ‘manage plugins’ in WHM and put ‘install and keep udpated’ tick on ‘cronconfig’ and then went to ‘configure cpanel cron times’ and set the time I wanted cpbackup to run.

Blog Tools, linux


20

New premium plugin being tested

August
20

Weekend Warrior!

I’ve been working feverishly to get premium commentluv ready for beta testing over the past 3 weeks and to give me a break on the weekends, I’ve been working on another premium plugin that I’ll be launching to the warrior forums with my JV partner before releasing it to the wild.

What is it called?


It’s got a working title of WP Aweber Gate

What does it do?

It allows you to protect post and page content from being viewed and downloads from being accessed by readers unless they are on your Aweber list.

Why would I want that?

  • Run a membership site without all the trouble of having members register to your site
  • Offer ethical bribes to people to join your list and know that only people that have subscribed can access the bribe
  • Prevent your premium content from being shared with non subscribers
  • Add bonus materiel to your site for your list subscribers only
  • No need to change your theme to a membership theme just to have subscribers only content
  • No need to buy expensive plugins like wishlist or DAP (this plugin will be MUCH cheaper!)
  • There’s probably a lot more reasons that I haven’t thought of!

How does it work?

Just 4 easy steps to get your subscribers only gateway working:

Upload, activate, authorize, configure.

  1. Upload
    Upload to your plugins directory or use the plugins page link in your dashboard
  2. Activate
    Ummm, click activate!
  3. Authorize
    Click the link to authorize the plugin to access your Aweber account
  4. Configure
    Choose your desired list (or set to check all) and what you want to happen to non subscribers (off with their heads!).

    • You can show them a message which can contain HTML
    • You can automatically send a subscription to your desired list
    • You can forward them to any page on your site
    • You can forward them to any URL on the web

Let me see!

Here’s a set of video instructions on how to rebrand my recent premium plugin called WP Mail Ads, you can also download a free bonus plugin for commentluv users called The Dashboard Luvver Widget which shows a list of last blog posts from the people that have commented on your blog so you’ve always got somewhere to go and visit to get some luv!

You can only access the videos and downloads if you’re an email subscriber to one of my lists. Chances are that if you have downloaded the commentluv plugin or seen some of my videos you are already so all you need to do is enter your email address in the box and click the button, if you are on my list it’ll show you the content and cookie you so you can access all the locked content and downloads, if you’re not on one of my lists then it’ll auto subscribe you and then you just need to click the authorization link that arrives in your inbox. Sweet huh? :-)

[aweber-subs]


[/aweber-subs]

When can I get it?

I’ll be releasing it in a week or two once all the sales bumpf and bonuses have been put together! watch out for it!

btw… I have installed premium commentluv to comluv.com. You can read about it here. Premium CommentLuv Beta Testing

Blog Tools, Wordpress


45

WP Mail Ads – Monetize your wordpress emails! (now with PLR)

July
26

Hey! did you realize that you’re leaving money on the table? If you have registrations enabled or subscribe to comments activated on your WordPress blog then that’s exactly what you’re doing!

This is my first paid plugin release and I’m putting it out there for a fantastic price. [hpl_link url="http://toolstomakemoney.com/wp-mail-ads/" tooltip="Get this at a discount" mouseover="no" effect="pulsered"]Go and see it on the site[/hpl_link]

I’ve been using it for my own personal profit for over 1 year and my launch partner convinced me to release it as a plugin so others can leverage the space in the emails that people always open, those are the WordPress generated emails that tell them there’s a new reply to their comment or for resetting their password or.. well, there are lots of plugins that cause your blog to send emails and WP Mail Ads will allow you to monetize each and every one of them!

Video Intro

Here’s a 3 minute video that gives you all the details

[youtube]http://www.youtube.com/watch?v=baFzqe6A3tA[/youtube]

Blog Tools


6

How to fix radio inputs losing focus when dragging a jquery ui sortable div

July
24

hows that for a descriptive title eh? haha, that’s the exact term I used when I ran into trouble with some wordpress meta boxes on a custom admin page I was making for the new CommentLuv. I am using the WordPress functions for add_meta_box to add, you guessed it, meta boxes to a settings page.

Draggable killed the radio bar

ok, lame Queen song title parody I know but it’s true. I had a bar of radio buttons in one of those meta boxes and if I dragged and dropped the box to a new place, it lost it’s radio button dots!

When I dropped the sortable meta box, the happy little dot in the radio input would disappear which messed things up when I saved the settings because the form would not have a radio input with a status of checked any more. :-(

jQuery rescues jQuery!

jQuery is frickin awesome and I love it. It’s the sole reason CommentLuv was able to become the plugin it is today. It’s also sometimes a little finicky and it does things in a particular way which causes some mild issues. This is one of them, it’s all due to jQuery cloning the contents of the sortable box when you drag it and then when you drop it, the radio button loses it’s happy little dot.

I did a mammoth amount of searching and could only find 2 instances of it happening elsewhere (here and here) and both instances said it was a bug/feature and didn’t provide a solution.

Geek me up, I’m goin in!

[youtube clip_id="Z9_jIa2WADc"/]

As a means to procrastinate, an unhealthily strong stubbornness bone and a burning sensation in my pants whenever I can’t do something that I want to do, I set about trying some code to re click the radio buttons after the meta box had been dropped after dragging.

Here it is, I hope you find it useful! (change the two instances of .wrap to whatever container your sortables are in)

// global script for commentluv premium settings pages
// workaround for bug that causes radio inputs to lose settings when meta box is dragged.
// http://core.trac.wordpress.org/ticket/16972
jQuery(document).ready(function(){
    // listen for drag drop of metaboxes , bind mousedown to .hndle so it only fires when starting to drag
    jQuery('.hndle').mousedown(function(){
        // set event listener for mouse up on the content .wrap and wait a tick to give the dragged div time to settle before firing the reclick function
        jQuery('.wrap').mouseup(function(){store_radio(); setTimeout('reclick_radio();',50);});
    })
});
/**
* stores object of all radio buttons that are checked for entire form
*/
function store_radio(){
    var radioshack = {};
    jQuery('input[type="radio"]').each(function(){
        if(jQuery(this).is(':checked')){
            radioshack[jQuery(this).attr('name')] = jQuery(this).val();
        }
        jQuery(document).data('radioshack',radioshack);
    });
}
/**
* detect mouseup and restore all radio buttons that were checked
*/
function reclick_radio(){
    // get object of checked radio button names and values
    var radios = jQuery(document).data('radioshack');
    //step thru each object element and trigger a click on it's corresponding radio button
    for(key in radios){
        jQuery('input[name="'+key+'"]').filter('[value="'+radios[key]+'"]').trigger('click');
    }
    // unbind the event listener on .wrap  (prevents clicks on inputs from triggering function)
    jQuery('.wrap').unbind('mouseup');
}

ajax, Code, jquery, PHP


21

Guest blogging brings great results at ComLuv.com

July
6

Why guest blogging on ComLuv.com

I’ve just finished making a video presentation explaining why guest blogging really works, especially if you do it in the right place!

[youtube clip_id="-Gj-YGKzASg"]

In the video, you see how Jane Sheeba of Find All Answers blog got a page 1 on Google for a term that has over 1.2 Billion results for her guest post on how to do business on facebook

Over the moon!

It’s not just Jane, lots of guest bloggers are over the moon with their search results! there are multiple page 1 results for some very popular terms.

I’m about to embark on the coding of the premium CommentLuv so I wont have time to make many blog posts so it’s a perfect time to encourage people to write them on ComLuv.com which helps me and helps them. awesome.

what do you think of the video?

video blogging


10

Major work ahead for The CommentLuv Empire

June
15

[easyazon-image-link asin="B004IEAO4G" alt="Brady 113298 B-959 30" x 30" Road Work Ahead Sign" src="http://ecx.images-amazon.com/images/I/517EstzuuRL.jpg" align="left" width="250" height="250"]It’s about bloody time! The new CommentLuv plugin is out there and getting lots and lots of downloads. Over 5000 in the first week actually which is a pretty big number!

The plugin is now standalone which means it will no longer require my expensive dedicated server to work which also means there’ll be no registering to my site to add a feed url or buy additional urls and static links.

Hurray! do you know what that will do to my support tickets? it’ll virtually decimate them! No more pointing people to the member page, no more spoon feeding them their feed urls or explaining how www.something.com is different to something.com . Oh, and no more crashed server in the middle of the night due to excessive load.

Actually, it’s the excessive server load and regular crashes that motivated me to turn the whole CommentLuv thing on it’s head and make it standalone. Once I do that, I can move away from dedicated hosting and put all my sites on a VPS that is scalable, a VPS that’s a bit closer to the majority of visitors to my sites. USA! USA! USA! lol

What’s next?

Well according to the stats at WordPress.org, it takes about a month for most people to update their plugin when they get the notification in their dashboard and so when the end of the month comes around, I’ll switch off the CommentLuv API for the wordpress plugin and set it to send back a message about having to upgrade to the latest plugin.

That’s sure to piss off a few people but, seriously, I can’t keep paying for this server out of my own pocket and I just don’t have the time to maintain the server. I just wanna make plugins!

I’m itching to do a cool facebook plugin, multi author blog plugin, the premium version of CommentLuv plugin and much much more but so far, I’ve been stuck fire fighting the bloody server! time to say goodbye and within this month!

But, before that can happen

I have to transfer all my existing minor sites to the new VPS :-?

And then, design a new theme for comluv.com which is still going to be an awesome guest blogger site with oodles of pagerank and traffic and then move that to the VPS and then code the premium commentluv and then design the site to handle the purchases and then I have to launch the premium plugin and to do that I have to make the videos and to do that….. arrrrggh!

Blog News


7

New CommentLuv version 2.9

June
8

I’ve had a blast launching the new free version of CommentLuv and it occurred to me that I haven’t actually put a feature list out there so people know what’s changed in this new version.

So, here’s what’s new :

Completely Standalone
No need to ask your readers to register elsewhere or for you to save your feed URL
New leaner faster code
More reliable and secure code that conforms to WP standards
Dofollow Control
You decided if you want to make the links dofollow and who gets to have dofollow
Grows your membership/list
Enable 10 last posts for readers that register to your site and grow your list!
Auto response to other CommentLuv blogs
Never worry about your feed again when you comment on other CommentLuv enabled blogs
Activate Only Option
You can install it so it works when you comment on other CommentLuv enabled blogs but not actually have it on your comments
On Pages, Posts or Both!
Choose where you want to have CommentLuv enabled (if at all)
Use your own image
Your choice of text, supplied images or use your own image below the comment form. Link it to commentluv or not, it’s up to you!
Custom Messages
You can set what unregistered users see in the info panel or when they comment
Minifying Compatibility
Ability to make the plugin work with minifying and caching plugins (advanced settings)
Manual Insert
New and improved code to allow you manually insert the badge code anywhere you want
Diagnostics (advanced)
New section to aid in getting help. Full list of settings that you can copy and paste into a support ticket
Helpful Embedded Videos
Helpful videos right where you need them (with subtitles), right in the settings page.

phew! that took a while…

just you wait until you see what’s coming in CommentLuv premium!

You can Download CommentLuv here

Blog News, Blog Tools, Wordpress


53

I am NOT a BMX bandit!

April
22

I like to ride my..

I got given a mountain bike a couple of weeks ago and since I’ve moved to part time work, I’ve been going out every day on it riding around Lancaster. I regularly ride over 10 miles in a session and as Lancaster is a cycle friendly town, there’s loads of different routes to try.

Bring back the 80′s

[easyazon-image-link asin="B004GSVXC6" alt="BMX Bandits (Blu-ray)" src="http://ecx.images-amazon.com/images/I/61EMKItmLGL.jpg" align="right" width="195" height="250"]
Today, I had a crash/scrape. I remember being super awesome on my BMX back in the day (early 80′s) where bunny hopping up a kerb was almost genetically inherited knowledge. So much so that it didn’t require a seconds thought.

Now though, much older (and not even that much wiser) I thought it was the same old ‘push down, pull up, back flick’ to get up a kerb. The thing is, back then in the good old 80′s, I never used to travel so frickin fast down a hill, there weren’t 18 gears, only future rocket bikes had front suspension and kerbs were, well, kerb size.

Now.. 18th gear, at least 30 mph, a kerb (uk term for the bit that raises and separates the sidewalk from the asphalt) that would be more appropriately called a frickin plinth and an unqualified belief that I was still a BMX bandit who could bunny hop anything and you’ve got a recipe for a soreness.

Ouch?

I remember, whilst in mid air, thinking that there’s nothing I can do. I remember not feeling regret at trying to bunny hop at speed, I accepted that it was now too late to do anything and I was going to crash and it might hurt a little bit. All this went through my head before I’d even surrendered to gravity and the friction coefficient of concrete.

A scraping sound, an ‘oomph’ as I met the floor and even a roll or two and I was on my back staring at the blue blue sky.

“hmm’, thought I , “it doesn’t hurt”

A crash at that speed, a meeting of pavement at that velocity and it didn’t hurt? I must be either dead already or I’m an undiscovered super hero. I considered what costume I would have and if I had a home planet that I’d been sent away from when I was a small child. That explains why I had that “I must be adopted” feeling growing up.

As it turns out, I’m just a little dramatic (and maybe even slightly concussed) and have good leather riding gloves and a wicked good bike helmet that protected me from the almighty whack my head got.

I got up (slowly) and sat on the convenient boulders on the side of the pavement and gathered my thoughts. I felt a little sick but I figured that must be the landing flat on my stomach and then I started white-ing out, everything went to high contrast and gain and I felt a bit dizzy.

So, I took a picture of my arm and sent it to twitter of course!!

Then I laid back and watched the sky until the dizziness faded and I no longer felt sick.

40 minutes and 5 miles later, I was back home to much ‘oooh!’ and ‘awwww!’ ‘s when everyone in my shop saw my arm.

Get a helmet (and maybe riding gloves)

[easyazon-image-link asin="B00012M5MS" alt="Schwinn Thrasher Adult Micro Bicycle Helmet (Adult)" src="http://ecx.images-amazon.com/images/I/51jjBOZH8WL.jpg" align="left" width="250" height="226"]

You hear those adverts on the radio about safety, you see the reports on the news about cyclists whose lives were saved because they wore a helmet and you think, “hmm, whatever”.

It turns out that they were right!! if I hadn’t been wearing my cycle helmet, I would have probably suffered a serious concussion. I whacked my head on the floor when I met it with a serious amount of force. Not only did my helmet save me from possible brain spillage, it prevented me from getting all scratched up and sore for weeks.

My riding gloves (which I only bought to keep my hands clean and prevent blisters from the grips) were destroyed as my hands went out (superman styley) to protect me from the fall and they certainly helped protect my delicate typing hands.

So, all I have is the graze or two on my arm which wouldn’t be there if I’d had elbow pads on but, seriously, there’s a limit to my safety (un)consciousness!

Featured, News


26

Bypass / Disable print dialog box in firefox with javascript print()

January
1

Just print!

In my ePoS system project, I have the need to open a popup with javascript and print the contents without seeing the dialog box.

Everywhere I searched, there were the ‘you don’t wanna do that because….’ from know it all keyboard warriors saying it was bad because evil doers could send porn to your printer.

What about intranets and web apps?

Finally, I figured it out and as long as you’re using Firefox and you have access to it then you’re ready to make it print without a nasty dialog…

  • Open firefox and put about:config in the address bar and press enter (you will need to click the button that shows to say you know what you’re doing)
  • Type print.always_print_silent in the filter box at the top
    If you have an entry already there and it is set to false just right click it and choose ‘toggle’ to set it to true.
    If there is no entry there already then follow on…

    • right click the screen and choose New->boolean
    • enter print.always_print_silent as the preference name when asked and press enter
    • set boolean value to true and press enter

That’s it, you will no longer see the dialog box when you print. Beware though, it will try to print to the last printer you used when you had the dialog box open. If you ever need to change it then you will need to toggle the value for print.always_print_silent by following the above steps.

Open a javascript popup and print the contents

Now you can print without dialogs, you can use the following code to open a popup window and print it.

open the popup


windowname = window.open('url.html','name',options);

the options you have available are:

Option Values Description
location yes|no Does the location bar show?
menubar yes|no Does the menubar show?
scrollbars yes|no Do scrollbars show?
status yes|no Does the status bar show|
titlebar yes|no Does the titlebar show?
toolbar yes|no Does the toolbar show?
resizable yes|no Can you resize the window?
height pixels height of window
width pixels width of window
directories yes|no Does the personal toolbar show?
innerHeight pixels specifies the inner height of window
innerWidth pixels specifies the inner width of window
screenX pixels specifies distance from left edge of screen
screenY pixels specifies distance from top edge of screen

For example, to open a pop window showing the file called example.html with no menu bar, with a width of 430 pixels, height of 700 pixels, no toolbar, with scrollbars and with the window you would use this command


winname = window.open('/example.html','newwin','menubar=no,width=430,height=700,toolbar=no,scrollbars=yes,screenX=300');

To close that window, you can add this


winname.close();

To print the window, you can add this to the example.html page


self.print();

or to print it from the calling page, you might need to pause for a little while before issuing the print command so it has time to load the page content first..


setTimeout("winname.window.print();",500);

All the commands need to be within <script> /script tags

Code