Функция плагина не тянет данные - PullRequest
0 голосов
/ 03 октября 2019

Я сейчас работаю над плагином. Таким образом, я вставил блок кода в заголовок с функцией. Предполагается, что код извлекает данные из пользовательских полей, но возвращает пустой тег. Тем не менее, это работает, если я добавлю его прямо в шапку. Есть идеи, в чем проблема? Мой код выглядит как ниже.

<?php 
function pyramid() {
  ?>
<meta name="description" content="<?php $desc = get_post_meta($post->ID, 'description', true); if($desc) { echo $desc; } else { 

    // do nothing; 

} ?>" />
<?php
}; 
add_action( 'wp_head', 'pyramid' );

?>

Возвращает приведенный ниже результат при добавлении через плагин.

<meta name=description content>

1 Ответ

1 голос
/ 03 октября 2019

global $post; необходимо добавить в функцию пирамиды.

В качестве альтернативы вы также можете использовать get_the_ID() вместо $post->ID

Также, если вы хотите, вы можете сократитьваша функция пирамиды просто

function pyramid() {
    global $post;
    ?><meta name="description" content="<?= get_post_meta($post->ID, 'description', true) ?: '' ?>" /> <?php
}; 
add_action( 'wp_head', 'pyramid' );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...