add_action('init','vab_commentdata_chek');function vab_commentdata_chek($commentdata){
if(isset($_POST['author'])&&$_POST['author']=='Вася'){wp_die(__('Ты отфильтрован!','VAB'));}
return $commentdata;}
add_action('init','vab_commentdata_chek');function vab_commentdata_chek($commentdata){
$users=get_users();
foreach($users as $q){
if(isset($_POST['author'])&&$_POST['author']==get_the_author_meta('display_name',$q->ID)){wp_die(__('Ты отфильтрован!','VAB'));}
}
return $commentdata;}
add_action('init','vab_commentdata_chek');function vab_commentdata_chek($commentdata){
$users=get_users();
foreach($users as $q){
if(isset($_POST['author'])&&$_POST['author']==get_the_author_meta('display_name',$q->ID)){wp_die(__('Ты отфильтрован!','VAB'));}
}
if(isset($_POST['author'])&&$_POST['author']=='Жорик'){wp_die(__('Ты отфильтрован!','VAB'));}
return $commentdata;}
$users=get_users();
foreach($users as $q){
echo get_the_author_meta('display_name',$q->ID).'<br />';
}
$args = array(
'posts_per_page' => 4,//сколько записей на одной странице?
'paged' => (get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1),//текущий номер страницы
'numberposts' => 10,
'offset' => 0,
'category' => 0,
'orderby' => 'post_date',
'order' => 'DESC',
'include' => '',
'exclude' => '',
'meta_key' => '',
'meta_value' => '',
'post_type' => 'post',
'post_status' => 'draft, publish, future, pending, private',
'suppress_filters' => true,
);
$result = wp_get_recent_posts( $args );
foreach( $result as $post ){
setup_postdata( $post );
the_title(); // вывод
}
wp_reset_postdata();
//добавляем либо свою пагинацию,
//либо the_posts_pagination();
//либо the_posts_navigation();
//либо echo paginate_links();
$param=array(
'base' => '%_%',
'format' => '?paged=%#%',
'total' => 5,
'current' => 2,
'show_all' => false,
'end_size' => 1,
'mid_size' => 2,
'prev_next' => true,
'prev_text' => __('« Previous'),
'next_text' => __('Next »'),
'type' => 'plain',
'add_args' => false,
'add_fragment' => '',
'before_page_number' => '',
'after_page_number' => ''
);
echo paginate_links($param);
$params=array('posts_per_page'=>4,'post_type'=>$PostsType,'paged'=>$current_page);
$query=new WP_Query($params);
$params=array('posts_per_page'=>$VAB_Num,'post_type'=>$PostsType,'paged'=>$current_page);
$query=new WP_Query($params);
add_action('customize_register','action_customize_register');
if(!function_exists('action_customize_register')){function action_customize_register($customizer){
$customizer->get_control('custom_logo')->label=__('Меняем название опции',"VAB");
$customizer->get_control('custom_logo')->section='colors';//отправляем в секцию цвета
}}
if(class_exists('WP_Customize_Control')){
class Alpha_Color_Control extends WP_Customize_Control{
public $attributes="";
public $defaultPalette=array('#000000','#ffffff','#dd3333','#dd9933','#eeee22','#81d742','#1e73be','#8224e3',);
public function __construct($manager,$id,$args=array(),$options=array()){
parent::__construct($manager,$id,$args);
$this->attributes.='data-default-color="'.esc_attr($this->settings['default']->default).'"';
$this->attributes.='data-alpha="true"';
$this->attributes.='data-reset-alpha="'.(isset($this->input_attrs['resetalpha'])?$this->input_attrs['resetalpha']:'true').'"';
$this->attributes.='data-custom-width="0"';}
public function enqueue(){wp_enqueue_script('alpha',get_template_directory_uri().'/VAB_libs/VAB_functions/js/alpha_color.js',array('wp-color-picker'),'1.0',true);}
public function to_json(){
parent::to_json();
$this->json['colorpickerpalette']=isset($this->input_attrs['palette'])?$this->input_attrs['palette']:$this->defaultPalette;
}
public function render_content(){?>
<div class="wpcolorpicker_alpha_color_control">
<?php if(!empty($this->label)){?>
<span class="customize-control-title"><?php echo esc_html($this->label);?></span>
<?php }
if(!empty($this->description)){?>
<span class="customize-control-description"><?php echo esc_html($this->description);?></span>
<?php }?>
<input type="text" class="color-picker" id="<?php echo esc_attr($this->id);?>" name="<?php echo esc_attr($this->id);?>" value="<?php echo esc_attr($this->value());?>" class="customize-control-colorpicker-alpha-color" <?php echo $this->attributes;?> <?php $this->link();?> />
</div><?php }}}
public function enqueue(){wp_enqueue_script('alpha',get_template_directory_uri().'/VAB_libs/VAB_functions/js/wp-color-picker-alpha.js',array('wp-color-picker'),'1.0',true);}
add_action('customize_register','action_customize_register');
if(!function_exists('action_customize_register')){function action_customize_register($customizer){
$customizer->add_setting('VAB_alpha_color',array('default'=>'rgba(209,0,55,0.7)',));
$customizer->add_control(new Alpha_Color_Control($customizer,'VAB_alpha_color',
array(
'label'=>__('Альфа колор пикер','VAB'),
'description'=>esc_html__('Описание','VAB'),
'section'=>'title_tagline',
'input_attrs'=>array('palette'=>array('#000000','#ffffff','#dd3333','#dd9933','#eeee22','#81d742','#1e73be','#8224e3',)),)
));
}}
echo '<div style="background:'.get_theme_mod('VAB_alpha_color').';">VAB_alpha_color</div>';
$this->attributes.='data-default-color="'.esc_attr($this->value()).'"';
$this->attributes.='data-default-color="'.esc_attr($this->settings['default']->default).'"';
add_action('admin_menu','VAB_add_Menu');
if(!function_exists('VAB_add_Menu')){
function VAB_add_Menu(){
add_submenu_page(NULL,__('Версия PHP','VAB'),__('Версия PHP','VAB'),'manage_options','VAB_PHP_INFO','VAB_PHP_INFO');
}}
if(!function_exists('VAB_PHP_INFO')){function VAB_PHP_INFO(){
echo "<style type=\"text/css\">#adminmenuwrap{display:none;}#adminmenuback{width:0px;}#wpcontent{margin-left:-20px;}td h1{padding:21px 0px 0px 0px;}</style>";phpinfo();
}}
<a href="<?echo admin_url('admin.php?page=VAB_PHP_INFO');?>">VAB_PHP_INFO</a>
add_filter('template_include','VABch_include');
if(!function_exists('VABch_include')):function VABch_include($path){
if(is_singular('post')){
return get_stylesheet_directory().'/single-VAB.php';
}
return $path;}endif;
if(is_singular('post')){
скорректируйте данное условие под себя. Если оставить так, то все обычные записи будут выводится через шаблон single-VAB.php в корне темы. single-VAB.php то же на свой шаблон замените add_action('init','blockusers_init');
function blockusers_init(){
if(!current_user_can('administrator')){show_admin_bar(false);}
if(is_admin()&&!current_user_can('administrator')&&!(defined('DOING_AJAX')&&DOING_AJAX)){
wp_redirect(home_url());
exit;
}}
if(!current_user_can('publish_posts')){//или current_user_can('administrator') или current_user_can('manage_options')
add_filter('show_admin_bar','__return_false');
}
$slug='default';
if($slug){
$arg=array('category_name'=>$slug,'posts_per_page'=>3,);
$catquery = new WP_Query($arg); ?>
<?php while($catquery->have_posts()) : $catquery->the_post(); ?>
<h3><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h3>
<div><?php the_excerpt(); ?></div>
<?php endwhile;wp_reset_postdata();
}
function dateToRussian($date){
$month=array(
"january"=>__("января",'VAB'),
"february"=>__("февраля",'VAB'),
"march"=>__("марта",'VAB'),
"april"=>__("апреля",'VAB'),
"may"=>__("мая",'VAB'),
"june"=>__("июня",'VAB'),
"july"=>__("июля",'VAB'),
"august"=>__("августа",'VAB'),
"september"=>__("сентября",'VAB'),
"october"=>__("октября",'VAB'),
"november"=>__("ноября",'VAB'),
"december"=>__("декабря",'VAB'));
$days=array(
"monday"=>__("Понедельник",'VAB'),
"tuesday"=>__("Вторник",'VAB'),
"wednesday"=>__("Среда",'VAB'),
"thursday"=>__("Четверг",'VAB'),
"friday"=>__("Пятница",'VAB'),
"saturday"=>__("Суббота",'VAB'),
"sunday"=>__("Воскресенье",'VAB'));
return str_replace(array_merge(array_keys($month),array_keys($days)),array_merge($month,$days),strtolower($date));}
//вывод
echo __('Сегодня','VAB').dateToRussian(date(' l, j F Y ')).__('года','VAB');
add_action('add_meta_boxes','VAB_short_for_posts_meta_box');
if(!function_exists('VAB_short_for_posts_meta_box')){
function VAB_short_for_posts_meta_box(){
$screens=array('post');
add_meta_box('post_meta',__('Шорткод Поста','VAB'),'post_meta_box_callback',$screens,'side','high');
}
}
if(!function_exists('post_meta_box_callback')){
function post_meta_box_callback($post,$meta){
$screens=$meta['args'];
echo __('Скопируйте Шорткод ниже для размещения этого поста в виджетах, постах и страницах:','VAB'),'<div class="VAB_ShortCode" style="background:#FF0000;color:#FFF;padding:4px;border-radius:4px;">[VAB_post_show id="'.$post->ID.'"]</div>',__('Для вывода миниатюр используйте шорткод ниже:','VAB'),'<div class="VAB_ShortCode" style="background:#FF0000;color:#FFF;padding:4px;border-radius:4px;">[VAB_min_post_show id="'.$post->ID.'"]</div>';
}
}
function sso_dictors_lib_post_type() {
$dictors_labels = array(
'name' => _x( 'База Дикторов', 'sso_dictors_lib' ),
'singular_name' => _x( 'База Дикторов', 'sso_dictors_lib' ),
'menu_name' => __( 'База Дикторов', 'sso_dictors_lib' ),
'name_admin_bar' => __( 'Диктора', 'sso_dictors_lib' ),
'attributes' => __( 'Аттрибуты диктора', 'sso_dictors_lib' ),
'all_items' => __( 'Все Дикторы', 'sso_dictors_lib' ),
'add_new_item' => __( 'Добавить Нового Диктора', 'sso_dictors_lib' ),
'add_new' => __( 'Добавить Диктора', 'sso_dictors_lib' ),
'new_item' => __( 'Новый Диктор', 'sso_dictors_lib' ),
'edit_item' => __( 'Редактировать Диктора', 'sso_dictors_lib' ),
'update_item' => __( 'Обновиить Диктора', 'sso_dictors_lib' ),
'view_item' => __( 'Просмотеть Диктора', 'sso_dictors_lib' ),
'view_items' => __( 'Просмотреть Диктора', 'sso_dictors_lib' ),
'search_items' => __( 'Найти Диктора', 'sso_dictors_lib' ),
'not_found' => __( 'Дикторов не найдено', 'sso_dictors_lib' ),
'not_found_in_trash' => __( 'Здесь Дикторов нет', 'sso_dictors_lib' ),
'featured_image' => __( 'Фотография Диктора', 'sso_dictors_lib' ),
'set_featured_image' => __( 'Установить фотографию Диктора', 'sso_dictors_lib' ),
'remove_featured_image' => __( 'Удалить фотографию Диктора', 'sso_dictors_lib' ),
'use_featured_image' => __( 'Все фотографии Диктора', 'sso_dictors_lib' ),
'insert_into_item' => __( 'Добавить в анкету', 'sso_dictors_lib' ),
'uploaded_to_this_item' => __( 'Прикрепить к этой анкете', 'sso_dictors_lib' ),
'items_list' => __( 'Список Дикторов', 'sso_dictors_lib' ),
'items_list_navigation' => __( 'Список Дикторов', 'sso_dictors_lib' ),
'filter_items_list' => __( 'Фильтр Дикторов', 'sso_dictors_lib' ),
);
$rewrite = array(
'slug' => 'sso_dictors_lib',
'with_front' => true,
'pages' => true,
'feeds' => true,
);
$dictors_args = array(
'label' => __( 'База Дикторов', 'sso_dictors_lib' ),
'description' => __( 'База Дикторов и Актеров озвучки.', 'sso_dictors_lib' ),
'labels' => $dictors_labels,
'supports' => array('revisions', 'thumbnail' ),
'taxonomies' => array( 'sso_dictor_type'),
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_position' => 5,
'menu_icon' => 'dashicons-admin-users',
'show_in_admin_bar' => true,
'show_in_nav_menus' => true,
'can_export' => true,
'has_archive' => true,
'exclude_from_search' => true,
'publicly_queryable' => true,
'query_var' => 'post_type',
'rewrite' => $rewrite,
'capability_type' => 'post',
);
register_post_type( 'sso_dictors_lib', $dictors_args );
}
add_action( 'init', 'sso_dictors_lib_post_type', 0 );
function add_dictor_data(){ ?>
<div class="form-row">
<div class="form-group row" id="new_proprietor_data">
<div class="form-group col-3">
<label for="dictor__surname">Фамилия:</label>
<input type="text" needed="true" class="form-control" id="dictor__surname" value="" >
</div>
<div class="form-group col-3">
<label for="dictor__name">Имя:</label>
<input type="text" needed="true" class="form-control" id="dictor__name" value="" >
</div>
<div class="form-group col">
<label for="dictor_phone">Телефон:</label>
<input type="text" class="form-control" needed="true" id="dictor_phone" value="" >
</div>
<div class="form-group col">
<label for="dictor_mail">E-Mail:</label>
<input type="text" class="form-control" needed="true" id="dictor_mail" value="" >
</div>
</div>
</div>
<?php
}
add_action('add_meta_boxes','VAB_short_for_posts_meta_box');
if(!function_exists('VAB_short_for_posts_meta_box')){
function VAB_short_for_posts_meta_box(){
$screens=array('sso_dictors_lib');
add_meta_box('dictordatas', 'Личные Данные Диктора', 'add_dictor_data', $screens, 'normal', 'high');
}
}
add_action('wp_enqueue_scripts','load_styles_scripts');
if(!function_exists('load_styles_scripts')):function load_styles_scripts(){
wp_enqueue_script('click',get_template_directory_uri().'/js/click.js',array('jquery'));//подключенный файл скрипта в котором Вы хотите использовать функцию is_admin_bar_showing
$IABS=array('IABS_Out'=>is_admin_bar_showing());
wp_localize_script('click','IABS_In',$IABS);//передаем в файл скрипта функцию
}endif;
var IABS=IABS_In.IABS_Out;
if(IABS){alert('Админ бар отображается');}
add_role('newvabuser',
__('Новый пользователь','VAB'),
array(
'read'=>true,
'edit_posts'=>false,
'delete_posts'=>false,
'publish_posts'=>false,
'upload_files'=>true,
)
);
remove_role('newvabuser');
add_action('init','create_custom_post_types');
function create_custom_post_types(){
register_post_type('vabs',
array(
'labels'=>array(
'name'=>__('Новый тип записи','VAB'),
'singular_name'=>__('Новый тип записи','VAB'),
'menu_name'=>__('Новый тип записи','VAB'),
'add_new'=>__('Добавить новую','VAB'),
'add_new_item'=>__('Добавить новую','VAB'),
'edit_item'=>__('Редактировать','VAB'),
'new_item'=>__('Новая','VAB'),
'all_items'=>__('Все записи','VAB'),
'view_item'=>__('Просмотр','VAB'),
'search_items'=>__('Искать','VAB'),
'not_found'=>__('Записи не найдены','VAB'),
'not_found_in_trash'=>__('В корзине записи не найдены','VAB'),
'parent_item_colon'=>''
),
'public'=>true,
'has_archive'=>true,
'rewrite'=>array('slug'=>'vab'),
'capability_type'=>'vab',
'capabilities'=>array(
'publish_posts'=>'publish_vabs',
'edit_posts'=>'edit_vabs',
'edit_others_posts'=>'edit_others_vabs',
'delete_posts'=>'delete_vabs',
'delete_others_posts'=>'delete_others_vabs',
'read_private_posts'=>'read_private_vabs',
'edit_post'=>'edit_vabs',
'delete_post'=>'delete_vabs',
'read_post'=>'read_vabs',
'assign_terms' =>'edit_taxo',
'manage_terms'=>'manage_vab_terms',
'edit_terms'=>'manage_vab_terms',
'delete_terms'=>'delete_vab_terms',
'assign_terms'=>'edit_vab-type'
),
'supports'=>array('title','editor','thumbnail')
)
);
}
add_action('admin_init','add_vabs_caps');
function add_vabs_caps(){
$admins=get_role('newvabuser');
$admins->add_cap('edit_vabs');
$admins->add_cap('publish_vabs');
$admins->add_cap('read_vabs');
$admins->add_cap('read_private_vabs');
$admins->add_cap('delete_vabs');
$admins->add_cap('edit_taxo');
$admins->remove_cap('edit_others_vabs');
$admins->remove_cap('delete_others_vabs');
$admins->add_cap('manage_vab_terms');
$admins->add_cap('delete_vab_terms');
$admins->add_cap('edit_vab-type');
$admins->add_cap('manage_categories');
$admins->add_cap('edit_categories');
$admins->add_cap('delete_categories');
$admins->add_cap('assign_categoriess');
}
add_action('init','faq_Posts');function faq_Posts(){
register_post_type(
'faq',
array(
'labels' => array(
'name' => 'Все FAQ',
'singular_name' => 'Вопрос-ответ',
'add_new' => 'Добавить FAQ',
'add_new_item' => 'Добавление FAQ',
'edit_item' => 'Редактирование FAQ',
'new_item' => 'Новый FAQ',
'view_item' => 'Смотреть FAQ',
'search_items' => 'Искать FAQ',
'not_found' => 'Не найдено',
'not_found_in_trash' => 'Не найдено в корзине',
'parent_item_colon' => '',
'menu_name' => 'FAQ',
),
'public' => true,
'has_archive' => true,
'menu_position' => 4,
//'show_in_nav_menus' => false,
'menu_icon' => 'dashicons-welcome-learn-more',
'supports' => array(
'title',
'editor'
),
'taxonomies' => array('category')
)
);
}
add_filter('pre_get_posts','add_New_Post_type_in_arhive');
if(!function_exists('add_New_Post_type_in_arhive')){
function add_New_Post_type_in_arhive($query){
if(!is_admin()){
if(is_author()&&$query->is_main_query()||is_category()&&$query->is_main_query()||is_year()&&$query->is_main_query()||is_month()&&$query->is_main_query()||is_day()&&$query->is_main_query()||is_tag()&&$query->is_main_query()){
$query->set('post_type',array('post','faq'));
}return $query;}}}
<?php session_start();#Template Name: Загрузка файлов из списка на сервер с новым именем
get_header();
if(have_posts()):
while(have_posts()):the_post();
get_template_part('VAB_template_parts/forms/VAB','FilesLoadServer');
endwhile;
endif;
get_sidebar();get_footer();
if(!function_exists('VAB_Authentication()')){function VAB_Authentication(){
$pass='session_password';//это пароль
$errorSession='';
if(isset($_POST['pass_value'],$_POST['pass_btn'])){
if($pass==$_POST['pass_value']){$_SESSION['unique_ProtecT']=true;
}else{$_SESSION['ProtecT']=false;$errorSession='<div title="'.__('Неверный пароль!','VAB').'">'.__('Неверный пароль!','VAB').'</div>';}}
if(empty($_SESSION['unique_ProtecT'])){?>
<div class="contact_message">
<div class="ProtecT">
<center>
<h4><?php echo $errorSession;printf(__('Страница для Администрации','VAB'));?></h4>
<form method="POST">
<div><?php printf(__('Введите пароль','VAB'));?>: <input type="text" name="pass_value" size="30" /> <input type="submit" value="<?php printf(__('Ввод','VAB'));?>" name="pass_btn" />
</div>
</form>
<br><a href="<?php bloginfo('url');?>"><?php printf(__('Отмена','VAB'));?></a>
</center>
</div>
</div>
<?php }}}
if(function_exists('VAB_Authentication')):VAB_Authentication();endif;
if(VABMoD('VAB_pass_session'))://если в опции есть какое-либо значение, то пароль есть значение опции
$pass=VABMoD('VAB_pass_session');
else://иначе пароль по умолчанию
$pass='session_password';
endif;
if(function_exists('VAB_Authentication')):VAB_Authentication();endif;
exit();//завершает все скрипты после... в том числе и сайдбары и футер и т.д.
if(isset($_SESSION['unique_ProtecT'])&&$_SESSION['unique_ProtecT']==true){
//скрытый контент(включая инженерную панель разумеется)
}
add_action('comment_form_logged_in_after','add_custom_fields');
add_action('comment_form_after_fields','add_custom_fields');
function add_custom_fields(){
if(!is_page_template('school_template.php')){return;}
if(is_page_template('school_template.php')){
add_filter( 'preprocess_comment', 'comm_rating_require_rating' );
function comm_rating_require_rating( $commentdata ) {
$post = get_post( $commentdata['comment_post_ID'] );
if( $post->post_type == 'vabcarousel' ){
у меня стоит проверка is_home для страницы постов и она наверно перебивает is_front_pageда только с is_home надо конкретизировать для случаев со страницей... Давайте разберемся с настройкой...
$opt=get_option('show_on_front');
if($opt=='page'){echo 'page';}else if($opt=='posts'){echo 'posts';}
if(is_front_page()){
$opt=get_option('show_on_front');
if($opt=='page'){//если в настройках выбрана страница
echo 'page';
}else if($opt=='posts'){//если в настройках выбраны записи
echo 'posts';
}}
if(is_home()){echo 'записи';}else if(!is_home()&&is_front_page()){echo 'страница';}
if(is_front_page()){
$opt=get_option('show_on_front');
if($opt=='posts'){//если в настройках выбраны записи
echo 'posts';
}}
if($opt=='page'){//если в настройках выбрана страница
echo 'page';
}
$vab_user_id=get_current_user_id();
if($vab_user_id==1){echo "administrator";}
else if($vab_user_id==2){echo 'editor';}
else if($vab_user_id==3){echo 'avtor';}
else if($vab_user_id==4){echo 'Participant';}
else{ echo 'Alien';}//не авторизован
if(is_user_logged_in()){
$current_user=wp_get_current_user();
$tmp_uid=$current_user->ID;
$user_meta=get_userdata($tmp_uid);
$user_roles=$user_meta->roles;
error_reporting(0);
if(in_array('administrator',$user_roles,true)){
echo "administrator";
echo ''; }}
$current_user=wp_get_current_user();
$tmp_uid=$current_user->ID;
$user_meta=get_userdata($tmp_uid);
if(is_user_logged_in()){
$user_roles=$user_meta->roles;
error_reporting(0);
if(in_array('administrator',$user_roles,true)){
echo "administrator";
echo ''; }}