Программное добавление страницы или записи в WordPress
Создавать страницы или записи — неотъемлемая часть ведения любого блога. Эта операция без проблем производится из панели управления (админки). Переходим на вкладку записи — добавить запись или на вкладку страницы — тоже действие. Удобный текстовый редактор позволяет добавить текст и изображения, так же можно переключится в режим редактирования html и добавить нужную разметку для записи или статической страницы.
Хоть wordpress и предрасположен для ведения блогов, можно использовать эту CMS ровно на столько, на сколько у вас хватит фантазии. Эту CMS можно адаптировать практически под любой проект, расширяя стандартный функционал, используя плагины.
Полезным моментом, работая с плагинами, будет программное добавление страниц. Во время написания плагина, который будет добавлять некие объекты со своими свойствами (которые в итоге будут обрабатываться), может понадобиться создать страницы, представляющие эти объекты. Как вариант, можно после добавления нового объекта перейти к добавлению страницы. Только в таком случае придется делать двойную работу: написать свойства в панели для добавления объекта, а затем писать их ещё раз при добавлении страницы. Раз уж мы созрели до создания плагина, то делать двойную работу — это не для нас! При добавлении свойств объекта можно добавить всего одну функцию из API WordPress, которая будет создавать страницу. На страницу можно помещать уже имеющиеся свойства объекта, а также можно добавить описание, фотографию и тому подобное. wp_insert_post() — функция для добавления записи или статической страницы. Эта функция принимает 2 параметра:
<?php wp_insert_post( $post, $wp_error ); ?>
Первый параметр — массив данных о записи, передаваемый в базу данных, второй параметр (необязательный) — логическое значение, позволяет получить объект, в случае ошибки. По умолчанию $wp_error установлен в значение false.
Для использования функции нужно подготовить массив данных о записи $post, затем вызвать функцию wp_insert_post().
Список ключей массива $post с кратким описанием:
<?php $post = array( 'ID' => [ 'post id' ] //Если хотите обновить существующий пост 'menu_order' => [ 'order' ] //Если новый пост является страницей, определяет порядок её появления во вкладках. 'comment_status' => [ 'closed' | 'open' ] // 'closed' статус комментирования. 'ping_status' => [ 'closed' | 'open' ] // 'closed' Статус обратной связи 'pinged' => [ ? ] //? 'post_author' => [ 'user ID' ] //Пользовательский ID автора. 'post_category' => [ array('category id', <...>) ] //Добавить в несколько категорий. 'post_content' => [ 'the text of the post' ] //Полный текст страницы. 'post_date' => [ Y-m-d H:i:s ] //Время создания страницы(поста). 'post_date_gmt' => [ Y-m-d H:i:s ] //Время создания страницы(поста), в GMT . 'post_excerpt' => [ 'an excerpt' ] //Для всех ваших нужных выдержек. 'post_name' => [ 'the name' ] // Имя (slug - название статьи в строке URL) для вашего поста 'post_parent' => [ 'post ID' ] //Устанавливает родителя новой записи. 'post_password' => [ ? ] //пароль для записи? 'post_status' => [ 'draft' | 'publish' | 'pending'| 'future' | 'private' ] //задать статус нового поста. 'post_title' => [ 'the title' ] //Заголовок поста(записи, статьи). 'post_type' => [ 'post' | 'page' | 'link' | 'nav_menu_item' | custom post type ] //Вы можете указать обычную статью, страницу, ссылку, элемента меню или других типов записей 'tags_input' => [ 'tag', 'tag', '...' ] //Для тегов. 'to_ping' => [ ? ] //? 'tax_input' => [ array( 'taxonomy_name' => array( 'term', 'term2', 'term3' ) ) ] // Поддержка для созданных таксономий. ); ?>
Минимальный набор ключей для создания страницы это post_title — заголовок и post_content — тело записи, остальные необходимые параметры будут установлены по умолчанию. Значения ключей передаваемых по умолчанию:
<?php $defaults = array( 'post_status' => 'draft', 'post_type' => 'post', 'post_author' => $user_ID, 'ping_status' => get_option('default_ping_status'), 'post_parent' => 0, 'menu_order' => 0, 'to_ping' => '', 'pinged' => '', 'post_password' => '', 'guid' => '', 'post_content_filtered' => '', 'post_excerpt' => '', 'import_id' => 0 ); ?>
Созданная таким образом страница или запись, ни чем не отличается от страницы или записи созданной через вкладку «Записи» и «Страницы».
Рубрики
Фильтр по типу
Рубрики
- Авто
- Адаптивные
- Бизнес
- Детские и образование
- Дом и семья
- Женские и шопинг
- Здоровье и медицина
- Игры и развлечения
- Интерьер
- Искусство и творчество
- Красота и мода
- Кулинария
- Блог и люди
- Минимализм
- Музыка
- Недвижимость и стройка
- Новостные
- Портал
- Природа и животные
- Спорт
- Технологии
- Туризм и путешествия
- Универсальные
- Финансы
Лучшие шаблоны для Wordpress
Лучшие комментарии
Последние темы и подборки
- 20+ лучших бесплатных медицинских шаблонов WordPress
- Window Blinds Repair – бесплатная тема для ремонта жалюзи и окон
- 13 отобранных шаблонов для партнерского маркетинга на WordPress
- Sophi Blog – бесплатный крутой шаблон для блога с русским переводом
- ТОП-10 тем WordPress для финансового консультанта и кредитов
- Лучшие темы WordPress для магазина чая и кофе
- 10 бесплатных шаблонов WordPress для художников
- ТОП-15: антикварные и коллекционные темы WordPress для винтажных сайтов
- Doctor Physician – бесплатный шаблон WordPress для врачей
- Fitness Trainer – бесплатный фитнес шаблон WordPress
Лучшие комментарии