Задавайте вопросы по курсам WordPress

Создание произвольного статуса записи WordPress

Добавление этого фрагмента в functions.php вашей темы WordPress позволит вам добавить пользовательские сообщения о состоянии для каждой записи или страницы.

        add_filter( 'display_post_states','custom_post_state');
        function custom_post_state( $states ) {
                global $post;
                $show_custom_state = get_post_meta( $post->ID, '_status' );
                   if ( $show_custom_state ) {
                        $states[] = __( '<span class="custom_state '.strtolower($show_custom_state[0]).'">'.$show_custom_state[0].'</span>' );
                        }
                return $states;
        }
        add_action( 'post_submitbox_misc_actions', 'custom_status_metabox' );
        function custom_status_metabox(){
                global $post;
                $custom  = get_post_custom($post->ID);
                $status  = $custom["_status"][0];
                $i   = 0;
                /* ----------------------------------- */
                /*   Array of custom status messages            */
                /* ----------------------------------- */
                $custom_status = array(
                                'Spelling',
                                'Review',
                                'Errors',
                                'Source',
                                'Rejected',
                                'Final',
                        );
                echo '<div class="misc-pub-section custom">';
                echo '<label>Custom status: </label><select name="status">';
                echo '<option class="default">Custom status</option>';
                echo '<option>-----------------</option>';
                for($i=0;$i<count($custom_status);$i++){
                        if($status == $custom_status[$i]){
                            echo '<option value="'.$custom_status[$i].'" selected="true">'.$custom_status[$i].'</option>';
                          }else{
                            echo '<option value="'.$custom_status[$i].'">'.$custom_status[$i].'</option>';
                          }
                        }
                echo '</select>';
                echo '<br /></div>';
        }
        add_action('save_post', 'save_status');
        function save_status(){
                global $post;
                if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE){ return $post->ID; }
                update_post_meta($post->ID, "_status", $_POST["status"]);
        }
        add_action( 'admin_head', 'status_css' );
        function status_css() {
                echo '<style type="text/css">
                .default{font-weight:bold;}
                .custom{border-top:solid 1px #e5e5e5;}
                .custom_state{
                        font-size:9px;
                        color:#666;
                        background:#e5e5e5;
                        padding:3px 6px 3px 6px;
                        -moz-border-radius:3px;
                        }
                        /* ----------------------------------- */
                        /*   change color of messages bellow            */
                        /* ----------------------------------- */
                        .spelling{background:#4BC8EB;color:#fff;}
                        .review{background:#CB4BEB;color:#fff;}
                        .errors{background:#FF0000;color:#fff;}
                        .source{background:#D7E01F;color:#333;}
                        .rejected{background:#000000;color:#fff;}
                        .final{background:#DE9414;color:#333;}
                        </style>';
        }

Возможна данный фрагмент будет полезен для разработки вашего плагина или темы с дополнительными настройками. Полезно для статуса товара или объявлений на сайте. Удачи в разработке.


Купить хостинг WordPress
Репетитор по wordpress
Услуги репетитора онлайн. Список курсов которые я веду
  • Базовый курс по веб-дизайну;
  • Верстка сайтов;
  • Общий курс по CMS WordPress и продолжение курса по разработке шаблонов;
  • Разработка сайтов на PHP.
Подробнее читайте на странице репетитор по WordPress
*/
Задавайте вопросы по курсам WordPress

Створення довільного статусу запису WordPress

Додавання цього фрагмента до functions.php вашої теми WordPress дозволить вам додати власні повідомлення про стан для кожного запису або сторінки. (далее…)

Николаенко Максим

Директор веб-студии ProGrafika. Занимаюсь разработкой, дизайном и продвижением веб-сайтов. Всегда рад новым читателям блога и хорошим клиентам.


Вам может также понравиться...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Шаблоны для WordPress
Самый лучший хостинг в Украине
Стабильный хостинг для Drupal