【问题标题】:Include Files Outside Wordpress Directory在 Wordpress 目录之外包含文件
【发布时间】:2017-06-20 03:13:25
【问题描述】:

我正在尝试做一些简单的事情,尽管我无法在任何地方找到答案。

我有一个目录 /blog/ 我安装了 wordpress。我正在创建一个主题来处理该目录中的博客。

我的所有样式都在 /style/ 中,包含在 /includes/ 中,脚本在 /scripts/ 中。我必须有一种方法可以将这些文件包含到我的 wordpress 主题中。所以基本上,我想包含网站其余部分(非 wordpress)正在使用的样式表。是的,我知道 wordpress 在主题根目录中需要 style.css。但是,我也想将其用于其他事情。比如包括我的页眉和页脚,还有我编译的外部javascript。

index.php
/style/
/blog/
    /wp-content/
        /themes/
            /my-theme/
/includes/
/scripts/

总结:如何从 wordpress 主题中访问 style/includes/scripts 目录。

这似乎是一个足够简单的请求,但我找不到任何可以将我指向正确方向的地方。提前谢谢你。

【问题讨论】:

    标签: wordpress


    【解决方案1】:

    在您的functions.php中,您可以执行以下操作:

    function yourtheme_enqueue_scripts() {
      wp_enqueue_style( 'unique-id', $_SERVER['DOCUMENT_ROOT'] . '/styles/style.css', false );
      wp_enqueue_script( 'unique-id', $_SERVER['DOCUMENT_ROOT'] . '/scripts/filename.js', false );
    }
    add_action('wp_enqueue_scripts','yourtheme_enqueue_scripts');
    

    将 yourtheme、unique-id、style.css、filename.js 替换为适合您情况的任何内容。

    【讨论】:

    • 仅当您不在共享服务器环境中时才有效。
    • 这有点骇人听闻,但使用完整的网址应该可以。 `wp_enqueue_style('unique-id', 'yoursite.com/styles/style.css', false);
    【解决方案2】:

    最简单的方法是在 Wordpress 目录中使用一个符号链接,指向它之外的文件。

    【讨论】:

    • 我不确定符号链接这个术语,你只是指绝对/相对路径吗?
    • 您的服务器使用什么操作系统?假设它是 'nix 类型,ln -s 命令会创建一个指向目标文件的符号链接,以便它看起来存在于引用目录中。我认为 winDoze 有一个等效的结构,但我不记得它是什么。
    • 只要清楚你想在哪个文件中使用包括那些我在 header.php 或 footer.php 中的文件
    猜你喜欢
    • 2016-12-22
    • 2017-02-05
    • 2012-01-22
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-09
    • 1970-01-01
    相关资源
    最近更新 更多