O que posso replace ‘.get_bloginfo (‘ url ‘).’ com para retornar o URL atual em vez do endereço residencial?

Estou usando o plugin do Any Mobile Theme Switcher para alternar entre temas completos e móveis automaticamente.

O único problema com isso é que os links ‘mudar para o site móvel’ e ‘mudar para o site completo’ levam você para a página inicial em vez da página atual.

O bit de código relevante parece ser este:

function show_theme_switch_link_func( $atts ){ $desktopSwitchLink = get_option('show_switch_link_for_desktop'); global $shown_theme; global $status; if ($shown_theme){ $return = ''.get_option('desktop_view_theme_link_text').''; } else { if ((!empty($status)) || ($desktopSwitchLink == 'yes')){ $return = ''.get_option('mobile_view_theme_link_text').''; } } return $return; } 

Posso replace '.get_bloginfo('url').' com algo que irá retornar o URL atual em vez do endereço residencial?

Solutions Collecting From Web of "O que posso replace ‘.get_bloginfo (‘ url ‘).’ com para retornar o URL atual em vez do endereço residencial?"

Uma rápida pesquisa no Google me leva a essa pequena jóia de uma postagem no blog de Konstantin Kovshenin:

 global $wp; $current_url = add_query_arg( $wp->query_string, '', home_url( $wp->request ) ); 

Combine isso com seu código original, e você tem isso (atualizado para coincidir com os padrões de codificação do WordPress):

 function show_theme_switch_link_func( $atts ){ global $shown_theme, $status, $wp; $desktop_switch_link = get_option( 'show_switch_link_for_desktop' ); $current_url = add_query_arg( $wp->query_string, '', home_url( $wp->request ) ); if ( $shown_theme ) { $return = '' . get_option( 'desktop_view_theme_link_text' ) . ''; } else { if ( !empty( $status ) || $desktop_switch_link == 'yes' ) { $return = '' . get_option( 'mobile_view_theme_link_text' ) . ''; } } return $return; } 

O código para exibir seu URL atual é:

 < ?php echo $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"] ?> 

Então, para o seu exemplo de código, isso deve funcionar:

 function show_theme_switch_link_func( $atts ){ $desktopSwitchLink = get_option('show_switch_link_for_desktop'); global $shown_theme; global $status; $currentURL = $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]; if ($shown_theme){ $return = ''.get_option('desktop_view_theme_link_text').''; } else { if ((!empty($status)) || ($desktopSwitchLink == 'yes')){ $return = ''.get_option('mobile_view_theme_link_text').''; } } return $return; } 

Tente isso e veja o que acontece…