ACF-根据ACF字段附加JS文件

时间:2018-06-08 作者:mogio

当用户从ACF中的灵活内容字段创建“旋转木马”布局时,我需要将所有相关的jquery js文件加载到页面标题中。

据我所知,WP tpl文件没有经过预处理。因此,无法在tpl中放置某种标记,以便在选择输出某个tpl时,标头模板将创建必要的脚本scr加载。

我在这里找到了一个6年前的帖子:Best Way to Include Scripts on a Specific Template Page

在WP中,这仍然是有效的方法吗?

1 个回复
SO网友:WebElaine

您仍然可以使用链接到的旧帖子中的选项。如果已经在使用自定义主题或子主题,也可以编辑functions.php 并在主主题脚本排队的地方添加自定义JS。就我个人而言,在同一个调用中添加所有主题CSS和JS会使事情变得更简单,因此,如果我想知道什么是从哪里来的,那么functions.php 或者在某个插件中。

add_action(\'wp_enqueue_scripts\', \'wpse_305653_enqueues\');
function wpse_305653_enqueues() {
    // theme css
    $version = filemtime(get_template_directory() . \'/style.css\');
    wp_enqueue_style(\'wpse_305653\', get_template_directory_uri() . \'/style.css\', array(), "$version", \'screen\');
    // theme scripts
    wp_enqueue_script(\'wpse_305653-scripts\', get_template_directory_uri() . \'/scripts.min.js\', array(\'jquery\'), \'2.3.4\', true);
    // only place this JS on the \'about\' page
    if(is_page(\'about\')) {
        wp_register_script(\'wpse_305653_conditional\', get_template_directory_uri() . \'/conditional.js\', array(\'jquery\'));
        wp_enqueue_script(\'wpse_305653_conditional\');
    }
    // only place this JS on singular \'program\' CPTs
    if(is_singular(\'program\')) {
        wp_register_script(\'wpse_305653_conditional2\', get_template_directory_uri() . \'/conditional2.js\', array(\'jquery\'));
        wp_enqueue_script(\'wpse_305653_conditional2\');
    }
}
您可能希望设置一个CPT,它成为ACF字段出现的唯一位置,因此是JS需要排队的唯一位置。在这里,您可以使用许多其他条件来挑出实际需要JS的内容。

结束

相关推荐

当在PHP/JavaScript中的Referrer不起作用时,如何处理导航中的倒退?

所讨论的网站是:https://liquidchurch.com/messages/messages-app-view/单击此页面上的任何系列图像,您将进入该系列的页面:https://liquidchurch.com/messages/christmas-eve-series/messages-app-view/如果单击“返回”,很好,我们将返回到第一个链接。相反,我们将通过单击其中一个消息图像/链接进入单个消息,并在以下位置结束:https://liquidchurch.com/messages/ch