Рубрика: <span>WordPress</span>

В начале в WordPress Contact Form 7 создаем Шорткод, то есть создаем форму отправки с полями, пример

<div class="my-form-contact">
    [text* your-name placeholder "Name"]
    [mask* mask-211 "+7 (___) ___-__-__" "Phone"]
    [text* your-subject placeholder "Subject"]
    [email* your-email placeholder "e-mail"] 
    [textarea your-message]
[submit "Отправить"]
</div>

Далее настраиваем Contact form 7 WordPress — указываем свою почту, куда будут приходить сообщения, затем почту откуда будут приходит письма, тему письма, email и т.д.

В конце ставим галочку — использовать HTML формат письма
Contact form 7 WordPress настройка

Затем вставляем Шорткод Contact Form 7 в нужное место, например так:

<?php echo do_shortcode('[contact-form-7 id="156" title="Обратная связь"]'); ?>

WordPress

На главной странице в корне WordPress Woocommerce ошибка, связанная с тем, что term_id не существует на странице shop

Notice: Undefined property: WP_Post_Type::$term_id in /home/m/user/localhost/public_html/wp-content/themes/mythemes/template-parts/category-list.php on line 40

Чтобы исправить данную ошибку, вместо

$args = array(

'child_of' => $category->term_id,
'taxonomy' => 'product_cat',
'numberposts' => -1,
'hide_empty' => 0,
);

пишем

 
if ( is_shop() ) {
  $mycategory = 0;
} else {
  $mycategory = $category->term_id;
}

$args = array(
    'child_of'     => $mycategory,
    'taxonomy' => 'product_cat',
    'numberposts' => -1,
    'hide_empty' => 0,
);

WordPress

В файле header.php вставляем скрипт

if((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443)
		$protocol="https://";
	else
		$protocol="http://";
	
	$url=$protocol.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
	
	if($_SERVER['REQUEST_URI']=="/article/")
	{	
		echo "<meta name=\"description\"  content=\"здесь описание\" />\n";
		echo "<meta name=\"keywords\"  content=\"здесь ключевые слова\" />";
	}

Этот скрипт проверяет протокол на https или http, затем в соответствии с указанием относительного пути вашей статьи — выводит в неё ключевые слова и описание.

Также в CMS wordpress meta теги для SEO — title, description, keywords можно вставить их без использования плагина, таких как AIOSEO и других. В файл footer.php вставляем скрипт php

<title><?php echo get_post_meta($post->ID, 'title', true); ?></title>
<meta name="description" content="<?php echo get_post_meta($post->ID, 'description', true); ?>" />
<meta name="keywords" content="<?php echo get_post_meta($post->ID, 'keywords', true); ?>" />

далее, открываем или создаем статью в CMS WordPress для редактирования, переходим справа сверху в настройки экрана

настройки экрана

ставим галочку — Произвольные поля и отключаем галочку Настройки AIOSEO

произвольные поля

В самом низу статьи добавляем поля, слева пишем название поля, например, title (description, keywords), а справа описание.

добавить произвольные поля description keywords title без плагинов поля

WordPress

Ошибка в WordPress, связанная с циклом

Warning: Invalid argument supplied for foreach() in

Для устранения ошибки вместо

 
<?php
foreach ($values as $val) : ?>
<div class="information-value">
<?= $val['характеристики'] ?>
</div>
<?php endforeach;?>

нужно

 
<?php
if (is_array($values) || is_object($values)){
foreach ($values as $val) : ?>
<div class="information-value">
 <?= $val['характеристики'] ?>
</div>
<?php endforeach;}?>

WordPress