这两段代码之间有什么区别,我应该使用哪一段作为WordPress插件?
require_once(dirname(__FILE__).\'/inc/canagan_admin_functions.php\');
require_once( \'/inc/canagan_admin_functions.php\' );
这两段代码之间有什么区别,我应该使用哪一段作为WordPress插件?
require_once(dirname(__FILE__).\'/inc/canagan_admin_functions.php\');
require_once( \'/inc/canagan_admin_functions.php\' );
第一个就像是说。。。
包括在中找到的文件inc
目录,位于此文件所在的目录上方。
第二种说法是。。。
在服务器根目录中(/
) 查看inc
的文件夹canagan_admin_functions.php
并将其包括在内。
第一个可以工作,第二个不行。在第二个中,您将查看整个文件系统的根,您的文件肯定不会在那里。
作为补充,每当我启动一个将跨越多个文件的插件,和/或将CSS或JS文件排队时,我通常会设置一些常量来帮助我。这是一个example.
<?php
define( \'CD_PLUGIN_PATH\', plugin_dir_path( __FILE__ ) );
define( \'CD_PLUGIN_URL\', plugin_dir_url( __FILE__ ) );
plugin_dir_path
和plugin_dir_url
很好,因为它们总是返回带有尾部斜杠的路径/URL。然后,为了包含/需要文件,我使用常量。不必打电话dirname(__FILE__)
在每个include上。
然后,您可以使用常量包含文件。。。
require_once( CD_PLUGIN_PATH . \'path/to/file.php\' );
或将脚本/样式排队。。。<?php
add_action( \'wp_enqueue_scripts\', \'wpse35088_enqueue\' );
function wpse35088_enqueue()
{
wp_enqueue_script( \'wpse35088-script\', CD_PLUGIN_URL . \'path/to/script.js\' );
}
我正在尝试使用一个旧插件http://wordpress.org/extend/plugins/wp-ecards/ (我不是插件作者)当我试图在网站上查看电子卡时,在php错误日志和一个空白屏幕中出现此错误: Failed opening \'\' for inclusion (include_path=\'.:/usr/share/php:/usr/share/pear\') in /home/public_html/demo/wp-content/plugins/wp-ecards/ft-