Je cherche à faire écho le nom de domaine (url) sans "http: //" (ou "https: //").
J'ai créé ce qui suit:
<?php $surl = bloginfo('url'); $findh = array( 'http://' ); $replace = ''; $outputh = str_replace( $findh, $replace, $surl ); echo $outputh; ?>
aussi un autre (de nombreux) j'ai essayé:
<?php $surl = bloginfo('url'); echo str_replace('http://', '', $surl); ?>
Cela ressemble à une tâche simple, mais la sortie inclut toujours le "http: //" lorsque le domaine est répercuté. Revu d'autres articles ici et d'autres sites en vain. Peut-être que quelque chose dans les fichiers de base de Wordpress interfère, ce qui est incertain.
Merci d'avance pour vos commentaires!
bloginfo echos son résultat, c’est pourquoi votre tentative "d’obtenir la valeur" et de la manipuler n’a aucun résultat, puisqu’aucune valeur n’est en fait renvoyée. Si vous voulez obtenir la valeur pertinente, utilisez plutôt get_bloginfo
Vous pouvez utiliser le noyau PHP fonction parse_url();
pour cela.
Exemple:
$url = 'https://www.google.com/';
$url_data = parse_url( $url );
$url_data['Host'] = explode( '.', $url_data['Host'] );
unset( $url_data['Host'][0] );
echo join( '.', $url_data['Host'] ); // outputs: google.com
essayez ceci peut vous aider,
$link = get_permalink();
$remove_http = '#^http(s)?://#';
$remove_www = '/^www\./';
$replace = '';
$new_link = preg_replace( $remove_http, $replace, $permalink );
$new_link = preg_replace( $remove_www, $replace, $new_link );
echo '<p>' . $new_link . '</p>';