[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Wordpress плагин
cyberside
Всем привет, написал свой первый плагин для wordpress. Суть плагина, добавлять кастомную страницу. Получилось вот так: http://take.ms/vkAFt

Проблема в том, что когда перехожу на саму страницу на сайте, вместо нее стоит главная...

Сам код плагина:

<?php
add_action('init', 'create_project_article');

add_action('admin_enqueue_scripts', 'projects_load_js_and_css');
function projects_load_js_and_css(){
wp_register_style('styles.css', MSP_PLUGIN_URL . '/css/styles.css', array(), '1.0.0');
wp_enqueue_style('styles.css');

# JQUERY
wp_register_script('jquery-2.0.3', MSP_PLUGIN_URL . '/js/jquery-2.0.3.min.js', array('jquery'), '2.0.3');
wp_enqueue_script('jquery-2.0.3');

wp_register_script('main.js', MSP_PLUGIN_URL . '/js/main.js', array('jquery'), '1.0.0');
wp_enqueue_script('main.js');

# Uploadify
wp_register_style('jquery.uploadify.css', MSP_PLUGIN_URL . '/css/jquery.uploadify.css', array(), '1.0.0');
wp_enqueue_style('jquery.uploadify.css');

wp_register_script('jquery.uploadify.min.js', MSP_PLUGIN_URL . '/js/jquery.uploadify.min.js', array('jquery'), '1.0.0');
wp_enqueue_script('jquery.uploadify.min.js');

# Lightbox
wp_register_style('lightbox.css', MSP_PLUGIN_URL . '/css/lightbox.css', array(), '1.0.0');
wp_enqueue_style('lightbox.css');

wp_register_script('lightbox-2.6.min.js', MSP_PLUGIN_URL . '/js/lightbox-2.6.min.js', array('jquery'), '1.0.0');
wp_enqueue_script('lightbox-2.6.min.js');
}

function create_project_article(){
register_post_type('projects', array(
'labels' => array(
'name' => 'Проекты',
'singular_name' => 'Проекты',
'add_new' => 'Добавить проект',
'add_new_item' => 'Добавление нового проекта',
'edit' => 'Изменить',
'edit_item' => 'Редактировать проект',
'new_item' => 'Новый проект',
'view' => 'Просмотреть',
'view_item' => 'Посмотреть проект',
'search_items' => 'Найти проект',
'not_found' => 'Не найдено проектов',
'not_found_in_trash' => 'Не найдено проектов в корзине',
'parent' => 'Родительский проект'
),
'public' => true,
'menu_position' => 5,
'supports' => array('title', 'editor', 'thumbnail', 'comments', 'page-attributes'),
'taxonomies' => array(),
'menu_icon' => MSP_PLUGIN_URL . 'images/icon.png',
'has_archive' => true
)
);

}

function project_meta_box(){
add_meta_box('project_content_meta_box', 'Контент проекта', 'content_project_meta_box', 'projects', 'normal', 'high');
add_meta_box('project_meta_box', 'Информация о проекте', 'display_project_meta_box', 'projects', 'normal', 'high');
}

function content_project_meta_box($project){
$project_text = get_post_meta($project->ID, 'project_text', true);
$project_file = get_post_meta($project->ID, 'project_file', true);
?>

<table class="project_add" id="upl">
<?php for($i = 0; $i < count($project_text); $i++){ ?>
<tr id="area-id-<?=$i;?>">
<
td class="label"><span>Текст:<span>Содержимое контента (HTML)</span></span><div class="escdelclrbtn" id="remove_field">X</div></td>
<
td>
<
label><textarea name="project_content[]"><?=$project_text[$i];?></textarea></label>
<
div id="image_photo">
<?php if(isset($project_file[$i]) && !empty($project_file[$i])){ ?><a data-lightbox="cert" href="<?=$project_file[$i]?>">Посмотреть изображение</a><?php } ?>
<input type="file" id="file_upload-<?=$i;?>" />
<
input type="hidden" name="project_content_image[]" id="file_url" value="<?=$project_file[$i]?>" />
</
div>
</
td>
</
tr>
<?php } ?>
</table>

<
div class="add_field">
<
span id="edit-slug-buttons">
<
a href="#" class="button button-small hide-if-no-js" id="add_field">Добавить еще</a>
</
span>
</
div>
<?php
}

function display_project_meta_box($project){
$project_review_video = esc_html(get_post_meta($project->ID, 'project_review_video', true));
$project_review_image = esc_html(get_post_meta($project->ID, 'project_review_image', true));
?>

<table class="project_add">
<
tr>
<
td class="label"><span>Категория:<span>Выбирите категорию проекта</span></span></td>
<
td><label>
<
select name="project_category">
<
option value="1">Вебсайты</option>
<
option value="1">Дизайн</option>
<
option value="1">SEO продвижение</option>
<
option value="1">Тексты</option>
</
select>
</
label></td>
</
tr>
<
tr>
<
td class="label"><span>Отзыв (изображение):<span>Выбирете изображение</span></span></td>
<
td id="review_image"><div class="escdelclrbtn" id="clear_review_image">X</div>
<?php if(isset($project_review_image) && !empty($project_review_image)){ ?><a data-lightbox="cert" href="<?=$project_review_image;?>">Посмотреть изображение</a><?php } ?>
<label><input type="hidden" name="project_review_image" id="review_file" value="<?=$project_review_image?>" /><input type="file" id="review_upload" /></label>
</
td>
</
tr>
<
tr>
<
td class="label"><span>Отзыв (видео):<span>Вставьте код фрейма с видео</span></span></td>
<
td><label><input type="text" name="project_review_video" value="<?=$project_review_video?>" style="width: 100%;" /></label></td>
</
tr>
</
table>
<?php
}

add_action('admin_init', 'project_meta_box');
add_action('save_post', 'add_project_fields', 10, 2);

function add_project_fields($project_id, $project){
if($project->post_type == 'projects'){
if(isset($_POST['project_content'])){
update_post_meta($project_id, 'project_text', $_POST['project_content']);
}
if(isset($_POST['project_content_image']) && $_POST['project_content_image'] != ''){
update_post_meta($project_id, 'project_file', $_POST['project_content_image']);
}
if(isset($_POST['project_review_image'])){
update_post_meta($project_id, 'project_review_image', $_POST['project_review_image']);
}
if(isset($_POST['project_review_video'])){
update_post_meta($project_id, 'project_review_video', $_POST['project_review_video']);
}
}
}



Что нужно добавит/изменить что бы получить страничку? Заранее спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.