Очередной блог фрилансера

коротко и полезно о веб-разработке

Menu Close

8 полезных кодовых сниппетов для WordPress 3.0

WordPress 3.0, запуск которого назначен на первое мая 2010 года, произведет настоящую революцию среди блоговых систем. С таким нововведением, как пользовательские типы записей, разработчики получат возможность создавать гораздо более комплексные и мощные сайты на основе WordPress. В сегодняшней статье собраны наиболее полезные фрагменты кода, которые пригодятся вам при работе с WordPress 3.0.

Как создать пользовательский тип записи

Пользовательский тип записи – это очень серьезный шаг вперед для WordPress, поскольку, благодаря этой функциональности, разработчики смогут  создавать любые типы записей, в соответствии со своими потребностями.

Сейчас, в нашем распоряжении есть только записи и страницы. С WordPress 3.0, появится возможность создать новый тип записи, например “товары”, в котором клиент сможет продавать только свои товары, в виде обычной публикации записей в блог.

Создать пользовательский тип записи очень просто: все, что вам нужно сделать – открыть файл functions.php и вставить следующий код:

$args = array(
        'label' => __('Products'),
        'singular_label' => __('Product'),
        'public' => true,
        'show_ui' => true,
        'capability_type' => 'page',
        'hierarchical' => false,
        'rewrite' => true,
        'query_var' => 'products',
        'supports' => array('title', 'thumbnail')
);
register_post_type( 'product' , $args );

После сохранения файла, зайдите в панель управления WordPress и обратите внимание на то, как изменилась навигация слева: добавлен новый тип записи под названием “Товары”.

Источник: Кодекс

Пользовательский тип записи с пользовательской таксономией

В предыдущем примере, вы узнали как создается пользовательский тип записи, что весьма пригодится, при использовании WordPress в качестве CMS.

Теперь, давайте рассмотрим более комплексное, но очень интересное решение – создадим пользовательский тип записи вместе с соответствующей пользовательской таксономией. Для тех кто не в курсе, таксономия – это термин (такой как рубрика, тэг и т.д.) связанный с записями. Более подробную информацию о таксономии можно узнать из Кодекса WordPress.

В этом примере, мы создадим пользовательский тип записи под названием “Альбомы”, который будет принадлежать  пользовательской рубрике “Жанр”, и будет иметь тэг “Исполнитель”. Этот фрагмент необходимо вставить в файл functions.php. Всего лишь 27 строк кода, и вы можете создать полноценный архив музыкальных альбомов.

function post_type_albums() {
	register_post_type(
                     'albums',
                     array('label' => __('Albums'),
                             'public' => true,
                             'show_ui' => true,
                             'supports' => array(
                                        'post-thumbnails',
                                        'excerpts',
                                        'trackbacks',
                                        'comments')
                                )
                      );
// Добавляем таксономию для Жанров. Теперь мы можем создавать рубрики, относящиеся к этому типу записи. 

	register_taxonomy( 'genres', 'albums', array( 'hierarchical' => true, 'label' => __('Genres') ) );

// Добавляем таксономию для Исполнителей. Теперь мы можем создавать тэги, относящиеся к этому типу записи.

        register_taxonomy( 'performer', 'albums',
		array(
                                   'hierarchical' => false,
			 'label' => __('Performer'),
			 'query_var' => 'performer',
			 'rewrite' => array('slug' => 'performer' )
		)
	);
}
add_action('init', 'post_type_albums');

Источник: wpspecial.net

Получение пользовательского типа записей

Теперь, когда вы знаете как создавать пользовательские типы записей, следующий шаг – узнать как получить их из базы данных WordPress, и вывести в блоге.

Хорошая новость для разработчиков – в этом процессе нет ничего сложного или нового. Получить пользовательские типы записей очень просто, с помощью объекта WP_Query.

Следующий пример создает произвольный цикл, получающий записи только с пользовательским типом “albums”.

<ul>

<?php global $wp_query;
$wp_query = new WP_Query("post_type=albums&post_status=publish");

while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
    <li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>

Активируем функцию мультисайта

Одним из самых ярких нововведений в WordPress 3.0 несомненно является мультисайтовое управление. Вкратце, всего лишь с одной установкой WordPress, вы получите возможность запустить сеть WordPress-блогов.

Для того чтобы воспользоваться этой функцией, просто вставьте следующую строку кода в файл wp-config.php. Этот файл расположен в корневой директории вашей WordPress-установки.

define('WP_ALLOW_MULTISITE', true);

После добавления вышеуказанной строки, вам понадобится зайти на страницу “Инструменты – Сеть” и настроить сеть.

Источник: wptheming.com

Персональные профили авторов

Большинство популярных блогов содержит в штате целую команду различных авторов. WordPress позволяет создавать страницы автора, однако WordPress 3.0 появилась возможность использовать определенные шаблоны для разных авторов, так же, как это реализовано с разными рубриками.

Все, что вам понадобится сделать – создать страницу автора с именем author-XX.php, где XX – это ID автора или ник. Например, если ник пользователя “john”, вам нужно создать файл с именем author-john.php.

Источник: Кодекс

Добавление пользовательского фона

WordPress 3.0 появится новая возможность, которая особенно придется по душе нетехническим пользователям – пользовательский фон. Эта функция позволяет пользователям загрузить фоновую картинку в панели управления, указать ее позиционирование и автоматически применить к своему блогу.

Конечно же тема, которую использует блоггер, должна поддерживать данную функциональность, иначе загруженный фон просто не будет отображаться. Для того, чтобы включить эту функцию, откройте файл functions.php и вставьте следующую строку:

add_custom_background();

Стилизация редактора WordPress с помощью CSS

WordPress использует всем известный WYSIWYG-редактор, позволяющий видеть текст в полужирном начертании, курсив и т.д. Однако, некоторые люди хотят большего, например получить возможность отображать текст в редакторе, используя цвета и шрифты темы блога.

Эта функция добавлена в WordPress 3.0. С ее помощью, вы можете создать css-файл (в примере, файл с именем editor-style.css) и подключить его к редактору WYSIWYG, для более удачного отображения. Просто вставьте этот фрагмент кода в файл functions.php.

add_filter('mce_css', 'my_editor_style');
function my_editor_style($url) {
  if ( !empty($url) )
    $url .= ',';
  // Измените пусть к файлу, если используете вложенные папки 
  $url .= trailingslashit( get_stylesheet_directory_uri() ) . 'editor-style.css';

  return $url;
}

Источник: azaozz.wordpress.com

Делаем свою тему совместимой с системой меню WordPress 3.0

В WordPress 3.0 планируется внедрить абсолютно новую систему меню, которая позволит пользователям добавлять только определенные страницы, добавлять рубрики и многое другое. Хорошие новости для разработчиков шаблонов – добавить поддержку меню WP 3.0 очень просто.

Для этого, откройте файл functions.php и добавьте следующую строку:

add_theme_support( 'nav-menus' );

После этого, вы сможете использовать новую функцию wp_nav_menu() в своих шаблонных файлах:

wp_nav_menu('sort_column=menu_order&container_class=navigation'

Как видите, она принимает те же самые параметры, что и старая функция wp_list_categories().

Источник: wpspecial.net

Перевод статьи “8 useful code snippets to get started with WordPress 3.0”, автор Jean-Baptiste Jung