[英]Wordpress PHP within PHP
我正在嘗試實現將WordPress中的兩個插件結合在一起的結果。
基本上,我使用的是Easy Slider Pro和Advanced Custom Fields。 當網站所有者編輯頁面時,我希望他們能夠通過在名為“ slider”的高級自定義字段中輸入幻燈片ID來添加幻燈片。
通常,這就是添加PHP以顯示幻燈片的方式:
<?php if ( function_exists('easingsliderpro') ) { easingsliderpro( 5 ); } ?>
5是可以更改的幻燈片ID的示例。
這是高級自定義字段的PHP:
<?php if( get_field('slider') ): ?><?php the_field('slider'); ?><?php endif; ?>
兩者都可以正常工作。 但是我想要一種將這兩段代碼結合在一起的方法,以便在頁面編輯器中,網站管理員只需輸入幻燈片的ID。 我對PHP並不了解很多,但我經常對此感到困惑,但這是我最初的嘗試:
<?php if( get_field('slider') ): ?>
<div id="sliderframe"><?php if ( function_exists('easingsliderpro') ) { easingsliderpro( <?php the_field('slider'); ?> ); } ?></div>
<?php endif; ?>
我認為這沒有用,因為您不允許在PHP代碼中包含PHP代碼。 有沒有人知道的解決方法可以實現這一目標?
非常感謝。
我瘋了嗎?
你不能只是:
啊!
我想我看到了困惑: the_field
呼應的價值了,所以它被傳遞給easingsliderpro()
像剛才true
,並顯示該值。
您需要使用一個返回值的函數,以便可以將其傳遞給下一個函數。
在這種情況下,它是get_field()
:
<?php if( get_field('slider') ): ?>
<div id="sliderframe">
<?php
if ( function_exists('easingsliderpro') ) :
easingsliderpro( get_field('slider') );
endif;
?>
</div>
<?php endif; ?>
請參閱文檔中的更多信息: http : //www.advancedcustomfields.com/resources/functions/get_field/
您不應該將php open close標簽放在php open / close標簽中。 對於上面的代碼,這是有效的:
<div id="sliderframe"><?php if ( function_exists('easingsliderpro') ) {
easingsliderpro(the_field('slider'));
} ?></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.