由于我对 php 的了解有限,我遇到了困难。
有什么方法可以在wordpress的do_shortcode函数中“放置当前页面id”而不是特定的id号吗?或者是插件内部文件的问题?
<?php echo do_shortcode('[plugin-review id="2"]'); ?>
当我将此代码放入侧边栏时,我不想在网站的每个页面上显示 id=2 页面的内容。
感谢您提供可能的解决方案。
编辑:我刚刚也发现了这个功能(还有更多具有相同内容的功能),这可能会有帮助?
公共(public)函数 do_shortcode_ ratings( $atts )
{
提取(短代码_atts(数组(
'id' => '',
'模板' => '',
'post' => get_the_ID()
), $atts ) );
$shortcode = '[plugin-review id="'. $id .'" branch="ratings" post="'. $post .'" template="'. $template .'"]';
return do_shortcode( $shortcode );
}
最佳答案
当前帖子/页面 ID 可通过全局 $post
变量获得,即
global $post;
$current_id = $post->ID;
现在您可以在短代码中使用 $current_id
:)
关于php - 带有当前页面 ID 的短代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40452892/