php - PHP 函数回显包含文件
问题描述
我目前正在开发一个 wordpress 插件。我创建了一个短代码,它显示另一个 html/php 文件的内容,如下所示:
function df_display_form()
{
// Fetching some data with $wpdb
// Display the data
include_once plugin_dir_path(__FILE__) . 'markup/show-dynamic-form.php';
}
我的问题是短代码将显示在页面顶部。所以我用谷歌搜索了这个问题并找到了解决方案。正如那里所写的那样,问题是return
应该使用它而不是echo
.
所以我的问题是如何从包含的文件中返回渲染的内容?(不是回声)。
解决方案
尝试使用输出缓冲区。 https://www.php.net/manual/en/function.ob-get-clean.php
function df_display_form()
{
ob_start();
// Fetching some data with $wpdb
// Display the data
include_once plugin_dir_path(__FILE__) . 'markup/show-dynamic-form.php';
$out = ob_get_clean();
return $out;
}
推荐阅读
- wordpress - Wordpress 管理页面 (WooCommerce) 上的自定义用户角色未显示页面子菜单
- php - 未捕获的错误:调用未定义的函数 odbc_connection()
- javascript - 使用地图渲染多个 jsx 并包含引发语法错误:ReactJS
- javascript - 如何解决“未捕获的 ReferenceError:未定义 google”?(谷歌地图 API)
- magento2 - Magento 2.4.1 - 将站点移动到子目录 - CSS & JS Broken - 清除缓存仍然损坏 [已解决]
- bash - 在 bash 脚本中将两个变量传递给 sed
- javascript - 跨域读取阻塞 (CORB) 阻止了跨域响应 https://cdnjs.com/libraries/Chart.js
- javascript - 当 DOM 没有标题/值字段时获取文本值
- raspberry-pi - 我应该使用 RTP 还是 WebRTC 进行本地网络音频通信
- javascript - 如何仅映射选择元素的选中选项