用于检查WordPress是否正在运行的最佳常量

时间:2022-02-16 作者:Rick Hellewell

我有一个程序,可以独立运行(外部WP)或内部WP。如果程序正在“内部”WP中运行(通过使用适当的排队脚本和add\\u操作的自定义模板),则需要定义一个常量,即独立程序将使用的电子邮件地址。

如果程序在WP站点(WP内部)上运行,则程序需要使用WP管理员电子邮件地址(通过get_option( \'admin_email\' ) 作用

如果程序是独立的(在非WP站点上),则有一个不同的过程用于设置程序使用的电子邮件地址。

中定义了许多常量wp-config.phpwp-settings.php. 用于检查WP是否正在运行的良好常数是什么?例如,一个选项是ABSPATH。

我正在寻找一种可湿性粉剂常量可供检查的“最佳实践”,理想情况下,该常量不太可能用于非可湿性粉剂站点(尽管我知道这是不可能保证的)。

2 个回复
最合适的回答,由SO网友:Rick Hellewell 整理而成

根据另一个答案,我决定寻找特定的WP函数是确定代码是否在WP中运行的最佳方法。

我使用了以下代码块:

if (function_exists(\'get_bloginfo\')) {    // most likely a WordPress function
    if (get_bloginfo(\'admin_email\')) {   // set it only if there is a value (a double-check)
        $admin_email = get_bloginfo(\'admin_email\');
    }
}
它首先检查get_bloginfo 函数存在,因为如果不使用WP运行,我需要让$admin\\U email的先前设置保持不变。

第二行检查“admin\\u email”的值,该值将在任何WP安装中设置。这是为了处理get_bloginfo() 在非WP现场。可能会有get_bloginfo() 在非WP站点中,但更不可能在非WP站点上提供“admin\\u email”设置。

下一行设置该变量。

这可能不是一个完美的解决方案,但我认为它处理了足够多的可能性,因此“足够好”。有了这段代码,如果应用程序在WP站点上运行,我可以获得WP站点的管理电子邮件。否则,我使用之前在程序中设置的值。

SO网友:Sébastien Serre

我不知道其他CMS或系统是否会使用ABSPATH,但这似乎是一个通用词。我想我应该只检查WP常量WPINC 或者检查WordPress函数或类是否存在

相关推荐

Updating modified templates

我想调整一些。php模板文件在我的WordPress主题中,我知道正确的过程是将相关文件复制到子主题文件夹中并在那里编辑文件,这样我的修改就不会在将来的主题更新中丢失。但这是否意味着我将无法从主题更新中获益,因为我将文件放在了我的子主题文件夹中?这可能不是一件好事,因为主题更新可能添加了一些有用的特性,甚至修复了我最初需要对代码进行调整的问题!这方面的常见解决方案是什么?有人推荐了一款Diff应用程序——这是人们常用的吗?