首先,我试过这个但没有用:“https://wordpress.stackexchange.com/questions/89494/how-to-enqueue-the-style-using-wp-enqueue-style/89495#89495”。
我想要做的是一个带有独特页面(选项页面)的插件,我试图在 head 标签中插入一个 <link href="my_dir/css/style.css"/>
.我的插件的前缀是 easydm 并且在主文件中有以下代码:
define( 'EASYDM_VERSION', '1.0' );
define( 'EASYDM__MINIMUM_WP_VERSION', '2.1' );
define( 'EASYDM_DIRECTORY_NAME', 'easy-downloader-manager/' );
define( 'EASYDM_ROOT_DIRECTORY', substr( plugin_dir_path( __FILE__ ), 0, strpos( plugin_dir_path( __FILE__ ), EASYDM_DIRECTORY_NAME ) ) );
define( 'EASYDM_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
define( 'EASYDM_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'EASYDM_SETTINGS_URL', plugin_dir_url( __FILE__ ).'settings/' );
define( 'EASYDM_SETTINGS_DIR', plugin_dir_path( __FILE__ ).'settings/' );
define( 'EASYDM_SETTINGS_PATH', 'settings/' );
define( 'EASYDM_CSS_URL', plugin_dir_url( __FILE__ ).'css/' );
define( 'EASYDM_CSS_DIR', plugin_dir_path( __FILE__ ).'css/' );
define( 'EASYDM_CSS_PATH', 'css/' );
require_once EASYDM_SETTINGS_DIR.'easydm-functions.php';
register_activation_hook( __FILE__, 'easydm_activation');
add_action( 'wp_enqueue_scripts', 'easydm_add_link_tag_to_head' );
我的 easydm-functions.php 有:
function easydm_add_link_tag_to_head() {
wp_enqueue_style( 'style', get_plugin_directory_uri().'/'.EASYDM_DIRECTORY_NAME.EASYDM_CSS_PATH.'style.css' );
}
这是我最后一次尝试,但我在 wp_enqueue_style() 函数上尝试了一些其他参数。
有帮助吗?
谢谢
--- 编辑---
这里有一个可能的解决方法。事实上,我部分地解决了这个问题。现在我需要剪切一个附加到我的链接的字符串。看到:
---再次编辑---
我找到了这个 http://wpcrux.com/wordpress-enqueue-functions-version/是什么解决了上述新问题...但仍然没有设计我的页面...我检查了路径是否正确,我的文件是否存在,不为空或类似的任何错误。
有什么想法吗?
最佳答案
已解决!!!
wp_enqueue_style
函数的文档清楚地表明第二个参数需要是根安装 WordPress 的相对路径。但是当我在使用完整路径的教程中查看许多示例时,我忽略了它。现在,定义这个常量和之前的所有步骤一切正常。
define( 'EASYDM_CSS_PATH' , str_replace( site_url().'/', '', plugin_dir_url( __FILE__ ) ).'css/' );
在函数中:
wp_enqueue_style( 'easydm-style', '/'.EASYDM_CSS_PATH.'style.css', array(), null, 'all' );
所以,如果有人厌倦了寻找并且不想阅读所有讨论,那么最终代码是:
define( 'EASYDM_CSS_PATH' , str_replace( site_url().'/', '', plugin_dir_url( __FILE__ ) ).'css/' );
add_action( 'admin_enqueue_scripts', 'easydm_add_link_tag_to_head' );
函数文件:
function easydm_add_link_tag_to_head() {
wp_enqueue_style( 'easydm-style', '/'.EASYDM_CSS_PATH.'style.css', array(), null, 'all' );
wp_enqueue_style( 'easydm-manager', '/'.EASYDM_CSS_PATH.'manager.css', array(), null, 'all' );
}
我在其中添加两种样式。我真的希望这对某人有所帮助。谢谢大家!
关于css - wp_enqueue_style 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35733732/