PHP 未在正确的位置回显

2024-03-21

我在我的 WordPress 网站上运行一些 PHP 代码,当 PHP 运行以回显某些信息时,它没有在正确的位置回显它。代码的缩写版本是:

<div class="description cms">
    <div id="home_left_middle">
        <h2>Search By Category</h2>
        [xyz-ips snippet="Category-List"]
     </div>
</div>

该短代码适用于插件 XYZ PHP Code,它基本上只是在 WordPress 帖子中使用“包含”的一种方式。我已经在 WP 数据库中设置了一些自定义,但这只是基本的数据库调用。所有信息均已从数据库成功返回,因此没有问题。我在那里使用的 PHP 代码是:

$sql = "SELECT * FROM wp_categories_table";
$result = $wpdb->get_results($sql);

echo "<ul class='category_list'>";

foreach( $result as $results ) {
    $category = $results->category; 
    $number = $results->number_of;
    $category_html = htmlentities($category);

    echo "<li><a href='?search-class=DB_CustomSearch_Widget-db_customsearch_widget&widget_number=preset-default&cs-all-0=&cs-post_cat-1=".$category_html."&search=Search'>".$category." (".$number.")</a></li>";
}

echo "</ul>";

发生的情况是,当 PHP 代码运行时,它会在 div.description 之后(以及 div#home_left_middle 之前)进行回显,并且只有 H2 保留在 home_left_middle div 中。那不是代码运行的地方。

奇怪的是,我在另一个网站上使用了完全相同的代码(我复制了这个网站,因为我们只是更改服务器,但内容完全相同)并且它在其他服务器上运行良好。这是一个 VPS,所以我想知道是否有某种 PHP 扩展我没有正确安装在服务器上,从而可能导致此问题?我知道这有点超出了范围,但我很困惑为什么完全相同的代码,在相同版本的 WordPress 中并使用相同的主题和 CSS 文件会在两个不同的网站上导致不同的结果。我看到的唯一区别可能是服务器,除非我忽略了一些小错误?

EDIT

对于那些询问输出缓冲问题的人,我最近从最后一个服务器复制了 php.ini 文件,输出缓冲代码如下所示:

; output_buffering
;   Default Value: Off
;   Development Value: 4096
;   Production Value: 4096

所以它似乎被注释掉了。


就像 maioran84 在评论中建议的那样,这可能是输出缓冲区的一些问题。我建议您将 php.ini 文件从工作站点复制到非工作站点服务器。

查看 PHP 配置文件,有一些设置可能会导致在 WordPress 准备好之前显示输出。

; Implicit flush tells PHP to tell the output layer to flush itself
; automatically after every output block.  This is equivalent to calling the
; PHP function flush() after each and every call to print() or echo() and each
; and every HTML block.  Turning this option on has serious performance
; implications and is generally recommended for debugging purposes only.
; http://php.net/implicit-flush
; Note: This directive is hardcoded to On for the CLI SAPI
implicit_flush = Off

output_buffering = 4096

查看 WordPress 文档add_shortcode(),下面的文本块确实很引人注目。您可以轻松更改您的所有echo语句将值附加到字符串,然后返回整个字符串。

请注意,短代码调用的函数不应产生任何类型的输出。短代码函数应返回用于替换短代码的文本。直接产生输出将导致意想不到的结果。这类似于过滤器函数的行为方式,因为它们不应该从调用中产生预期的副作用,因为您无法控制调用它们的时间和位置。

https://codex.wordpress.org/Function_Reference/add_shortcode https://codex.wordpress.org/Function_Reference/add_shortcode

希望这能帮助您解决这个问题,但我以前从未听说过发生过类似的错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 未在正确的位置回显 的相关文章

  • SMTP:无法连接套接字:无法找到套接字传输“ssl”

    我一直在尝试在 WAMP 上使用 Pear 发送电子邮件通过 GMail 花了几个小时将其全部设置并找出我遇到的所有错误后 我以为我已经很接近了 直到我开始收到此错误 Failed to connect to ssl smtp gmail
  • Angular/ HTML5 到 iOS WKWebView 通信

    我们正在尝试看看发送信号的最佳选择是什么To iOS WKWebView fromAngular 6 HTML5 项目 任何示例都会很棒 我们想要做的是 我们在 Angular 网页上有一个按钮 单击该按钮应该通知 iOS 执行某些操作 我
  • 为什么该消息没有出现在 Chrome 中的手风琴上方?

    我正在尝试新的 HTML5 验证 当我尝试使用required里面的属性
  • 正则表达式 - 剥离非数字并删除分(如果有)

    我目前正在开发一个 PHP 项目 需要一些正则表达式的帮助 我希望能够获取用户输入的货币值并删除所有非数字和小数位 分 Ex 2 000 00 到 2000 2 000 00 美元 到 2000 2abc000 到 2000 2 000 到
  • 在 OS X 10.7 中找不到 Mysql 命令

    我无法让我的 mysql 在 os x 10 7 上启动 它位于 usr local mysql bin mysql 当我输入时 我得到命令未找到mysql version在终端中 我试过这个无法从 mac 命令行访问 mysql http
  • 如何为 MySQL 和 Postgres 编写不区分大小写的查询?

    我在本地运行 MySQL 数据库进行开发 但部署到使用 Postgres 的 Heroku Heroku 处理几乎所有事情 但我不区分大小写的 Like 语句变得区分大小写 我可以使用 iLike 语句 但我的本地 MySQL 数据库无法处
  • 获取输入图像类型选择的图片并加载到图像标签中

    所以 我有一个用于上传 img 文件的输入框 我想要做的是从该数据 或选定的源 中获取数据并将其路由到图像标签的 src 属性中 像这样的东西 http jsfiddle net QC2c4 http jsfiddle net QC2c4
  • 保存下拉列表中的值

    这是我的情况 我有 2 页 一页用于选择值 一页用于编辑与该值关联的数据库相关内容 现在 我对如何将从下拉列表中选择的值保存到 PHP 的变量中一无所知 并且已经进行了相当多的研究 有任何想法吗 HTML
  • 输入字段名称以数字开头

    我有一个输入字段 其名称是 MD5 字符串 例如
  • HTML/CSS:页面左侧的导航栏

    我发现创建这样具有良好语义的布局很尴尬 左侧是大约 150 像素宽的列 其中包含导航元素 我想将网站这部分的 HTML 放在 HTML 代码的开头 然后有一个简单的方法来强制页面的其余部分不侵占左侧的区域 150 像素列 我考虑过一些选择
  • Chrome 问题 - 视频流和会话冲突

    我在使用 javascript 和 PHP 实现视频时遇到问题 索引 php session start do other stuff include video php 视频 php
  • Symfony错误在链配置的命名空间XXX中找不到类XXX

    关于这个主题已经有一些其他问题 但没有一个真正有帮助 我是 Symfony 的新手 所以很难理解它 我在文件 Client IntranetBundle LDAP LDAPAuthenticationProvider php 中 此代码导致
  • 将 div 附加到另一个 div 的右侧

    我有一个 div 它就像一个容器 里面有 2 个图像 一张图像位于 div 的左侧 另一张图像位于右侧 我的容器是Bootstrap的容器 它们都用 div 包裹 并且div s position is fixed 我的问题是我无法找到要附
  • 检测 html 选择框上的编程更改

    有没有办法让 HTML 选择元素在每次以编程方式更改其选择时调用函数 当使用 JavaScript 修改选择框中的当前选择时 IE 和 FF 都不会触发 onchange 此外 更改选择的 js 函数是框架的一部分 因此我无法更改它以在结束
  • 如何更改数据表中标题单元格的内容?

    我正在使用数据表 http datatables net plugin 在我的可排序列上 我想用按钮替换列文本 但是这样做 oSettings aoColumns i nTh text 我可以检索相应列的文本 但是 oSettings ao
  • 有没有办法重置特定类的所有静态属性?

    您可能知道 静态属性使测试变得困难 有没有办法将特定类的所有静态属性重置回其初始状态 理想情况下 这不需要为每个类定制代码 但可以通过继承以通用方式使用 或者完全从类外部使用 请不要回复 不要使用静态属性 之类的内容 谢谢 假设您正在使用
  • Yii框架异步请求

    我有一个执行 3 个任务的 ajax 请求 保存模型 数据库 发电子邮件 给出成功或失败的消息 因为这个任务需要的时间太长了 用户最多可以等待 20 秒以获得响应 成功或失败消息 如果用户关闭浏览器 则其会停止用户当前进程的操作之一 这是糟
  • HTML 标签在 Ionic 5 警报文本中不起作用

    我已将以下代码从 Ionic 3 迁移到 Ionic 5 const alert await this alertCtrl create subHeader About b this user name b message Test Mes
  • 服务器端文件验证在 Yii.2.0 中不起作用

    Is the FileValidatorYii2 中的类只支持客户端验证 我使用代码编写了文件上传系统 在模型中 public function rules return allAllowedFileType safe allAllowed
  • 错误“RESOURCE_EXHAUSTED”的原因是什么?

    我有一个 WordPress 博客 当我登录到仪表板时 顶部突出显示了以下异常 Ga Lib Api Request Exception There was an error while contacting Google API erro

随机推荐

  • 使用 Javascript 检查测验答案的最安全方法

    在努力完成一个使用 AJAX PHP 设计匹配问答游戏的项目后 我了解到我公司用于分发其产品的学习套件不允许我在后端运行服务器端脚本来安全地检查答案 这都是由于不幸的等级专制造成的 长话短说 我必须以某种方式检查客户端的答案 或找出一些棘手
  • 使用 DinkToPdf 分隔分页符

    我的 Program cs 中有这个 C var page plain var slnpath Directory GetCurrentDirectory var htmlpath slnpath HtmlTemplates page ht
  • Ruby:在代码块中更改类静态方法

    给定 Thread 类及其当前方法 现在在测试中 我想这样做 def test alter current thread Thread current a stubbed method do something that involve t
  • 如果表尚不存在则创建

    我正在尝试创建一个表 如果它尚不存在 我目前正在检查它是否存在于DBA TABLES首先 如果该查询没有返回任何内容 则插入 有没有办法只签入同一条语句 这样我就不必将其分解为单独的查询 这就是我目前所拥有的 BEGIN SELECT CO
  • AWS DynamoDB Objective C 中递增 Number 属性

    我正在努力增加已保存在 DynamoDB 上的表中的项目的数字属性值 我的代码当前是 AWSDynamoDBUpdateItemInput updateItemInput AWSDynamoDBUpdateItemInput new upd
  • PIG 将文本行转换为稀疏向量

    我必须使用 Apache PIG 将需要合并的文件 第一个文件包含书名列表 就像这样 每个书名都单独一行 Ted Dunning Mahout in Action Leo Tolstoy War and Peace Douglas Adam
  • Angular2 中 Http.DELETE 请求的正文

    我正在尝试与 Angular 2 前端的某种 RESTful API 进行交互 要从集合中删除某些项目 除了删除的唯一 id 可以附加到 url 中 之外 我还需要发送一些其他数据 即身份验证令牌 一些集合信息和一些辅助数据 我发现最直接的
  • django m2m_changed 通过模型自定义

    在 Django 中 我确实有两个模型 作者 和 出版 它们与多对多字段连接 以便我可以将不同的作者分配给出版物 此外 我必须使用自定义的贯穿模型 作者身份 来定义正确的顺序 class Author models Model first
  • 我如何在谷歌应用程序引擎上为 html5 创建 websocket

    这是demo http html5demos com web socket一个简单的聊天客户端 您必须在 webkit 浏览器上打开它 例如 chrome 和 Safari 该演示使用基于node js的Web套接字服务器 websocke
  • 错误:ANDROID_HOME 未设置,并且“android”命令不在您的路径中。您必须至少满足其中一项条件。

    我正在尝试安装 PhoneGap 但收到以下错误 错误 ANDROID HOME 未设置 并且 android 命令不在您的路径中 您必须至少满足其中一项条件 错误 截图 我该如何确保 Android 正确设置以与 Cordova 一起使用
  • Angular2 提供自定义 Http 不起作用

    我们需要一个全局空间来捕获 http 401 403 和 500 响应 我看了一些教程并尝试了扩展 http 的方法 这是我自定义的HTTP 大部分是从网上复制的 import Http ConnectionBackend Request
  • 防止 XAML 中的重复代码

    我在 UniformGrid 中使用了很多 Rectangle 控件 它们含有 XAML 代码的所有相同部分都处理通过 MultiBinding 设置 Fill 属性 请参见下面的示例 有没有办法防止这种代码重复 减少 XAML 代码的首选
  • Chrome webkit 检查器中不断生成“不安全的 JavaScript 尝试使用 URL 访问框架...”错误

    例如 当使用 Facebook API 时 Chrome 或任何其他 webkit 浏览器 会抛出大量 不安全的 JavaScript 尝试使用 URL 访问框架 它不会干扰实际操作 但确实使 javascript 控制台基本无法使用 我想
  • proxy_pass 不使用 /etc/hosts 解析 DNS

    在 Nginx 中proxy pass指令未使用以下命令解析 DNS etc hosts文件 有什么方法可以实现这种可能性 也许利用 Lua 作为最后的手段 如果您有一台带有 systemd 的服务器 您可以使用它附带的名称服务器 syst
  • 如何了解我的 Android 应用在用户设备上消耗了多少电池?

    我正在编写一个应用程序来评估 Android 上蓝牙 P2P 网络的可行性 我注意到 在 Galaxy Nexus 上 它使用的电池很少 而在 Nexus S 上 它消耗电池的速度非常快 这是由于蓝牙导致CPU负载过高直接导致的 现在 我想
  • Camel中如何动态添加和启动路由?

    我正在尝试从 Camel 的路线中删除一些样板 例如 让我们考虑两条相似的路线 并且可以生成它们的大部分内部内容 我创建了一个组件 模板 它创建了TemplateEndpoint 并修改了 XML 配置以使用模板组件 自定义方法Templa
  • 适用于 Android 的自定义旋转对话框

    如何制作自定义主题 Android Spinner 对话框 该博客有一个示例 可能可以解决您的问题 http www mokasocial com 2011 03 easily create a default custom styled
  • SKLearn Naive Bayes:在 tfidf 矢量化后添加特征

    因此 我的任务是训练一个电话记录模型 以下代码执行此操作 一些背景信息 x 是一个字符串列表 每个第 i 个元素是一个完整的转录本 y 是布尔值列表 表示调用的结果是正还是负 以下代码有效 但这是我的问题 我想将通话时长作为一项训练功能 我
  • 带 ProgressBar 的 Endless RecyclerView 用于分页

    我正在使用一个RecyclerView http developer android com reference android support v7 widget RecyclerView html并以十个为一组从 API 获取对象 对于
  • PHP 未在正确的位置回显

    我在我的 WordPress 网站上运行一些 PHP 代码 当 PHP 运行以回显某些信息时 它没有在正确的位置回显它 代码的缩写版本是 div class description cms div h2 Search By Category