Продолжаю разбираться в функциях, хочу создать форму публикации новостей на странице сайта. пробую вывести форму публикации, ссылку на миниаюру и возможность выбора в какой раздел публиковать или же раздел по умолчанию, пока удалось создать только форму, не пойму как вывести форму публикации, задания миниатюры( возможно ли это сделать стандартными функциями wp ?)
и какая разница между
<?php wp_editor( $contetn="Добавьте информацию о акции", 'wp_editor', array('textarea_name' => 'content','media_buttons' => false) ); ?>
и
<?php if ( user_can_richedit() ) { wp_editor( $content, 'mycustomeditor' ); } else { echo 'You cannot use the rich editor'; } ?>
Если речь о плагине wp-recall, то там для этого есть шорткод publicpost.
Если нет, то для начала постройте простую форму на html, не надо лезть в какие то php или wp функции. Когда html форма будет готова, тогда и навешивайте на нее функции, хотя достаточно будет просто заменить тег textarea на функцию wp_editor.
Кстати, разница между примерами которые вы привели только в количестве атрибутов указанных внутри этой функции. Прочтите по этой функции мануал и тогда вопросов не будет.
Андрей Plechev said
Если речь о плагине wp-recall, то там для этого есть шорткод publicpost.
Если нет, то для начала постройте простую форму на html, не надо лезть в какие то php или wp функции. Когда html форма будет готова, тогда и навешивайте на нее функции, хотя достаточно будет просто заменить тег textarea на функцию wp_editor.
Кстати, разница между примерами которые вы привели только в количестве атрибутов указанных внутри этой функции. Прочтите по этой функции мануал и тогда вопросов не будет.
Пока разработка не увенчалась успехом , пробовал черех функции function my_format_TinyMCE( $in ) по мануалу, совсем все падает submit_button , не выводится слвсем, буду сообщать по мере продвижения)
Андрей Plechev said
А все-таки, что с html-кодом формы? Он уже имеется? Это основа с которой и следует начинать. Успехов)
Да, форму сделал! вот теперь проблема с запросом! все по кодексу написал
<?php /* Define these, So that WP functions work inside this file */ define('WP_USE_THEMES', false); require( $_SERVER['DOCUMENT_ROOT'] .'/wp-blog-header.php'); ?>
В начале документа, как уже не пробовал формировать запросы, выдает ошибку
Warning: require(W:/home/localhost/www/wp-blog-header.php) [function.require]: failed to open stream: No such file or directory in W:homelocalhostwwwmrplwp-contentthemesmrplhandler.php on line 4 Fatal error: require() [function.require]: Failed opening required 'W:/home/localhost/www/wp-blog-header.php' (include_path='.;C:phppear') in W:homelocalhostwwwmysitewp-contentthemesmythemehandler.php on line 4
Сижу туплю, не могу прописать правильный путь в глобальный массив чтобы он одинаково хорошо и на локалке работал и на сервере!
Так разобрался, только в обработчике приходится переписывать пути на локалке и реальном сервере. Вопрос второй: при публикации автоматически новость идет на сайт без премодерации, как ее настроить правильно и как сделать так, чтобы после публикации перенаправляло на выбранную страницу?
Код обработчика:
<?php /* Define these, So that WP functions work inside this file */ define('WP_USE_THEMES', false); require( $_SERVER['DOCUMENT_ROOT'] .'/wp-blog-header.php'); ?> <?php if(isset($_POST['send']) == '1') { $post_title = $_POST['title']; $post_category = $_POST['cat']; $post_content = $_POST['description']; $new_post = array( 'ID' => '', 'post_author' => $user->ID, 'post_category' => array($post_category), 'post_content' => $post_content, 'post_title' => $post_title, 'post_status' => 'publish' ); $post_id = wp_insert_post($new_post); // This will redirect you to the newly created post $post = get_post($post_id); wp_redirect($post->guid); } ?>