эй, ребята, возможно, у некоторых из вас есть опыт программирования плагинов WordPress. У меня есть, вероятно, довольно простой вопрос, но я не мог найти что-либо в Интернете.
<?php /* Plugin Name: test */ function test($content) { echo $post_id; return $content; } add_filter('the_content', 'test'); ?>
У меня есть плагин simpel, который должен отображать уникальный идентификатор каждого сообщения в его содержимом. Итак, на моей главной странице с 10 сообщениями каждый пост должен иметь свой идентификатор.
Любая идея, как этого достичь? Спасибо!
Мое предположение – использовать global
ключевое слово для доступа к сообщению id в функции
А также моя догадка – это возвращение, и эхо оба не будут работать вместе в функции
function test($content) { global $post; return $post->ID.'<br>'.$content; }
Вы смешиваете эхо и возвращаете – это не работает. Однако попробуйте:
function test($content) { return "id: ".$post_id."<br/>".$content; }
также убедитесь, что используете нижний регистр, так как он чувствителен к регистру
http://codex.wordpress.org/Function_Reference/get_the_ID также может быть полезным
Фильтры должны возвращаться, а не эхо.
function test($content) { global $post; return 'id: ' . $post->ID . '<br />' . $content; }
Чтобы посмотреть свойства объекта post, вы должны принести $post
в объем функции, вот что делает эта строка.
global $post;
Которая затем позволяет ссылаться на ID объекта, например.
$post->ID;
См. Здесь, чтобы помочь понять действия и фильтры.
http://codex.wordpress.org/Plugin_API
Пример фильтра.
http://codex.wordpress.org/Plugin_API#Example