【问题标题】:php within php to include wordpress custom fieldphp 中的 php 以包含 wordpress 自定义字段
【发布时间】:2013-08-05 20:00:30
【问题描述】:

我正在尝试将图像滑块短代码合并到自定义 WordPress 主题模板中,以便客户端能够将短代码粘贴到自定义字段中,并且模板将读取并正确显示它。我不希望客户端将短代码粘贴到帖子的正文中,因为滑块需要显示在帖子包装器之外(以全浏览器宽度)。

我对 php 了解不多,因此非常感谢任何帮助!

到目前为止,我通过模板显示滑块的代码是:

<?php echo do_shortcode("[metaslider id=27]"); ?>

并显示我拥有的自定义字段的输出:

<?php echo get_post_meta($post->ID, 'slider', true); ?>

这些中的每一个都可以独立工作,但我需要将它们组合起来,这样客户就不必为了添加短代码而编辑模板。所以我认为这样的事情应该可行:

<?php echo do_shortcode("[<?php echo get_post_meta($post->ID, 'slider', true); ?>]"); ?>

...但事实并非如此。

非常感谢您对此提供的任何帮助。

C

【问题讨论】:

  • 你不能这样使用 do_shortcode。您只能使用 do_shortcode 来引用实际的短代码。
  • 那么在这种情况下您有什么建议?我如何让它发挥作用?
  • 我仍然盯着这个,想知道自己。这是个好问题:)
  • 我想我刚刚想通了。这似乎有效:
  • ID, 'slider', true)); ?>

标签: php wordpress shortcode


【解决方案1】:

只需将get_post_meta 的返回值(据我了解,它将包含简码)作为参数传递给do_shortcode 函数:

do_shortcode(get_post_meta($post->ID, 'slider', true));

【讨论】:

  • 想通了,然后这个答案就通过确认来了。谢谢大家 - 我第一次在这里发帖 - 很棒的经历。
猜你喜欢
  • 2012-04-29
  • 2015-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-11
相关资源
最近更新 更多