Пачка полезных сниппетов для блога. Часть 41

Вынуждаем пользователей войти на сайт для скачивания купленных файлов

Известно, что многие используют плагин Easy Digital Downloads, позволяющий реализовать продажу файлов на своем сайте. Этот сниппет для EDD заставит пользователей входить на сайт для того, чтобы скачать приобретенные ними файлы.

class EDD_Force_Login {

	function __construct() {
		add_action( 'plugins_loaded', array( $this, 'load' ) );
	}

	public function load() {
		add_action( 'edd_process_verified_download', array( $this, 'force_login' ), 10, 2 );
	}

	public function force_login( $download, $email ) {

		if(  ! is_user_logged_in() ) {
			$login_url = wp_login_url( trailingslashit( home_url() ) . '?' . $_SERVER['QUERY_STRING'] );
			$message = sprintf( 'Вы должны войти на сайт для того, чтобы скачать файлы. <a href="%s">Войти</a>.', $login_url );
			wp_die( $message, 'Error' );
		}

	}

}
$GLOBALS['edd_force_login'] = new EDD_Force_Login();

Отключаем уведомления для админа о регистрации нового пользователя

Если вы используете плагин Easy Digital Download, то этот небольшой сниппет поможет вам отключить e-mail уведомление о регистрации нового пользователя для администратора. Для того, чтобы сниппет заработал, просто добавьте его в файл functions.php своей темы WordPress.

remove_action( 'edd_insert_user', 'edd_new_user_notification', 10, 2 );

Добавляем ссылку на Главную в wp_nav_menu

Если вы используете wordpress 3+ wp_nav_menu в своей теме, то добавление этого сниппета в functions.php позволит вам вывести ссылку на главную страницу с классом current-page-item:

function addHomeMenuLink($menuItems, $args)
{
	if('main' == $args->theme_location)
	{
		if ( is_front_page() )
			$class = 'class="current-menu-item"';
		else
			$class = '';
		$homeMenuItem = '<li ' . $class . '>' .
						$args->before .
						'<a href="' . home_url( '/' ) . '" title="Home">' .
							$args->link_before .
							'Home' .
							$args->link_after .
						'</a>' .
						$args->after .
						'</li>';
		$menuItems = $homeMenuItem . $menuItems;
	}
	return $menuItems;
}
add_filter( 'wp_nav_menu_items', 'addHomeMenuLink', 10, 2 );

По всем вопросам и отзывам просьба писать в комментарии ниже.

Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.

VN:F [1.9.22_1171]
Rating: 1.8/5 (6 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
Scroll To Top