所以我想看看這是否可行以及我如何解決這個問題 - 但這是我正在使用的:
我創建了一個 ACF 組,它有兩個欄位:
- 啟用 OneTrust,名稱:enable_onetrust,單選按鈕
- 腳本標簽,名稱:onetrust_script_tag,文本區
當我添加<script>OneTrust 提供的標簽時,它會自動排隊并在前端呈現并構建物件,所以我根本沒有wp_enqueue_script在functions.php檔案中呼叫它。
這是 UI 中的設定:

我想要做的是創建一個條件,當enable_onetrust設定為 no/false 時,不要將腳本排入佇列,否則將其排入佇列。
由于腳本沒有在wp_enqueue_script任何地方被呼叫,我們如何去做呢?
uj5u.com熱心網友回復:
您必須檢查啟用 OneTrust 欄位的欄位值。我會為此使用真/假欄位。
如果您有一個真/假欄位,您可以這樣做:
<?php
function my_assets() {
$enable_onetrust = get_field('enable_onetrust');
if ( $enable_onetrust == true ) :
wp_enqueue_script( 'onetrust', 'PATH-TO-JS', , false, true );
}
endif;
add_action( 'wp_enqueue_scripts', 'my_assets' );
?>
對于其他腳本,您可以使用以下內容:
<?php
add_action( 'wp_footer', function() {
$enable_onetrust = get_field('enable_onetrust');
if ( $enable_onetrust == true ) : ?>
<script>
// Your Script
</script>
<?php endif; ?>
<?php }, 99 );
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/377583.html
標籤:php WordPress的 高级自定义字段
