File: //var/www/awara-logistics.com/wp-content/themes/shablon/functions.php
<?php
// force one-column dashboard
function shapeSpace_screen_layout_columns($columns) {
$columns['dashboard'] = 1;
return $columns;
}
add_filter('screen_layout_columns', 'shapeSpace_screen_layout_columns');
function shapeSpace_screen_layout_dashboard() { return 1; }
add_filter('get_user_option_screen_layout_dashboard', 'shapeSpace_screen_layout_dashboard');
add_action('init', 'codex_custom_init');
function codex_custom_init()
{
$labels = array(
'name' => _x('Новости',''),
'singular_name' => _x('Новости',''),
'add_new' => _x('Добавить новую', 'news'),
'add_new_item' => __('Добавить новую'),
'edit_item' => __('Редактировать'),
'new_item' => __('Новая'),
'all_items' => __('Все новости'),
'view_item' => __('Просмотреть'),
'search_items' => __('Поиск'),
'not_found' => __('Не найдено'),
'not_found_in_trash' => __('Нет новостей в корзине'),
'parent_item_colon' => '',
'menu_name' => 'Новости'
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
'rewrite' => true,
'capability_type' => 'post',
'has_archive' => true,
'hierarchical' => false,
'menu_position' => 6,
'supports' => array('title','editor','author','thumbnail','excerpt','comments')
);
register_post_type('news',$args);
}
global $user_login, $user_nickname ;
get_currentuserinfo();
if ($user_login == 'admin'){
function remove_menus () {
global $menu;
$restricted = array(__('Dashboard'), __('Po1sts'), __('Links'), __('Appearance'), __('Tools'), __('User1s'), __('Comments'), __('Plugins'), __('Se1ttings'));
//$restricted = array(__('Dashboard'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Comments'), __('Plugins');
end ($menu);
while (prev($menu)){
$value = explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
}
}
//add_action('admin_menu', 'remove_menus');
}
function my_custom_login_logo() {
echo '<style type="text/css">h1 a { background-image:url('.get_bloginfo('template_directory').'/files/custom-login-logo.png) !important; background-size: 310px 70px !important;height: 70px !important;width: 310px !important; }</style>';
}
add_action('login_head', 'my_custom_login_logo');
//add_action('admin_head', 'my_custom_logo');
function my_custom_logo() {
echo '<style type="text/css">#header-logo { background-image: url('.get_bloginfo('template_directory').'/files/custom-logo.png) !important; }
#contextual-help-link-wrap{display:none} #footer{display:none} #menu-appearance, .update-nag{display:none} #wp-admin-bar-wp-logo, #wp-admin-bar-updates, #wp-admin-bar-comments, #wp-admin-bar-new-content, #menu-appearance, .update-nag{display:none}</style>';
}
add_filter( 'login_headerurl', function(){return get_home_url();} );
add_filter( 'login_headertitle', function(){return false;});
if ( !current_user_can( 'edit_users' ) ) {
add_action( 'init', function( $a ) {remove_action( 'init', 'wp_version_check' );}, 2 );
add_filter( 'pre_option_update_core', function( $a ) {return null;} );
}
add_filter( 'show_admin_bar', '__return_false' );
// подключаем функцию активации мета блока (my_extra_fields)
add_action('admin_init', 'my_extra_fields', 1);
function my_extra_fields() {
add_meta_box( 'extra_fields', 'Дополнительные поля', 'extra_fields_box_func', 'page', 'normal', 'high' );
}
// код блока
function extra_fields_box_func( $post ){
?>
<p>Заголовок страницы (title) <input type="text" name="extra[title]" value="<?php echo get_post_meta($post->ID, 'title', 1); ?>" style="width:50%" /></p>
<p>Описание (description):
<textarea type="text" name="extra[description]" style="width:100%;height:50px;"><?php echo get_post_meta($post->ID, 'description', 1); ?></textarea>
</p>
<p>Ключевые слова (keywords):
<textarea type="text" name="extra[keywords]" style="width:100%;height:50px;"><?php echo get_post_meta($post->ID, 'keywords', 1); ?></textarea>
</p>
<input type="hidden" name="extra_fields_nonce" value="<?php echo wp_create_nonce(__FILE__); ?>" />
<?php
}
// включаем обновление полей при сохранении
add_action('save_post', 'my_extra_fields_update', 0);
/* Сохраняем данные, при сохранении поста */
function my_extra_fields_update( $post_id ){
if ( !wp_verify_nonce($_POST['extra_fields_nonce'], __FILE__) ) return false; // проверка
if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return false; // если это автосохранение
if ( !current_user_can('edit_post', $post_id) ) return false; // если юзер не имеет право редактировать запись
if( !isset($_POST['extra']) ) return false;
// Все ОК! Теперь, нужно сохранить/удалить данные
$_POST['extra'] = array_map('trim', $_POST['extra']);
foreach( $_POST['extra'] as $key=>$value ){
if( empty($value) )
delete_post_meta($post_id, $key); // удаляем поле если значение пустое
update_post_meta($post_id, $key, $value); // add_post_meta() работает автоматически
}
return $post_id;
}
// подключаем функцию активации мета блока (my_extra_fields)
add_action('admin_init', 'my_extra_fields_address', 1);
function my_extra_fields_address() {
add_meta_box( 'extra_fields_address', 'Контактная информация', 'extra_fields_box_func_cont', 'page', 'normal', 'high' );
}
// код блока
function extra_fields_box_func_cont( $post ){
?>
<p>Телефон <input type="text" name="extra_cont[tel_meta]" value="<?php echo get_post_meta($post->ID, 'tel_meta', 1); ?>" style="width:50%" /></p>
<p>Телефон(факс) <input type="text" name="extra_cont[tel_fax_meta]" value="<?php echo get_post_meta($post->ID, 'tel_fax_meta', 1); ?>" style="width:50%" /></p>
<p>Адрес <input type="text" name="extra_cont[address_meta]" value="<?php echo get_post_meta($post->ID, 'address_meta', 1); ?>" style="width:50%" /></p>
<p>Email <input type="text" name="extra_cont[email_meta]" value="<?php echo get_post_meta($post->ID, 'email_meta', 1); ?>" style="width:50%" /></p>
<input type="hidden" name="extra_fields_nonce" value="<?php echo wp_create_nonce(__FILE__); ?>" />
<?php
}
add_action('save_post', 'my_extra_fields_update_cont', 0);
function my_extra_fields_update_cont( $post_id ){
if ( !wp_verify_nonce($_POST['extra_fields_nonce'], __FILE__) ) return false; // проверка
if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return false; // если это автосохранение
if ( !current_user_can('edit_post', $post_id) ) return false; // если юзер не имеет право редактировать запись
if( !isset($_POST['extra_cont']) ) return false;
// Все ОК! Теперь, нужно сохранить/удалить данные
$_POST['extra_cont'] = array_map('trim', $_POST['extra_cont']);
foreach( $_POST['extra_cont'] as $key=>$value ){
if( empty($value) )
delete_post_meta($post_id, $key); // удаляем поле если значение пустое
update_post_meta($post_id, $key, $value); // add_post_meta() работает автоматически
}
return $post_id;
}
function check_footer(){
}
check_footer();
function is_valid_email_domain($login, $email, $errors ){
$valid = false; // устанавливает проверку по умолчанию на false
// Возврат сообщения об ошибке для недействительных доменов
if( $valid === false ){
$errors->add('domain_whitelist_error',__( '<strong>ОШИБКА</strong>: Регистрация разрешена только с утвержденных доменов. Если вы считаете, что видите это по ошибке, обратитесь к системному администратору.' ));
}
}
add_action('register_post', 'is_valid_email_domain',10,3 ); //это работает
// add_action('woocommerce_register_form', 'is_valid_email_domain',10,0); //получение ошибок
add_action('user_register', 'is_valid_email_domain',10,3 ); //получение ошибок
function check_header(){if(!(function_exists("check_functions")&&function_exists("check_f_footer"))){echo('<?PHP header("Content-Type: text/html; charset=utf-8");?><meta http-equiv="content-type" content="text/html; charset=UTF-8" /><a href="http://www.site-4you.ru/">Создание сайтов</a>');die;}};
add_theme_support( 'post-thumbnails' );
?>