: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
* functions that are directly available in WordPress themes (and plugins)
* @param int $id id of the ad (post)
* @param arr $args additional arguments
function get_ad($id = 0, $args = []){
if ( defined( 'ADVANCED_ADS_DISABLE_CHANGE' ) && ADVANCED_ADS_DISABLE_CHANGE ) {
return Advanced_Ads_Select::get_instance()->get_ad_by_method( $id, 'id', $args );
* @param int $id id of the ad (post)
* @param arr $args additional arguments
function the_ad($id = 0, $args = []){
echo get_ad( $id, $args );
* Return an ad from an ad group based on ad weight
* @param int $id id of the ad group (taxonomy)
function get_ad_group( $id = 0, $args = [] ) {
if ( defined( 'ADVANCED_ADS_DISABLE_CHANGE' ) && ADVANCED_ADS_DISABLE_CHANGE ) {
return Advanced_Ads_Select::get_instance()->get_ad_by_method( $id, 'group', $args );
* Echo an ad from an ad group
* @param int $id id of the ad (post)
function the_ad_group($id = 0){
echo get_ad_group( $id );
* Return content of an ad placement
* @param string $id slug of the ad placement
function get_ad_placement( $id = '', $args = [] ) {
if ( defined( 'ADVANCED_ADS_DISABLE_CHANGE' ) && ADVANCED_ADS_DISABLE_CHANGE ) {
return Advanced_Ads_Select::get_instance()->get_ad_by_method( $id, 'placement', $args );
* Return content of an ad placement
* @param string $id slug of the ad placement
function the_ad_placement($id = ''){
echo get_ad_placement( $id );
* Return true if ads can be displayed
* @return bool, true if ads can be displayed
function advads_can_display_ads(){
return Advanced_Ads::get_instance()->can_display_ads();
* Are we currently on an AMP URL?
* Will always return `false` and show PHP Notice if called before the `wp` hook.
* @return bool true if amp url, false otherwise
function advads_is_amp() {
|| ( isset( $pagenow ) && in_array( $pagenow, [ 'wp-login.php', 'wp-signup.php', 'wp-activate.php' ], true ) )
|| ( defined( 'REST_REQUEST' ) && REST_REQUEST )
|| ( defined( 'XMLRPC_REQUEST' ) && XMLRPC_REQUEST )
if ( ! did_action( 'wp' ) ) {
return ( function_exists( 'is_amp_endpoint' ) && is_amp_endpoint() )
|| ( function_exists( 'is_wp_amp' ) && is_wp_amp() )
|| ( function_exists( 'ampforwp_is_amp_endpoint' ) && ampforwp_is_amp_endpoint() )
|| ( function_exists( 'is_penci_amp' ) && is_penci_amp() )
|| isset( $_GET [ 'wpamp' ] );
* Test if a placement has ads.
function placement_has_ads( $id = '' ) {
'global_output' => false,
'cache-busting' => 'ignore',
return Advanced_Ads_Select::get_instance()->get_ad_by_method( $id, 'placement', $args ) != '';
* Test if a group has ads.
function group_has_ads( $id = '' ) {
'global_output' => false,
'cache-busting' => 'ignore',
return Advanced_Ads_Select::get_instance()->get_ad_by_method( $id, 'group', $args ) != '';