我想在我的wordpress自定义主题中包含Facebook JavaScript SDK。我可以在标准的MVC应用程序或PHP网站上完成,但使用wordpress我不知道如何继续。
通常使用enqueue
作用我想直接将其添加到<head>
我的标签header.php 文件,但我不确定这是否有效。我已经阅读了FB文档,他们建议使用插件,但如果我不想使用插件,最好的方法是什么?
我想在我的wordpress自定义主题中包含Facebook JavaScript SDK。我可以在标准的MVC应用程序或PHP网站上完成,但使用wordpress我不知道如何继续。
通常使用enqueue
作用我想直接将其添加到<head>
我的标签header.php 文件,但我不确定这是否有效。我已经阅读了FB文档,他们建议使用插件,但如果我不想使用插件,最好的方法是什么?
我想你指的是header.php
主题的文件。在这种情况下,只需将此函数附加到主题的functions.php
文件:
function enqueue_facebook_javascript_sdk(): void {
wp_enqueue_script( \'facebook-javascript-sdk-initializer\', get_template_directory_uri() . \'/path/to/your/initializer.js\' );
wp_enqueue_script( \'facebook-javascript-sdk\', \'https://connect.facebook.net/en_US/sdk.js\', array(), null );
return;
}
add_action( \'wp_enqueue_scripts\', \'enqueue_facebook_javascript_sdk\' );
第一个JavaScript文件应包含您的the initializer from the docs, 包含您的appId
.此外,脚本需要async
和defer
属性。为了添加这些,我们在functions.php
:
function add_async_attribute( string $tag, string $handle ): string {
if ( \'facebook-javascript-sdk\' !== $handle ) {
return $tag;
}
return str_replace( \' src\', \' async defer src\', $tag );
}
add_filter( \'script_loader_tag\', \'add_async_attribute\', 10, 2 );
请让我知道这是否适合你。我已经为我的WooCommerce产品创建了自定义元字段。然而,我使用的插件(高级Woo搜索)是用JavaScript编写的,我需要访问PHP变量。我用过wp_localize_script() 这样做。然而,在前端,没有显示我的数据。以下是我的PHP代码: function js_enqueue_scripts() { global $post; $text2 = get_post_meta( $post->ID, \'_load_speed_field\',