Персонализация страницы подключения WP

Следующий фрагмент php-кода файла function.php вашей темы делает 3 вещи…

Сначала он заменяет логотип в WordPress. Для этого создайте подходящий образ с именем logo-login.png и разместите его в папке images своей темы (или поменяйте эти имена во фрагменте).

Во-вторых он заменяет URL-адрес логотипа на URL вашей домашней страницы. По умолчанию ссылка приводит на сайте http://wordPress.org.

И наконец он заменяет содержимое параметра Alt этого изображения, именем вашего сайта так, как это определено в ваших настройках WP.

// This function loads your image in the login page
function custom_login_logo() {
	echo '<style type="text/css">
	h1 a { background-image:url('.get_bloginfo('template_directory').'/images/logo-login.png) !important; }
	</style>';
}  
add_action('login_head', 'custom_login_logo');
 
// This functions changes the img url and alt text
function change_wp_login_url() {
	echo bloginfo('url');  // this is where a click on the logo would lead to
}  
 
function change_wp_login_title() {
	echo get_option('blogname'); // this is the alt text
}  
 
add_filter('login_headerurl', 'change_wp_login_url');  
add_filter('login_headertitle', 'change_wp_login_title');

Рассылка подписчикам уведомления о новой публикации

Довольно часто функционал интернет-ресурса требует рассылки пользователям ресурса уведомления о публикации новой статьи. Например, в часто мною используемых сайтах поддержки учебных курсов (что не курс, то сайт и так по 8-10 новых сайтов каждый год), где зарегистрированы все курсанты. Конечно, это можно сделать с помощью тяжеловесных плагинов-майлеров, но зачем? В файл function.php своей темы можно вставит небольшой код, который с успехом решает эту задачу.

Небольшими правками можно добиться более точного попадания в пользователя контента необходимой категории. И все это просто «ничего не весит» в сравнении с, например, Newsletter, e-mailing service или Newsletter Manager.

function email_registered_members($post_ID)  {
    //global $wpdb;
 
    //$userslistarray = $wpdb->get_results("SELECT user_email FROM $wpdb->users;");
 
    $wp_user_search = new WP_User_Query( array( 'fields' => array('user_email') ) );
    $userslistarray = $wp_user_search->get_results();
    $arrUsers = array ();
    for ($arr = $userslistarray, $mU = count ($arr), $iU = 0; $iU < $mU; $iU++) {
        $arrUsers[] = $arr[$iU]->user_email;
    }
 
    $users = implode(",", $arrUsers);
      
    mail($users, "New Post Published : " . get_bloginfo('name') , "at" . get_bloginfo('siteurl'). " Visit today to learn more" );
    return $post_ID;
}
add_action('publish_post', 'email_registered_members');

Информация о пользователях

Хотите отобразить список всех авторов/пользователей сайта? Следующий фрагмент кода делает это. Вставить его наду туда, где это необходимо отобразить: в теме, шаблоне страницы или посте.

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

<?php
function cupbt( $userid, $post_type = 'post' ) {
    global $wpdb;
    $where = get_posts_by_author_sql( $post_type, true, $userid );
    $count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->posts $where" );
    return apply_filters( 'get_usernumposts', $count, $userid );
}
 
$authorsListArgs = array(
    'orderby' => 'post_count',
    'order' => 'ASC', // big to small
    'order' => '25', // members amount
);
$blogusers = get_users($authorsListArgs);
 
echo '<ul>';
foreach ($blogusers as $user) {
    echo '<li>Name: ' . $user->display_name; . '</li>';
    echo '<li>Email: ' . $user->user_email; . '</li>';
    echo '<li>Site: ' . $user->user_url; . '</li>';
    echo '<li>Published: ' . cupbt($user->ID, 'post'); . '</li>';
}
echo '</ul>';
?>

Активировать менеджер ссылок в WordPress

Начиная с версии 3.5 WordPress (и позднее) в административной панели отсутствует Диспетчер менеджера ссылок. Следующий фрагмент кода в файле functions.php вашей темы вернёт её на место.

<?php
	//Activate the Link Manager built in to the WordPress admin
	add_filter( 'pre_option_link_manager_enabled', '__return_true' );
?>

Источник: Activate WordPress link manager

Вставка Data-URI изображений

Довольно часто возникает необходимость «спрятать» свои оригинальные картинки, загруженные на сервер. Тогда использовать традиционный способ вставки изображения (с помощью HTML, например) не рекомендуется, но можно применить технику кодирования с помощью base64 (а если ещё дополнить её gzip-ом, то получается «полный фарш»). Результат кодировки подставляется всё в тот же src. Кроме того, это полезно для каких-то лендингов, когда, по идее, картинки должны подгружаться сразу и целиком, а не по частям. Это уменьшает количество запросов к серверу и скрывает пути к изображениям, чего никак не скажешь о традиционном способе вставки.
Читать далее «Вставка Data-URI изображений»

Как проверить бизнес-модель до начала разработки

Простая и рабочая методика проверки бизнес-модели приложений даст вам ответы на вопросы:

  • Будет ли мое приложение прибыльным?
  • Как именно я буду зарабатывать на пользователях приложения?
  • Какими способами я смогу увеличить прибыль?

Но прежде чем перейти к существу, договоримся о терминах.
Читать далее «Как проверить бизнес-модель до начала разработки»

Шпаргалка разработчикам пользовательского интерфейса

Крупнейшая в мире базы данных элементов для проектирования пользовательского интерфейса содержит более 46 608 элементов пользовательского интерфейса и более 1 233 готовых комплектов оформления для сайтов. Здесь можно найти кнопки, формы, прогресс бары, навигационные меню, таблицы, переключатели, «хлебные крошки», подсказки, страницы входа и т.д. Все представленные элементы отвечают современности и получить их (скачать) можно абсолютно бесплатно.
Читать далее «Шпаргалка разработчикам пользовательского интерфейса»