Send activation email only for users created over the Control Panel We have a website that allows users to register themselves with a front-end registration form, and are automatically logged-in once they're done (thanks to autoLoginAfterAccountActivation).

But we also need to create users directly from the Control Panel on a regular basis. 
Since autoLogin doesn't work with the "Verify email addresses?" user setting, I'm looking for a way to send the activation email only to the users that we have manually created over the Control Panel, so they're able to set a password.

Is there any way to send the verification email only to users created over the Control Panel?
You'll need to create a small custom plugin to do this. You can create the scaffolding for a plugin using the excellent Plugin Factory site. You'll just need to create a basic plugin, with none of the component options selected.

What you need to do is to use Craft's events to detect when a new user is created using the Control Panel.

The specific event you need to listen for is the users.onActivateUser event.

You'll need something like this in your plugin's init() method:

/**
 * @return mixed
 */
public function init()
{
    // When creating new users through the control panel, send them a password reset email.
    craft()-&gt;on('users.activateUser', function(Event $event) {

        // only fire if this is a CP request
        if (craft()-&gt;request-&gt;isCpRequest()) {

            // retrieve the userModel from the event
            $user = $event-&gt;params['user'];

            // send password reset email
            craft()-&gt;users-&gt;sendPasswordResetEmail($user);
        }
    });
}