add_action('admin_enqueue_scripts', 'admin_scripts');
add_action('wp_enqueue_scripts', 'theme_scripts');
if(function_exists('geoip_detect2_get_info_from_current_ip')){
$location_code = geoip_detect2_get_info_from_current_ip()->country->isoCode;
if( $location_code !== 'UA'){
$classN = "no_UA";
}else{
$classN = "country_".$location_code;
}
}
<body class="<?= $classN ?>">
.no_UA #custom_html-5{
display: none !important;
}
.no_UA #custom_html-2{
display: none !important;
}
.no_UA #zen_widget-3{
display: none !important;
}
<?php
$query = new WP_Query( array('post_type' => 'post', 'posts_per_page'=>-1 );
?>
<?php if($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); ?>
<div class="col-sm-12 my-5 bg-primary">
<h1><?php the_title(); ?></h1>
<p><?php the_content(); ?></p>
</div>
<?php endwhile; endif; ?>
data:{
action: 'my_function',
form_data: $("#form").serialize()
}
add_action('wp_ajax_my_function', 'my_function');
add_action('wp_ajax_nopriv_my_function', 'my_function');
function my_function() {
// здесь обработка данных отправка писем
}
function sendDataEmail(email, problem, id_game){
$.ajax({
type:'POST',
url:'/wp-admin/admin-ajax.php',
data: {
action: 'ajax_send_problem',
email: email,
problem: problem,
id_game: id_game
},
success: function (response) {
console.log(response);
},
error: function () {
alert('AJAX ERROR');
}
});
}
add_action('wp_ajax_send_problem', 'ajax_send_problem');
add_action('wp_ajax_nopriv_ajax_send_problem', 'ajax_send_problem');
function ajax_send_problem() {
$result = null;
if(isset($_POST['email']) and isset($_POST['problem']) and $_POST['id_game']){
$email = trim(strip_tags($_POST['email']));
$problem = trim(strip_tags($_POST['problem']));
$id_game = trim(strip_tags($_POST['id_game']));
$title_slot = get_the_title($id_game);
$link_slot = get_the_permalink($id_game);
/*------create email massage----*/
$to = get_option('admin_email');
$subject = "Problem game in slot: ".$title_slot;
if($email){
$email = 'name@emptymail.com';
}
$massage = "<p><b>Slot error:</b> $problem</p>";
$massage .= "<p><b>Slot:</b> <a href='".$link_slot."'>$title_slot</a></p>";
$massage .= "<p><b>Date:</b> ".date('d.m.Y')."</p>";
$headers = "Content-Type: text/html; charset=utf-8; \n\r From: User SlotsSpot <".$email.">" . "\r\n";
$result = wp_mail($to, $subject, $massage, $headers);
if($result){
echo 'send';
}else{
echo 'not send';
}
exit();
}else{
return $result = 'error';
}
}
## Общие CSS стили для админ-панели. Нужно создать файл 'wp-admin.css' в папке темы
add_action( 'admin_enqueue_scripts', function(){
wp_enqueue_style( 'my-wp-admin', get_template_directory_uri() .'css/wp-admin.css' );
}, 99 );
function register_post_types() {
register_post_type('bonus', array(
'label' => 'Bonus',
'labels' => array(
'name' => __('Bonus', 'lang'), // основное название для типа записи
'singular_name' => __('Bonus', 'lang'), // название для одной записи этого типа
'add_new' => __('Add bonus', 'lang'), // для добавления новой записи
'add_new_item' => __('New bonus', 'lang'), // заголовка у вновь создаваемой записи в админ-панели.
'edit_item' => __('Edit', 'lang'), // для редактирования типа записи
'new_item' => __('New Bonus', 'lang'), // текст новой записи
'view_item' => __('View', 'lang'), // для просмотра записи этого типа.
'search_items' => __('Search', 'lang'), // для поиска по этим типам записи
'not_found' => __('Not found', 'lang'), // если в результате поиска ничего не было найдено
'not_found_in_trash' => __('Not found in trash', 'lang'), // если не было найдено в корзине
'parent_item_colon' => '', // для родителей (у древовидных типов)
'menu_name' => 'Bonus', // название меню
),
'description' => '',
'public' => true,
'publicly_queryable' => true,
'exclude_from_search' => false,
'show_ui' => true,
'show_in_menu' => true, // показывать ли в меню адмнки
'show_in_admin_bar' => true, // по умолчанию значение show_in_menu
'show_in_nav_menus' => true,
'show_in_rest' => true, // добавить в REST API. C WP 4.7
// 'rest_base' => null, // $post_type. C WP 4.7
'menu_position' => 0,
'menu_icon' => 'dashicons-carrot',
//'capability_type' => 'post',
//'capabilities' => 'post', // массив дополнительных прав для этого типа записи
//'map_meta_cap' => null, // Ставим true чтобы включить дефолтный обработчик специальных прав
'hierarchical' => false,
'supports' => array('title', 'editor', 'thumbnail', 'comments'), // 'title','editor','author','thumbnail','excerpt','trackbacks','custom-fields','comments','revisions','page-attributes','post-formats'
'taxonomies' => array('bonus_casino', 'bonus_type'),
'has_archive' => true,
'rewrite' => array('slug' => 'online-bonus', 'with_front' => true),
'query_var' => true,
) );
}
add_action('init', 'register_post_types');
$args = array(
'post_type' => 'bonus',
'posts_per_page' => 4 // количество постов
);
$query = new WP_Query($args);
// Цикл
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
echo '<li>' . get_the_title() . '</li>';
}
} else {
// Постов не найдено
}
/* Возвращаем оригинальные данные поста. Сбрасываем $post. */
wp_reset_postdata();