WordPress 3.0, запуск которого назначен на первое мая 2010 года, произведет настоящую революцию среди блоговых систем. С таким нововведением, как пользовательские типы записей, разработчики получат возможность создавать гораздо более комплексные и мощные сайты на основе WordPress. В сегодняшней статье собраны наиболее полезные фрагменты кода, которые пригодятся вам при работе с WordPress 3.0.
Как создать пользовательский тип записи
Пользовательский тип записи – это очень серьезный шаг вперед для WordPress, поскольку, благодаря этой функциональности, разработчики смогут создавать любые типы записей, в соответствии со своими потребностями.
Сейчас, в нашем распоряжении есть только записи и страницы. С WordPress 3.0, появится возможность создать новый тип записи, например “товары”, в котором клиент сможет продавать только свои товары, в виде обычной публикации записей в блог.
Создать пользовательский тип записи очень просто: все, что вам нужно сделать – открыть файл functions.php и вставить следующий код:
[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 );
[/php]
После сохранения файла, зайдите в панель управления WordPress и обратите внимание на то, как изменилась навигация слева: добавлен новый тип записи под названием “Товары”.
Источник: Кодекс
Пользовательский тип записи с пользовательской таксономией
В предыдущем примере, вы узнали как создается пользовательский тип записи, что весьма пригодится, при использовании WordPress в качестве CMS.
Теперь, давайте рассмотрим более комплексное, но очень интересное решение – создадим пользовательский тип записи вместе с соответствующей пользовательской таксономией. Для тех кто не в курсе, таксономия – это термин (такой как рубрика, тэг и т.д.) связанный с записями. Более подробную информацию о таксономии можно узнать из Кодекса WordPress.
В этом примере, мы создадим пользовательский тип записи под названием “Альбомы”, который будет принадлежать пользовательской рубрике “Жанр”, и будет иметь тэг “Исполнитель”. Этот фрагмент необходимо вставить в файл functions.php. Всего лишь 27 строк кода, и вы можете создать полноценный архив музыкальных альбомов.
[php]
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’);
[/php]
Источник: wpspecial.net
Получение пользовательского типа записей
Теперь, когда вы знаете как создавать пользовательские типы записей, следующий шаг – узнать как получить их из базы данных WordPress, и вывести в блоге.
Хорошая новость для разработчиков – в этом процессе нет ничего сложного или нового. Получить пользовательские типы записей очень просто, с помощью объекта WP_Query.
Следующий пример создает произвольный цикл, получающий записи только с пользовательским типом “albums”.
[php]
<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>
[/php]
Активируем функцию мультисайта
Одним из самых ярких нововведений в WordPress 3.0 несомненно является мультисайтовое управление. Вкратце, всего лишь с одной установкой WordPress, вы получите возможность запустить сеть WordPress-блогов.
Для того чтобы воспользоваться этой функцией, просто вставьте следующую строку кода в файл wp-config.php. Этот файл расположен в корневой директории вашей WordPress-установки.
[php]
define(‘WP_ALLOW_MULTISITE’, true);
[/php]
После добавления вышеуказанной строки, вам понадобится зайти на страницу “Инструменты – Сеть” и настроить сеть.
Источник: wptheming.com
Персональные профили авторов
Большинство популярных блогов содержит в штате целую команду различных авторов. WordPress позволяет создавать страницы автора, однако WordPress 3.0 появилась возможность использовать определенные шаблоны для разных авторов, так же, как это реализовано с разными рубриками.
Все, что вам понадобится сделать – создать страницу автора с именем author-XX.php, где XX – это ID автора или ник. Например, если ник пользователя “john”, вам нужно создать файл с именем author-john.php.
Источник: Кодекс
Добавление пользовательского фона
WordPress 3.0 появится новая возможность, которая особенно придется по душе нетехническим пользователям – пользовательский фон. Эта функция позволяет пользователям загрузить фоновую картинку в панели управления, указать ее позиционирование и автоматически применить к своему блогу.
Конечно же тема, которую использует блоггер, должна поддерживать данную функциональность, иначе загруженный фон просто не будет отображаться. Для того, чтобы включить эту функцию, откройте файл functions.php и вставьте следующую строку:
[php]
add_custom_background();
[/php]
Стилизация редактора WordPress с помощью CSS
WordPress использует всем известный WYSIWYG-редактор, позволяющий видеть текст в полужирном начертании, курсив и т.д. Однако, некоторые люди хотят большего, например получить возможность отображать текст в редакторе, используя цвета и шрифты темы блога.
Эта функция добавлена в WordPress 3.0. С ее помощью, вы можете создать css-файл (в примере, файл с именем editor-style.css) и подключить его к редактору WYSIWYG, для более удачного отображения. Просто вставьте этот фрагмент кода в файл functions.php.
[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;
}
[/php]
Источник: azaozz.wordpress.com
Делаем свою тему совместимой с системой меню WordPress 3.0
В WordPress 3.0 планируется внедрить абсолютно новую систему меню, которая позволит пользователям добавлять только определенные страницы, добавлять рубрики и многое другое. Хорошие новости для разработчиков шаблонов – добавить поддержку меню WP 3.0 очень просто.
Для этого, откройте файл functions.php и добавьте следующую строку:
[php]
add_theme_support( ‘nav-menus’ );
[/php]
После этого, вы сможете использовать новую функцию wp_nav_menu() в своих шаблонных файлах:
[php]
wp_nav_menu(‘sort_column=menu_order&container_class=navigation’
[/php]
Как видите, она принимает те же самые параметры, что и старая функция wp_list_categories().
Источник: wpspecial.net
Перевод статьи “8 useful code snippets to get started with WordPress 3.0”, автор Jean-Baptiste Jung
Leave a Reply