Как выполнить короткий код за пределами содержимого / записи в теме?

Пожалуйста, помогите мне выполнить короткий код за пределами ПОСЛЕ КОНТЕНТА в теме. Я создал плагин следующим образом:

<?php add_shortcode('jplayer', 'embed_player'); if (!is_admin()) { add_filter('widget_text', 'do_shortcode'); } add_filter('the_excerpt', 'do_shortcode', 11); add_filter('the_content', 'do_shortcode', 11); function embed_player($atts, $content = null) { extract(shortcode_atts(array( 'url' => '', 'autoplay' => '', 'volume' => '', 'class' => '', 'loops' => '', ), $atts)); if (empty($url)) { return '<div style="color:red;font-weight:700;">ERROR!</div>'; } if (empty($volume)) { $volume = '80'; } if (empty($class)) { $class = "player_container"; } /** Set default container class */ if (empty($loops)) { $loops = "false"; } $parent_title = get_the_title( $post->post_parent ); /** check if the post has a Post Thumbnail assigned to it*/ if ( has_post_thumbnail() ) { $thumbnail = the_post_thumbnail(); } else { $thumbnail = 'http://img.wordpressask.com/shortcode/i.jpg'; } $player_cont = '<div class="' . $class . '">'; $player_cont .= ' <div id="player-1" class="light"> <div style="display:none;" class="playerData"> {"name":"'.$parent_title.'","size":{"width":"100%","height":"100%"},"media":{"mp3":"' .$url.'","poster":"'.$thumbnail.'"}} </div> </div></div>'; return $player_cont; } 

Вышеприведенный код показывает аудиоплеер в сообщении / записи, но я хочу добавить этого игрока в заголовок сообщения как формат:

do_shortcode (здесь я хочу выполнить функцию do_shortcode )

Заголовок поста

Сообщение / запись (здесь я включил [jplayer url="http://my.link"] )

Чтобы сделать это, я ввел [jplayer url="http://my.link"] в сообщении / записи и выполнил do_shortcode в моей теме следующим образом:

 <?php echo do_shortcode('[jplayer url="'.$variable_parameter.']'); ?> 

Я также пробовал много кодов:

 <?php echo do_shortcode('[jplayer url="'.get_post_meta('post->ID', 'url', true).'"]') ?> 

и попытался с get_post_custom() Я начинающий wordpress, поэтому у меня много проблем, но мне нравится дизайн сайта. Пожалуйста, исправьте код или дайте мне правильный путь. Огромное спасибо.

Solutions Collecting From Web of "Как выполнить короткий код за пределами содержимого / записи в теме?"

Я пробовал код, который вы предоставили, но он не отображал игрока в контенте. Я думаю, что есть некоторая зависимость js игрока. Если да, отредактируйте этот вопрос и сообщите нам, какой js вы используете.

Что касается создания короткого кода в шаблоне темы; для этого вам нужно пройти через фильтр. Пожалуйста, используйте ниже, и он будет работать нормально:

 <?php echo apply_filters('the_content', '[jplayer url="'.get_post_meta('post->ID', 'url', true).'"]') ?> 

ИЛИ

 <?php echo apply_filters('the_content','[jplayer url="'.$variable_parameter.']'); ?>