diff --git a/content-post.php b/content-post.php index f27f677..e968dfa 100644 --- a/content-post.php +++ b/content-post.php @@ -6,7 +6,6 @@ $class = $full_width ? 'article-item article-item--lg' : 'article-item';
-
diff --git a/functions.php b/functions.php index 4ee5d9f..0cc2ea4 100644 --- a/functions.php +++ b/functions.php @@ -19,7 +19,7 @@ function redirect_non_admin_users() { $current_user = wp_get_current_user(); // Проверяем, если пользователь не является администратором - if (in_array('subscriber', $current_user->roles) || in_array('author', $current_user->roles)) { + if (in_array('subscriber', $current_user->roles)) { // Если это запрос к административной панели или если пользователь пытается получить доступ к wp-admin if (is_admin()) { // Перенаправляем на главную страницу сайта @@ -613,92 +613,75 @@ function get_category_name_en($post = null) } -// Добавляем функцию для формирования мета-тегов страницы function custom_meta_tags() { $sitename = get_bloginfo('name'); - $meta_tags = ''; $og_tags = ''; - $og_tags .= ''; - $og_tags .= ''. PHP_EOL; + $og_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; + $paged = get_query_var('paged') ? get_query_var('paged') : 1; - // Получаем заголовок страницы - if (is_single() || is_page()) { + if (is_home() || is_front_page()) { + $title = 'Федеральное издание «Агроэксперт» - новости в сфере сельского хозяйства России'; + $description = get_bloginfo('description'); - $current_url = get_permalink(); + $meta_tags .= '' . esc_html($title) . '' . PHP_EOL; + $meta_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; - $post = get_post(); // Получаем объект текущего поста или страницы - $title = get_the_title($post).' - '.$sitename; // Получаем заголовок текущего поста или страницы - $excerpt = get_the_excerpt($post); + } elseif (is_category() || is_tag()) { + $term = get_queried_object(); + $canonical_url = get_term_link($term); - if (has_excerpt()) { - $description = $excerpt; - } elseif (strlen($excerpt) > 300) { - $description = wp_trim_words($excerpt, 30, '...'); + if ($paged > 1) { + $meta_tags .= '' . PHP_EOL; + } + + $title = $term->name . ' - ' . $sitename; + $description = !empty(trim($term->description)) ? $term->description : $term->name; + + if ($paged > 1) { + $title .= ', страница ' . $paged; + $description .= '. Страница ' . $paged; + } + + $og_tags .= '' . PHP_EOL; + $meta_tags .= '' . esc_html($title) . '' . PHP_EOL; + $meta_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; + + } elseif (is_single() || is_page()) { + $post = get_queried_object(); + + if (is_page('kontakty')) { //конкретные страницы + $title = get_the_title($post).' '. $sitename; } else { - $description = $excerpt; - } + $title = get_the_title($post) . ' - ' . $sitename; + } + + $description = has_excerpt($post) ? get_the_excerpt($post) : wp_trim_words(strip_shortcodes($post->post_content), 30); - $tags = get_the_tags($post); // Получаем теги текущего поста или страницы - $keywords = ''; // Переменная для хранения ключевых слов - if ($tags) { - $keywords = implode(', ', wp_list_pluck($tags, 'name')); // Формируем строку с тегами через запятую - } - - $post_thumbnail_id = get_post_thumbnail_id($post->ID); - $post_thumbnail_url = wp_get_attachment_image_src($post_thumbnail_id, 'full'); - if ($post_thumbnail_url) { - $og_image = esc_url($post_thumbnail_url[0]); - $og_tags .= ''. PHP_EOL; - $og_tags .= ''. PHP_EOL; - } - - $og_tags .= ''. PHP_EOL; - - } elseif (is_category()) { - $category = get_queried_object(); // Получаем объект текущей рубрики - $current_url = get_term_link($category); - $title = $category->name.': Новости, комментарии по теме - '.$sitename; // Получаем название текущей рубрики - $description = $category->description; // Получаем описание текущей рубрики - $keywords = $category->name; // Ключевые слова - название рубрики - } elseif (is_home()) { - - $current_url = get_site_url(); - - $title = $sitename; // Получаем название сайта для главной страницы - $description = get_bloginfo('description'); // Получаем описание сайта для главной страницы - $keywords = ''; // Для главной страницы ключевые слова оставляем пустыми - - $og_tags .= ''. PHP_EOL; + $og_tags .= '' . PHP_EOL; + $meta_tags .= '' . esc_html($title) . '' . PHP_EOL; + $meta_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; + $og_tags .= '' . PHP_EOL; + } - - // Добавляем мета-теги только в случае, если их значения не пусты - if (!empty($current_url)) { - $og_tags .= '' . PHP_EOL; - } - if (!empty($title)) { - $meta_tags .= '' . esc_html($title) . ''. PHP_EOL; - $og_tags .= ''. PHP_EOL; - } - if (!empty($description)) { - $description = wp_strip_all_tags($description); - $meta_tags .= ''. PHP_EOL; - $og_tags .= ''. PHP_EOL; - } - if (!empty($keywords)) { - $meta_tags .= ''. PHP_EOL; - } - - - // Выводим мета-теги echo $meta_tags; echo $og_tags; } +add_action('wp_head', 'custom_meta_tags'); + + + add_action('wpcf7_before_send_mail', 'my_custom_contact_form_handler', 10, 3); function my_custom_contact_form_handler($contact_form, $abort, $submission) { @@ -1176,7 +1159,7 @@ function change_author_name($author) { add_filter('the_author', 'change_author_name'); // подписчики на главную -add_action('admin_init', 'restrict_subscriber_admin_access'); +//add_action('admin_init', 'restrict_subscriber_admin_access'); function restrict_subscriber_admin_access() { // Проверяем, что пользователь вошел в систему и имеет роль 'subscriber' if (current_user_can('subscriber')) { @@ -1186,4 +1169,16 @@ function restrict_subscriber_admin_access() { } } +//авторы только в черновики +function restrict_author_publish_posts( $data ) { + // Проверяем, что текущий пользователь - автор + if ( current_user_can( 'author' ) && $data['post_status'] == 'publish' ) { + // Отключаем публикацию для авторов + $data['post_status'] = 'draft'; // Сохраняем как черновик + } + return $data; +} +add_filter( 'wp_insert_post_data', 'restrict_author_publish_posts' ); + + diff --git a/header-en.php b/header-en.php index b6c4842..e34d491 100644 --- a/header-en.php +++ b/header-en.php @@ -4,7 +4,6 @@ - @@ -53,7 +52,7 @@ height="0" width="0" style="display:none;visibility:hidden">
-